ion(a)svn.reactos.com wrote:
@@ -953,6 +954,18 @@
}
KeLoaderBlock.CommandLine = (ULONG)KeLoaderCommandLine;
+ /* Gotta check 3GB setting right *here* before we use KERNEL_BASE! */
+ if (!_strnicmp(KeLoaderCommandLine, "3GB", 3)) {
+
+ /* Use 3GB */
+ MmSystemRangeStart = (PVOID)0xC0000000;
+
+ } else {
+
+ /* Use 2GB */
+ MmSystemRangeStart = (PVOID)0x80000000;
+ }
+
this wouldn't be necessary, as multiboot.S really needs to init the
variable.
------------------------------------------------------------------------
*Modified: trunk/reactos/ntoskrnl/mm/mminit.c*
--- trunk/reactos/ntoskrnl/mm/mminit.c 2005-01-26 00:43:49 UTC (rev 13304)
+++ trunk/reactos/ntoskrnl/mm/mminit.c 2005-01-26 05:00:08 UTC (rev 13305)
@@ -324,10 +324,7 @@
KeLoaderBlock.MemHigher = (MaxMem - 1) * 1024;
}
- /*
- * FIXME: Set this based on the system command line
- */
- MmSystemRangeStart = (PVOID)KERNEL_BASE; // 0xC0000000
+ /* Set memory limits */
MmUserProbeAddress = 0x7fff0000;
MmHighestUserAddress = (PVOID)0x7ffeffff;
I guess apps that are allowed 3G override MmUserProbeAddress and
MmHighestUserAddress? Or... how does that work? Do we even support 3G
apps yet?