Jump to content

Day-to-day running Win 9x/ME with more than 1 GiB RAM


Recommended Posts

[...] If there's anything else I can do (that's freely available) that will get win98 to see more or this memory - let me know.

No, there isn't, sorry! Quouting myself from other posts:

[...] MaxPhysPage=48000 (= 1152 MiB ) is about the highest one can go with Win 9x, while, for Win ME, the highest one can go up to is MaxPhysPage=7CB00 (= 1995 MiB ), but in either case one should increase the MaxPhysPage value by steps, until one gets the "not enough memory" error again, and then lower it a little...

And experience has shown that MaxFileCache=393216 (= 384MiB) is good enough for most users, there's no need to set it to 524288 (= 512MiB).

[...] The ability to deal with 1150 MiB for 98SE vs 1995 MiB for ME is hardcoded in VMM.VxD and the VMM.VxD from ME cannot be coerced to work with 98SE, nor vice-versa.

So, to go beyond that, you *need* RLoew's one-and-only RAM Limitation Patch.

Now, an intersting fact is that, without the RAM Limitation Patch, you actually don't need HIMEMX with up to 1.5 GiB of RAM, and that leads to perfectly stable setups, while 2 GiB or more won't even boot, in most cases, whithout using HIMEMX or a RAMDISK to hide part of the RAM, and even so, most setups are not very stable, although there are some exceptions, reported in the list, in post #2.

On the other hand, you can add both the MaxPhysPage and MaxFileCache to SYSTEM.CB (Usher's Method) *and* add xRayeR's patch to regain the ability to access Safe Mode, with > 1.5 GiB of physical RAM installed (see post #1, for more details). Now, if you intend to keep using the machine with 2 GiB, not just do it as a temporary experiment, do PM me its specs in the format used in the list (as soon as you deem your configuration definitive) and, of course, I'll add it to the list, in post #2.

Link to comment
Share on other sites

  • 1 month later...

This topic has been updated!

What's New?

on post #2:

RLoew's #2 machine has been updated. Now it is the new RAM record holder for 9x/ME: 16 GiB RAM onboard! :thumbup

Let's keep the list up-to-date:

If you are using 9x/ME with more than 1 GiB RAM, do PM me your info and you shall be added to the list!

Link to comment
Share on other sites

Guest wsxedcrfv

Why is it important, or notable, to know how much ram a system has that is running windows 9x/ME, versus knowing how much ram that win-98/ME is actually making use of?

Link to comment
Share on other sites

Because it is a new *fact*.

(i) Now we know, as opposed to infer, that even 16 GiB is OK with 9x/ME, and no new problem surfaces even with that much RAM.

(ii) RLoew (2) is the de facto total RAM record holder, while RLoew (1) is the de facto maximum amount of RAM available to windows record holder, with 3647 MiB seen by Win 98SE, out of a total 4 GiB.

Patchm.jpg

And, last but not least, because, by using non-XMS ramdisks, all the remaining RAM can be used as fast disks by Win 9x/ME, too. So all the RAM is used, and this is really impossible with the existing free ramdisks, because all of them are based on XMS, and any ramdisk based on XMS bigger than 512 MiB causes instability to Win 9x/ME since they take memory out of the System Arena (see Q125691 - INFO: Overview of the Windows 95 Virtual Address Space Layout for a general Win 9x/ME memory map).

There are a few limitations in Windows 9x relating to Swap Space:

Total RAM + Total Swap is limited to 4GiB.

Swap Space appears to be limited to 2GiB.

XMS RAMDisks take up System Arena Space as does the File Cache. Exceeding a few hundred Megabytes is likely to crash unless you lower your MaxFileCache Setting. A 1GiB XMS RAMDisk is impossible.

Link to comment
Share on other sites

  • 2 months later...

Well, for 1 GiB you can simply add Xeno86's modified VCACHE.VXD, and it should be stable.

Alternatively you can use Usher's method (link and link), and modify both SYSTEM.INI and SYSTEM.CB, with the following statements:

[386Enh]
MaxPhysPage = 40000 ; 1024 MiB

[vcache]
MinFileCache=16384 ; your HDD cache size (optional)
MaxFileCache=393216 ; size recommended for 1+ GB RAM

Now, bear in mind that the idea is to add those statements, but not to remove any other statements that may exist under the [386Enh] or [vcache] sections. If SYSTEM.CB does not exist, it must be created... it's just a plain text file, like SYSTEM.INI is, and it should be in C:\WINDOWS

In fact, you may also use Xeno's VCache and add just the MaxPhysPage = 40000 under [386Enh], to both SYSTEM.INI and SYSTEM.CB... But I bet just adding Xeno's VCache shall be enough. Do let me know your results.

Link to comment
Share on other sites

  • 6 months later...
... RLoew (1) is the de facto maximum amount of RAM available to windows record holder, with 3647 MiB seen by Win 98SE, out of a total 4 GiB.

Patchm.jpg

Greetings.

Gentlemen, I'm astonished by your achievements in expanding the limits of good 'ol Windows 98. That's more RAM than Windows 7 32-bit, as is, can see. I take my hat off :thumbup .

Link to comment
Share on other sites

OK, now this is crazy, but a friend of mine and I were running over a gig and a half nearly 8 yrs maybe 9 yrs ago only because we could not find RAM for older PCs and all the stores were shoving the newer RAM in our faces. Dunno what kind it was, can't recall. But Win 98 SE picked it up and used it well. We just stuck it it and booted.

Any ideas on what type of RAM that could have been? We did build custom boards but saw no real need for more than 512 MB RAM. But no store was selling anything that small and we wanted to play not shop.

Dave

As per the record, a very good friend of mine, Adam Gropp, a specialist in laser and IMPATT diodes, was running 98 SE at 8 gigs several yrs ago. And Adam was an AOL user who claimed that he needed THAT much RAM to make AOL software "... run smoothly owing to such poor programming implemented by AOL... ."

Edited by dw2108
Link to comment
Share on other sites

With all due respect to you, dw2108, your post above makes so little sense it reminds me of the Chewbacca Defense. :D

OK, now this is crazy, but a friend of mine and I were running over a gig and a half nearly 8 yrs maybe 9 yrs ago only because we could not find RAM for older PCs and all the stores were shoving the newer RAM in our faces. Dunno what kind it was, can't recall. But Win 98 SE picked it up and used it well. We just stuck it it and booted.

1) We're in 2012, so that "8 yrs maybe 9 yrs ago" puts us in 2003-2004. Now, at that time, the newest RAM was DDR2 (which exists as 4 GiB [very rare and now already out of production], 2 GiB and 1 GiB sticks), but the biggest one one could buy by December 2004 was 1 GiB . And the maximum size ever for DDR1 has always been 1 GiB. So, no matter what sellers pushed on you, if you limited your buy to a single stick, you couldn't possibly be forced to run "over a gig and a half" simply because no stick "over a gig" existed at that time to be sold.

2) Still today buckets of 512 MiB DDR1, 400 MHz (which can run below that clock), and lower clockrates too, can be easily found to be bought.

