X1000 memory accessibility
- danbeaver
- Posts: 368
- Joined: Thu Jan 19, 2012 9:58 pm
- Location: Someplace you'd rather not be
- Contact:
Re: X1000 memory accessibility
I must have misread that the OS was limited to 256 MB of video card address space with the rest of vRAM is only accessible via the GPU. Oh well, I must have been confused about mapping video ram beyond 256 MB; glad to know you can map higher
Re: X1000 memory accessibility
I thought that AmigaOS4.x was able to provide access to it's users to the full 2gb of memory, not limited to only 1.5gb of the 2gb installed, like MorphOS. From reading this thread, it seems that both OSes are working with the same memory limitations, to retain compatibility with the AmigaOS3.x API, even if they are using different methods of memory management, is that correct?
Proud owner of 10+ Commodore Amiga 680x0 computers
First Contact AmigaOne X1000 Dual Core 1.8GHz PA6T w/OS4.1FE
Dual 2.7GHz G5 PowerMac w/MorphOS3.7
1.5GHz G4 PMac MDD w/MorphOS3.7
1.5GHz G4 MacMini w/MorphOS3.7
17" 1.67GHz G4 PBooks w/MorphOS3.7
Efika 5200b w/MorphOS3.7
FPGA Arcade Replay w/AmigaOS3.x
First Contact AmigaOne X1000 Dual Core 1.8GHz PA6T w/OS4.1FE
Dual 2.7GHz G5 PowerMac w/MorphOS3.7
1.5GHz G4 PMac MDD w/MorphOS3.7
1.5GHz G4 MacMini w/MorphOS3.7
17" 1.67GHz G4 PBooks w/MorphOS3.7
Efika 5200b w/MorphOS3.7
FPGA Arcade Replay w/AmigaOS3.x
- tonyw
- AmigaOS Core Developer
- Posts: 1479
- Joined: Wed Mar 09, 2011 1:36 pm
- Location: Sydney, Australia
Re: X1000 memory accessibility
In the case of OS4 (and MOS), the CPU's built-in registers take up quite a bit of memory space (256 MB or more). In OS4, that register area is mapped into the top of the 4 GB address space.
So, in theory, OS4 programs could access (4 GB - register space), which I have heard quoted as "about 3.5 GB". AFAIK the only reason that we can't access the extra 1.5 GB above the 2GB barrier is the 31-bit addresses that are used in places within some system components and structures.
User programs can now access a full 2 GB extra using the ExtMem feature, still in beta.
So, in theory, OS4 programs could access (4 GB - register space), which I have heard quoted as "about 3.5 GB". AFAIK the only reason that we can't access the extra 1.5 GB above the 2GB barrier is the 31-bit addresses that are used in places within some system components and structures.
User programs can now access a full 2 GB extra using the ExtMem feature, still in beta.
cheers
tony
tony
Re: X1000 memory accessibility
@tonyw
What structures and parts of the autodocs exactly mention that negative address values means failure and limites the entires OS to 31 bits? I just find it wierd this whole 31-bit thing... Having signed pointers is no excuse to limit oneself to 31 bits since 0 is the only false value in the world of addresses.
How about limiting only 68k emulated programs to 2GB and let OS4 PPC native apps use 4GB. Surely OS4 itself cannot have these 31-bit limitations, testing on negative addresses for failure! And no modern OS4 app would either.
What structures and parts of the autodocs exactly mention that negative address values means failure and limites the entires OS to 31 bits? I just find it wierd this whole 31-bit thing... Having signed pointers is no excuse to limit oneself to 31 bits since 0 is the only false value in the world of addresses.
How about limiting only 68k emulated programs to 2GB and let OS4 PPC native apps use 4GB. Surely OS4 itself cannot have these 31-bit limitations, testing on negative addresses for failure! And no modern OS4 app would either.
- tonyw
- AmigaOS Core Developer
- Posts: 1479
- Joined: Wed Mar 09, 2011 1:36 pm
- Location: Sydney, Australia
Re: X1000 memory accessibility
Deniil:
I don't know, I haven't found any myself and I feel just the same as you - WTF does it matter?
But I am assured that there are a lot of places where lib and API calls fail if the address is > 2GB.
I don't know, I haven't found any myself and I feel just the same as you - WTF does it matter?
But I am assured that there are a lot of places where lib and API calls fail if the address is > 2GB.
cheers
tony
tony