Memory
Moderator: Moderator Team
-
- Posts: 2
- Joined: Tue Nov 22, 2011 5:05 am
Memory
Not sure if this has been covered, I didn't find anything in the search. Will ReactOS limit the amount of ram, in other words if you are running xp on a machine that can handle 6gb of ram only 4 will be seen by the o/s, unless you are using xp pro or a server version like server 2003, and then certain settings have to be correct for more than 4gb to be seen.
-
- Posts: 19
- Joined: Fri Jun 04, 2010 2:48 pm
Re: Memory
Well, its a little more complicaten than that, a 32-bit CPU (or 64-bit CPU in 32-bit protected mode) can only address 4 GB of virtual address space,
this can be extended using Physical Address Expansion, which allows up to 64GB of memory, but the kernel would have to support this and it would have to be enabled, but to provide more than 4GB to any single application is impossible without the OS running in long mode (64-bit), and i can imagine why only XP pro would have PAE , it must have required rewriting of parts of the kernel, and i cant tell how large a part without knowing the win2k3 source (which i dont) , but if it was a good design (i doubt this) , only the paging code would have to be rewritten, and MS wouldnt provide such updates to clients usually not needing it (home edition)
this can be extended using Physical Address Expansion, which allows up to 64GB of memory, but the kernel would have to support this and it would have to be enabled, but to provide more than 4GB to any single application is impossible without the OS running in long mode (64-bit), and i can imagine why only XP pro would have PAE , it must have required rewriting of parts of the kernel, and i cant tell how large a part without knowing the win2k3 source (which i dont) , but if it was a good design (i doubt this) , only the paging code would have to be rewritten, and MS wouldnt provide such updates to clients usually not needing it (home edition)
Re: Memory
To simplify, 32-bit OSes can only address 4 GB of RAM. So yes.
Today entirely the maniac there is no excuse with the article. Get free BeOS, DOS, OS/2, and Windows games at RGB Classic Games.
Re: Memory
Generalizing a little:
16 bits OSes can address 2^16 = 65KB
32 bits OSes can address 2^32=4GB RAM
32 bits OSes+PAE 2^36=64GB RAM
64 bits OSes........Left as Homework
16 bits OSes can address 2^16 = 65KB
32 bits OSes can address 2^32=4GB RAM
32 bits OSes+PAE 2^36=64GB RAM
64 bits OSes........Left as Homework
-
- Posts: 1790
- Joined: Fri Aug 07, 2009 5:11 am
- Location: USA
Re: Memory
Actually, regular XP supports PAE, since PAE mode is required to make use of the "No Execute" instruction. "No Execute" is a very valuable feature in that it helps stop a whole class of exploits (like jumping into code that was loaded as data or executing past where a program was intended to execute). But XP deliberately caps the memory to under 4 GB to leave the address space clear for buggy drivers. I don't see why we cannot provide an override to where more can be used if we are not running misbehaving drivers. Being 100% compatible doesn't mean that we cannot add options (loading parameter switch or registry key) to stray outside such boundaries on a case by case basis. But that is extra work, and we would do good to make things work for now.Peterbjornx wrote:Well, its a little more complicaten than that, a 32-bit CPU (or 64-bit CPU in 32-bit protected mode) can only address 4 GB of virtual address space,
this can be extended using Physical Address Expansion, which allows up to 64GB of memory, but the kernel would have to support this and it would have to be enabled, but to provide more than 4GB to any single application is impossible without the OS running in long mode (64-bit), and i can imagine why only XP pro would have PAE , it must have required rewriting of parts of the kernel, and i cant tell how large a part without knowing the win2k3 source (which i dont) , but if it was a good design (i doubt this) , only the paging code would have to be rewritten, and MS wouldnt provide such updates to clients usually not needing it (home edition)
Also, the RTM version of XP home did allow access to memory above 4 GB, but they rewrote HAL to cap it after reports of serious driver problems because driver writers went outside Microsoft standards.
- EmuandCo
- Developer
- Posts: 4723
- Joined: Sun Nov 28, 2004 7:52 pm
- Location: Germany, Bavaria, Steinfeld
- Contact:
Re: Memory
Windows Server 2003 did not cap anything. We aim for 2003, not XP, so this will come in the future anyway.
ReactOS is still in alpha stage, meaning it is not feature-complete and is recommended only for evaluation and testing purposes.
If my post/reply offends or insults you, be sure that you know what sarcasm is...
If my post/reply offends or insults you, be sure that you know what sarcasm is...
Re: Memory
Of course, DOS initially supported 2^20 memory addresses because the 8086 supported 1 MB of RAM, so DOS was never a fully 16-bit OS. The 80286 added 24-bit addresses (16 MB) before the 80386 went fully 32-bit. Yes, a 386 can address 4 GB of RAM.vicmarcal wrote:Generalizing a little:
16 bits OSes can address 2^16 = 64KB
32 bits OSes can address 2^32=4GB RAM
32 bits OSes+PAE 2^36=64GB RAM
64 bits OSes........Left as Homework
Today entirely the maniac there is no excuse with the article. Get free BeOS, DOS, OS/2, and Windows games at RGB Classic Games.
Re: Memory
> Yes, a 386 can address 4 GB of RAM.
Good luck finding a 386 motherboard and/or chipset that will do that though.
Good luck finding a 386 motherboard and/or chipset that will do that though.
-
- Posts: 1790
- Joined: Fri Aug 07, 2009 5:11 am
- Location: USA
Re: Memory
I've posted my response to the comments about old architectures at the link below, since the 4GB dilemma is the current topic:
http://www.reactos.org/forum/viewtopic.php?f=13&t=10859
Personally, I think if we support the memory uncapped, we should provide a means for individuals to cap it if they cannot find suitable drivers which won't conflict with memory over 4GB. I mean, we should be able to use buggy XP drivers if no 2003 drivers exist for our motherboard. Gateway Dimension motherboards only have XP drivers for them. There are no drivers for anything lower nor higher.
Speaking of addressing, XP can use multiple swap files, with the size of each not being over 4 GB. Right now, our swap file addressing is capped somewhere below that (2 GB?) as a bug workaround.
http://www.reactos.org/forum/viewtopic.php?f=13&t=10859
Personally, I think if we support the memory uncapped, we should provide a means for individuals to cap it if they cannot find suitable drivers which won't conflict with memory over 4GB. I mean, we should be able to use buggy XP drivers if no 2003 drivers exist for our motherboard. Gateway Dimension motherboards only have XP drivers for them. There are no drivers for anything lower nor higher.
Speaking of addressing, XP can use multiple swap files, with the size of each not being over 4 GB. Right now, our swap file addressing is capped somewhere below that (2 GB?) as a bug workaround.
Re: Memory
Let's update this:
8080/8088 - 1MB
80286 - 16 MB
80386, 486, Pentium, K5, K6 - 4GB
Pentium Pro, Athlon, anything else 32 bit - 64 GB (not that anyone uses it, because of bad drivers -_-)
Window's implementation of 64 bit - 16TB (not that anyone would needed for 6 years)
Current implementation of 64 bit - 256 TB (see above)
I don't think we'll need 64 bit after PAE
8080/8088 - 1MB
80286 - 16 MB
80386, 486, Pentium, K5, K6 - 4GB
Pentium Pro, Athlon, anything else 32 bit - 64 GB (not that anyone uses it, because of bad drivers -_-)
Window's implementation of 64 bit - 16TB (not that anyone would needed for 6 years)
Current implementation of 64 bit - 256 TB (see above)
I don't think we'll need 64 bit after PAE
The cake is a lie!
- EmuandCo
- Developer
- Posts: 4723
- Joined: Sun Nov 28, 2004 7:52 pm
- Location: Germany, Bavaria, Steinfeld
- Contact:
Re: Memory
And now look what maximum of memory a app/thread may use on 32 bit and how much on 64 bit. Then you know what this step is for
ReactOS is still in alpha stage, meaning it is not feature-complete and is recommended only for evaluation and testing purposes.
If my post/reply offends or insults you, be sure that you know what sarcasm is...
If my post/reply offends or insults you, be sure that you know what sarcasm is...
Who is online
Users browsing this forum: Bing [Bot], Trendiction [Bot] and 33 guests