3) There's no way Win 98SE would run, let alone install, with 1 GiB, without adding a MaxFileCache statement to control VCache, in SYSTEM.INI. As everybody who ever attempted it knows, it bails out with:

Insufficient memory to initialize Windows .

Quit one or more memory-resident programs or remove unnecessary utilities from your CONFI G.SYS and AUTOEXEC.BAT files, and restart your computer .

I could go on, but I think you've got my point already. This thread is dedicated to precise descriptions of how to run Win 9x/ME (like those on post #2), to help those those interested in doing it. Vague recollections can be misleading or even plainly wrong: that's the well-known Rashomon Effect.

Link to comment
Share on other sites

Thanks, dencorso. That might have answered my question. Over a gig, are there motherboards such that the BIOS will recognize the RAM with the user tricked into believing all is well when something is only misreading the BIOS, so that we would be merely wasting that RAM? If so, this could be a money saver when it comes to buying boards and RAM.

Dave

BTW. Was not trying to mislead but only find out what happened with 98 SE.

Edited by dw2108
Link to comment
Share on other sites

Dave, it's OK!

Rest assured I'm sure your intention was not to mislead.

That said, it's relatively easy to run safely Win 98FE/SE with up to 1 GiB of RAM (or Win ME with 2 GiB, having it recognize almost all of it).

For Win 98FE/SE the how to is outlined here.

Link to comment
Share on other sites

Below are my system's relevant specs.

BIOS Level Data

-------------------------

Motherboard = ASUS P4S800-MX

