[Info-vax] VAX VMS going forward
Simon Clubley
clubley at remove_me.eisner.decus.org-Earth.UFP
Tue Jul 28 08:47:03 EDT 2020
On 2020-07-27, Stephen Hoffman <seaohveh at hoffmanlabs.invalid> wrote:
> On 2020-07-27 13:20:28 +0000, John Reagan said:
>>
>> As I said, it is a flat 64-bit address space. There is no "mode". We
>> just decide to load the stack, the static data, and code into addresses
>> that can fit in 32-bits because of the history of descriptors and
>> itemlists with 32-bit pointers in them. It is part of the "recompile
>> and go" we promised back on the VAX days. We require that anybody
>> wanting to use memory that needs a 64-bit pointer to modify their
>> compile command or source files. However, you can't move the stack or
>> static data. You just get to heap allocate or mapsection into those
>> memory ranges. And as I mentioned, for x86, we move your code there to
>> leave more 32-bit room for stack and 32-bit addressable heap.
>
> I'm happy to be corrected here, but AFAIK there are no 64-bit apps on
> OpenVMS. None. There are 32-bit (~30-bit) apps with 64-bit (50-bit?)
> extended, or segmented, or, sure, maybe flat, addressing available. But
> there are no 64-bit apps.
>
And this is because VMS _does_ have a 32-bit mode and a 64-bit mode
but it is implemented very differently from other operating systems.
It's just that this 32-bit mode is implemented in a way on VMS that
requires most changes to 64-bit mode to be made in the source code
manually instead of via some compiler and linker flags.
Also, the 64-bit mode on VMS is nowhere yet near a full replacement
for the 32-bit mode unlike on other operating systems.
Simon.
--
Simon Clubley, clubley at remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
More information about the Info-vax
mailing list