[Info-vax] VAX vs. MV/8000 [was Re: Hard links on VMS ODS5 disks]
Dan Cross
cross at spitfire.i.gajendra.net
Tue Aug 29 13:38:40 EDT 2023
In article <uckthl$2m8$3 at news.misty.com>,
Johnny Billquist <bqt at softjar.se> wrote:
>On 2023-08-28 16:59, Dan Cross wrote:
>> In article <uci441$lgj$2 at news.misty.com>,
>> Johnny Billquist <bqt at softjar.se> wrote:
>>>[snip]
>>> I've tried to stay out, and don't want to get too deep in.
>>> But in a sense, my question/issue would be: Can you take a binary for
>>> x86 and run it without any "mode bit", or anything else, on an x86-64
>>> and it works?
>>
>> Provided you set up segmentation correctly, those binaries will
>> run just fine. You simply execute it in a 32-bit code segment,
>> with 32-bit data segments. Is a "mode" bit involved? Kinda
>> sorta, but that's an implementation detail. Usually the OS does
>> this for you; the user program doesn't care.
>
>Which is equally true for the PDP-11 mode bit on the VAX. ;-)
This is true.
>User programs just run. The OS is handling all the details on how to
>actually get the machine in the correct state.
This is also true, though I don't see any reason that the OS
couldn't set up 32-bit segments in addition to 64-bit segs and
let a user process jump between them, shifting some of the
burden to the application, if it wanted it. It'd be sort of a
silly exercise, though I doubt there's a technical limitation
there.
>> But this is a strawman argument that is, again, besides the
>> point I was making. I never said you don't have to take care
>> when running 32-bit binaries on a 64-bit system, nor did I say
>> that _every_ instruction is compatible between 32-bit and 64-bit
>> x86.
>
>Oh, I agree that we're splitting hairs. But I do think DG went a bit
>further than AMD did, with the goal of being able to basically just move
>the binaries over and run them. Hence the two stacks, and all that ugliness.
>Yes, the OS might still need to set some things up, but I don't think
>it's completely comparable what DG did with what AMD did, just as it
>isn't the same as what DEC did.
I agree with this. Certainly, what AMD did was not _exactly_
like what DG did, just as it wasn't exactly like what DEC did.
I just think that the AMD mechanism is more like DG in the sense
of allowing a 64-bit program to execute 32-bit instructions
without a mode switch.
>And with all that said, I do think DG made a bad choice. AMD basically
>did a good choice (or better, at least - anything involving the x86 is
>inherently bad... ;-) ).
Agreed.
AMD had the benefit of a few decades after both VAX and DG, and
likely the insight of engineers familiar with both. They chose
a middle path that, IMHO, is a good combination of both.
I also agree that x86 is a dumpster fire of bad design
encumbered by legacy otherwise.
- Dan C.
More information about the Info-vax
mailing list