CPU Socket = Socket 478 for Intel Pentium 4 Northwood/Willamette processor

CPU Speed = 3.0 Ghz

Chipset = SiS661 FX and SiS963L

Memory Sockets = 2 x 184-pin DDR DIMM sockets (max 2 GB)

Memory = 2 x 1 GB PC3200 unbuffered non-ECC DDR DIMMs

VGA = SiS Real256E integrated graphics (onboard)

Onboard VGA Shared Memory Size = 64 MB

Graphics Aperture Size = 64 MB

OS Level Data

----------------------

OS = Win98SE

Gape's Unofficial SP 2.1 = YES

Other Patches = NO

Permanent Paging File on a HDD = YES

CONFIG.SYS Data

----------------------------

DEVICE=c:\WINDOWS\himemx.exe

INSTALL=c:\WINDOWS\xmsdsk.exe 393216 /T

SYSTEM.INI Data

--------------------------

[386Enh]

MinSPs=16

DMABufferSize=64

MaxPhysPage=48600

ConservativeSwapfileUsage=1

EMMExclude=C000-CFFF

PagingDrive=G:

MinPagingFileSize=131072

MaxPagingFileSize=131072

[vcache]

MaxFileCache=393216

SYSTEM.CB Data

---------------------------

[386Enh]

EMMExclude=C000-CFFF

MaxPhysPage=1FFFF

[vcache]

MaxFileCache=65536

Observations

---------------------

System Properties reports 1,156 MB of physical RAM recognized by the OS. Adding the Onboard VGA Shared Memory Size of 64 MB yields 1,220 MB which precisely matches the theoretical maximum achievable without the "magic" of a certain rather well known patch. :>)

After sequentially opening up 30 DOS command windows with no problems (resources never even came close to being critical) I smiled and stopped! :>)

All RAM drive operations have been smooth and stable with Thorough ScanDisk Test always being successful to the very end (never hangs the computer).

Under normal conditions (e.g., other than safe mode), the sum total of the MaxFileCache, RAM drive and Graphics Aperture size physical RAM *provisions* is:

384 MB + 384 MB + 64 MB = 832 MB

Now, my system has 2048 MB of physical RAM. If one subtracts the theoretical maximum of 1,220 MB recognizable by the OS (in my case, clearly *achieved* as well), one gets:

2048 MB - 1220 MB = 828 MB

This amount is a bit *smaller* than the 832 MB *provision* above which is OK, practically speaking. My hunch is that the 30 DOS command windows draw on "regular" Win98SE memory...

Link to comment
Share on other sites

Observations

---------------------

System Properties reports 1,156 MB of physical RAM recognized by the OS. Adding the Onboard VGA Shared Memory Size of 64 MB yields 1,220 MB which precisely matches the theoretical maximum achievable without the "magic" of a certain rather well known patch. :>)

The VGA has nothing to do with with the reported size or the limit.

You set MaxPhysPage to only recognize 1,158 MB of RAM. 2 MB of RAM is lost due to memory allocation slop.

1,220 is not a theoretical limit. You are already at the limit. The limit varies slightly with the specific configuration.

My Patch is not "magic" it just fixes a number of bugs.

Under normal conditions (e.g., other than safe mode), the sum total of the MaxFileCache, RAM drive and Graphics Aperture size physical RAM *provisions* is:

384 MB + 384 MB + 64 MB = 832 MB

MaxFileCache plus any XMS RAM Disk plus some Graphics Apertures determine the amount of System Arena space used for Memory Management. The Kernel and DOS Command Windows use more. The System Arena is limited to 1GB total of Virtual Memory. This limitation is why MaxFileCache needs to be specified when you exceed approx 768MB of RAM.

You would need my Non-XMS RAM Disk, which doesn't use System Arena space, to go any larger.

Now, my system has 2048 MB of physical RAM. If one subtracts the theoretical maximum of 1,220 MB recognizable by the OS (in my case, clearly *achieved* as well), one gets:

2048 MB - 1220 MB = 828 MB

This amount is a bit *smaller* than the 832 MB *provision* above which is OK, practically speaking. My hunch is that the 30 DOS command windows draw on "regular" Win98SE memory...

None of this applies. You have plenty of unused RAM. You are nowhere near your limit.

Your Physical Memory allocation is as follows:

Windows: 1,158 MB

RAM Disk: 384 MB

Aperture: 64 MB

Unused: 441 MB

Reserved: 1 MB (May Vary depending upon motherboard)

Total: 2,048 MB

Edited by rloew
Link to comment
Share on other sites

Hi @rloew,

For starters, I imagine that you would agree that, given the dry, technical content of this forum, some humor may be welcome. I do have a science background and know rather well the difference between "magic" and "rationalist science". I am truly sorry if my well intentioned humor has offended you. My apologies. As far as I am concerned, this is water under the bridge...

Given your prompt response to my post, I assume that you are *still* interested (are you the only one?) in providing key clarifications in an area that, historically, has been confusing, even disorienting, at times. I will try to be as meticulous as I can, given the terminological chaos that may loom large in regards to this particular topic...

First off, I would like to excise the term "theoretical" from my terminology. Instead, I propose that we adopt a Boolean distinction along the lines of:

1) Non-Rloew Universe (NRU)

2) Rloew Universe (RU)

If I am to *truly* understand the technical realities/constraints underpinning the RU, I sure as hell need to understand those underpinning its conceptual and coding predecessor, the NRU... So, kindly bear with me, if you can.

To my statement that "System Properties reports 1,156 MB of physical RAM recognized by the OS" you partially responded:

[...with the reported size or the limit]

I assume, then, that System Properties is attempting to reflect *some* kind of NRU limit (not "theoretical", but a *practical* limit, nonetheless), right?

To my statement that "Adding the Onboard VGA Shared Memory Size of 64 MB yields 1,220 MB" you responded:

[The VGA has nothing to do with with the reported size or the limit]

If true, a lot of NRU technical information regarding this particular aspect that one comes across in these forums is obviously wrong!!

You also wrote:

[You set MaxPhysPage to only recognize 1,158 MB of RAM]

Well, yes. :>) This is *my* practical NRU limit that I zeroed in on by laborious trial and error. My situation is definitely not unique around here, I understand...

Then, you stated:

[1,220 is not a theoretical limit. You are already at the limit. The limit varies slightly with the specific configuration.]

and

[2 MB of RAM is lost due to memory allocation slop.]

Yes, we are in total agreement in an NRU sense. There have been numerous statements in these forums to the effect that no one has ever managed to breach the 1,220 MB NRU *practical* limit... By the way, thank you for enlightening me regarding the poor, little 2 MB that are not reported by System Properties. :>)

Very importantly, you stated:

[MaxFileCache plus any XMS RAM Disk plus some Graphics Apertures determine the amount of System Arena space used for Memory Management. The Kernel and DOS Command Windows use more. The System Arena is limited to 1GB total of Virtual Memory.]

Thank you very much for explicitly specifying the important components applicable here. Clearly, the System Arena requires the "existence" of *some* Virtual Memory.

Here is where I need big-time enlightenment, I am afraid. To begin with, you stated:

[The System Arena is limited to 1GB total of Virtual Memory.]

Yes, under NRU conditions, right? What about *minimum* requirements, though? More to the point, you also wrote:

[This limitation is why MaxFileCache needs to be specified when you exceed approx 768MB of RAM.]

Ok, here is my *main* question. What is the relationship between physical RAM *installed* (not necessarily recognized by the OS as such) and Virtual Memory, always in an NRU sense? I am afraid that I cannot wade through all these "urban legends" all by myself. :>) To boot, aside from the Virtual Memory requirements that you have alluded to, do all (some of) these components utilize *physical* RAM as well, when active/invoked? If so, does the RAM come off the 1,158 MB that the OS recognizes?

More specifically, you wrote:

[Your Physical Memory allocation is as follows:

Windows: 1,158 MB

RAM Disk: 384 MB

Aperture: 64 MB

Unused: 441 MB

Reserved: 1 MB (May Vary depending upon motherboard)

Total: 2,048 MB ]

If "Unused" amounts to 441 MB, where does the MaxFileCache provision fit, if or when actually activated by the OS? Does it consume part of the 1,156 MB that the OS recognizes? (I have already asked this before in a more inclusive framework)

I am afraid that I am lost in a dual world where the same components appear to make separate (?) claims on installed/recognized physical RAM as opposed to the Virtual Memory which is the home of the System Arena. Any further enlightenment would greatly be appreciated.

Thank You

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...