Jump to content

VCACHE fix attempt


Xeno86

Recommended Posts


I noticed on some newer AGP motherboards they can allow an AGP Apperature of up to 512MB!!!!

If you chose that you would have already hit Windows98 Memory Address limitation.

Remember, you AGP Apperature and and MaxFileCache value when combined, cannot = more than 512MB!!!

Link to comment
Share on other sites

I noticed on some newer AGP motherboards they can allow an AGP Apperature of up to 512MB!!!!

If you chose that you would have already hit Windows98 Memory Address limitation.

Remember, you AGP Apperature and and MaxFileCache value when combined, cannot = more than 512MB!!!

yes but in those cases, surely it would be up to the user to notch the value down. I wonder if there is a command line tool that would tell us how much video memory is being assigned. Then we could overcome even this.

Here's my new table:

graph1.png

reasoning:

* why are there no settings for 64 MB RAM and under? MS recommended 64 as the RAM to use for optimal usage at the time the OS was designed/released. I trust they know what's best for these RAM sizes. If anyone has documentation that says the opposite, please post a link.

* No MinFileCache setting: i agree that there isn't any good reason behind setting a minimum MinFileCache value ... well, no reason i know of.

* the 1 gig settings: I think that if MS knew about the 1 gig limit and assumed that a user may have this, then i would think it safe to allow the maximum MaxFileCache setting possible as opposed to an 'optimal' setting. I find the arguments of people who have tested extensively with 1 gig compelling to use.

* The Chunk File settings: - as i understand how chunk file settings work, i don't agree with leaving this at 512 for the higher RAM values. I must admit to not having tested this idea out in practice but you can't just create any old test to prove whether this will improve performance, i'm yet to be convinced of whats been said so far. Theoretically, if you have lots and lots of RAM, using larger chunks is more efficient when moving large amounts around. Whether or not you get much of a % increase in completion time is what i would be interested in.

and UBCD 4.6.2 will be setting MaxPhysPage lower than 39000 because users with more than 1280 will not get thru the install process. I have just tested with 20000 then and it works, 39000 didn't work and this was without any AGP aperture setting of note.

Edited by soporific
Link to comment
Share on other sites

No real complaints from me :thumbup

Personally I don't think you wouldn't often need a MaxFileCache value over 255MB (unless operating as a FileServer) but other than that the values look good! :thumbup

Edited by galahs
Link to comment
Share on other sites

I had Win98 installed on my Pentium 4 which has 1.5GB of RAM.

I got the famous "Insufficient memory to initialize windows. Quit one or more memory-resident programs or remove unnecessary utilities from your Config.sys and Autoexec.bat files, and restart your computer."

I gotten that error message (or similar) just by setting the swap file to bigger than 768 MB! That's a new bug I found!

Have you ever saw that before?

Link to comment
Share on other sites

I had Win98 installed on my Pentium 4 which has 1.5GB of RAM.

I got the famous "Insufficient memory to initialize windows. Quit one or more memory-resident programs or remove unnecessary utilities from your Config.sys and Autoexec.bat files, and restart your computer."

I gotten that error message (or similar) just by setting the swap file to bigger than 768 MB! That's a new bug I found!

Have you ever saw that before?

Lots of times! :wacko: Please read all posts in this thread from, at least, post # 10 and follow the links therein. You'll will find lots of interesting info on that matter in them. :whistle:

Edited by dencorso
Link to comment
Share on other sites

* the 1 gig settings: I think that if MS knew about the 1 gig limit and assumed that a user may have this, then i would think it safe to allow the maximum MaxFileCache setting possible as opposed to an 'optimal' setting. I find the arguments of people who have tested extensively with 1 gig compelling to use.

Sorry, soporific, but I still disagree. :)

1) RAM 1024 WRAM 922 MaxFileCache=522240 is a daring setting that only a few can use. Gape found it already and revised his tweak in sesp 2.0.1 and later to MaxFileCache=393216 (see item 2.0.1 in post #1). Eck also agrees, as you know. I used that value initially, but eventually got "out of memory" errors every now and then. So I did some tests and decided to set MaxFileCache=262144, which never gave me any grief. My system ran OK with that setting for about a year, with uptimes up to 40h, before I shut it down. If you want a general setting, use MaxFileCache=262144.

2) I am using RAM 1536 WRAM 1156 for less than a week, and engaged in heavy experimenting, at present. I can confirm that MaxFileCache=65535 works, but now I know 98304 is also OK. I'll now try 114688 and report my results, as soon as I have them. I do believe Offler's statement that 131072 is problematic.

[New text, added 1st November 2007 - 03:15 AM:] Yes, MaxFileCache=114688 works OK! [New text ends].

3) For RAM > 1536 I think more testing is needed, but I haven't the memory to do it. So I'd stick to Andy Aronoff's

MaxFileCache=29696 (with ChunkSize=512), because of his reporting that more than 30000 prevents windows from starting.

4)Above RAM 2048 I still think is a place no one has ever gone before... ;)

Your other settings seem very sensible to me, and I do agree with them.

If anyone here has, or has had, a system running stably with 2048MB or more of RAM, please do tell us about your experience. :hello:

Edited by dencorso
Link to comment
Share on other sites

* the 1 gig settings: I think that if MS knew about the 1 gig limit and assumed that a user may have this, then i would think it safe to allow the maximum MaxFileCache setting possible as opposed to an 'optimal' setting. I find the arguments of people who have tested extensively with 1 gig compelling to use.

I can confirm that since using maximum MaxFileCache on my 1GB RAM win98SE PC, the following have been noticed:

* Faster operation (intuitive feel)

* Hardly any disk caching activity when using firefox and other memory "keen" apps

* No shut-down problems (sometimes had these)

[vcache]

MaxFileCache=522240

MaxPhysPage=40000

[386Enh]

...

MaxPhysPage=40000

MinSPs=16

ConservativeSwapfileUsage=1

DMABufferSize=64

Link to comment
Share on other sites

  • 2 weeks later...

These are iexpress installers for Xeno86's files:

* Unofficial Windows 98 SE Out Of Memory Errors VCACHE.VXD 4.10.2223 Fix:

http://support.microsoft.com/?id=253912

- VCACHE.VXD Fix [118 KB, English + Polish]:

http://www.mdgx.com/files/Q253912.EXE

- VCACHE.VXD Fix [122 KB, French]:

http://www.mdgx.com/files/Q253912F.EXE

More info:

http://www.msfn.org/board/?showtopic=105373

IMPORTANT:

This VCACHE.VXD Fix is experimental!

Details [pops up whenever you install Q253912]:

Unofficial Windows 98 SE Out of Memory Errors Q253912 VCACHE.VXD 4.10.2223 Fix

VCACHE Fix attempt by Xeno86

EXTREMELY IMPORTANT:

You MUST REBOOT at END of INSTALL for this Fix to complete properly!

Do NOT install this Fix MORE THAN ONCE WITHOUT REBOOTING AFTER FIRST INSTALL!

This is an Unofficial attempt to fix "Out of Memory" Error Messages with Large Amounts (768 MB or 1 GB or more) of RAM Installed problem described in Knowledge Base (MSKB) article KB253912 (Q253912):

http://support.microsoft.com/?id=253912

DESCRIPTION:

Normally VCache driver calculates maximum cache size based on the amount of memory (RAM) present. While this works OK for computers with less or equal 512 MB of memory, on computers with more memory VCache allocates too much memory from system area and you can experience problems (see KB article above).

This fix limits maximum cache size allocated dynamically to 384 MB thus removing the need to apply any of the workarounds mentioned in the KB article.

Power users however have the ability to set the limit to a different value (lower or higher) through the MaxFileCache entry under the [vcache] section in the SYSTEM.INI file found in %windir% [%windir% = usually C:\WINDOWS].

Generic example:

[vcache]

MaxFileCache=24576

Edit SYSTEM.INI with Notepad or similar plain text/ASCII editor:

http://www.mdgx.com/toy.htm#TXT

or use Sysedit:

%windir%\SYSTEM\SYSEDIT.EXE

Everything here applies only to English + Polish editions. [?]

This fix/update is cumulative. This means it includes ALL BUG fixes from all previous official + unofficial patches/(hot)fixes/updates. Do NOT replace with ANY other older file version(s) UNLESS having problems with current file version(s).

NOTE:

Provided 'as is', without any warranties, expressed or implied.

Use at your own risk!

INSTALL:

This fix installs VCACHE.VXD 4.10.2223 into %windir%\SYSTEM\VMM32 [%windir% = usually C:\WINDOWS].

This fix also renames existing %windir%\SYSTEM\VMM32\VCACHE.VXD (if any) to VCACHE.VXO , which is used by Uninstall (see below) to restore original file (if any).

UNINSTALL:

How to uninstall this fix and restore original file (if any):

Start button -> Settings -> Control Panel -> Add/Remove Programs -> select "Unofficial Out of Memory Errors Q253912 VCACHE.VXD Fix" -> click Add/Remove button -> reboot.

USEFUL LINKS:

- Windows 98 SE "Out of Memory" Errors with > 1 GB RAM VCACHE.VXD Patch MSFN forum:

http://www.msfn.org/board/?showtopic=105373

- Windows 98 SE "Not Enough Memory" error discussion, possible fix found:

http://www.msfn.org/board/?showtopic=99263...memory+problems

- MicroSoft Knowledge Base (MSKB) Article Q253912:

http://support.microsoft.com/?id=253912

Enjoy.

__________________________

Xeno86:

Could you please post the English build of VCACHE.VXD 4.10.2223?

Thanks.

Link to comment
Share on other sites

  • 2 months later...

Having just installed this patch to try to solve another problem, my system which has 2GB RAM and having remarked out all vcache entries in the system.ini file rebooted just fine (except for the original problem :( ) and system said it saw 1022MB RAM which is just dandy :yes:

Link to comment
Share on other sites

I had 1GB of RAM using the following settings:

BIOS:

AGP Aperture Size=256MB

SYSTEM.INI:

ConservativeSwapfileUsage=1

MaxPhysPage=40000 (1024MB)

MaxFileCache=393216 (384MB)

Chunksize=2048

MinFileCache=131072 (128MB)

SYSTEM.INI for performance (an advantage of lots of RAM):

DMABufferSize=64

PagingDrive=D: (your fastest drive, or not Windows drive if same speed, or C:)

MinPagingFileSize=1048576 (1024MB - size in KB - MS recommend between RAM and RAM x1.5 - I suggest 1GB for 1GB or more of RAM)

MinSPs=16

KeyBoostTime=0.1

MinTimeSlice=80

RemovableIDE=1

PageBuffers=32

I have now added 512MB to a total of 1.5GB and tried to boot with the same settings...

Windows got as far as initialising the display driver and stopped with random vertical orange bars on the screen...

Windows still let me do a double Ctrl-Alt-Delete reboot to flush the disk cache etc.

So, I changed the following settings based on experience in this and other threads:

SYSTEM.INI:

MaxPhysPage=48000 (1152MB)

MaxFileCache=114688 (112MB)

Chunksize=1024

(MinFileCache undefined)

Windows now got as far as the desktop, but the display driver failed to initialise and so I got Standard VGA...

I then made the following change and everything works now (been working for 24 hours with some reboots for new updates).

BIOS:

AGP Aperture Size=128MB

I have not used the VCACHE patch yet, but then on it's own, Windows would fail with more than 1GB of RAM anyway...

Does anyone know how to get an address allocation map of the Windows system arena?

This way we could find out exactly what is using address space...

Here is a good MS doc that explains the 9x addressing architecture: http://support.microsoft.com/kb/q125691/

The design limit of Windows 95 is 2GB according to http://support.microsoft.com/kb/q181594/

However, Windows 98 and Me are 1GB according to http://support.microsoft.com/kb/304943

The key phrase being "Windows Me and Windows 98 are not designed to handle more than 1 GB of RAM. More than 1 GB can lead to potential system instability."

Go figure! Why would M$ make their newer OSs support less RAM???

Conspiracy theorists would say that M$ were manuvouring users towards 'End-Of-Life' for 9x...

But anyway, what exactly is causing this?

Answer: Windows Virtual Memory Manager (VMM.VXD) - as pointed out by Tihiy in an earlier post.

It loads first after WIN.COM and is the only place where physical RAM is exposed before being virtualised and re-mapped.

Everything else does not care, or know, about all that physical RAM since it's virtualised!

The load order is:

-HIMEM.SYS

-IFSHLP.SYS

-WIN.COM

-VMM.VXD

-SMARTDRV.EXE

-VXD modules and so on.

How to find or determine the flaws in VMM.VXD? - THE Question.

Further reading:

http://www.aumha.org/win4/a/memmgmt.php

http://www.aumha.org/win4/a/resource.htm

http://onlinehelp.bc.ca/tips.htm

Writing Windows VxDs and Device Drivers By Karen Hazzah: http://books.google.com/books?id=F868yPHsA...tsec=frontcover

(Missing Chapter 4 in Preview but otherwise some good reading!)

Over 1GB of Usable Windows RAM - The Windows 9x Great Frontier!

Link to comment
Share on other sites

RetroOS said:
I had 1GB of RAM using the following settings:

[...]

I have now added 512MB to a total of 1.5GB and tried to boot with the same settings...

Windows got as far as initialising the display driver and stopped with random vertical orange bars on the screen...

Windows still let me do a double Ctrl-Alt-Delete reboot to flush the disk cache etc.

So, I changed the following settings based on experience in this and other threads:

[...]

Hi, RetroOS! :hello:

Welcome to the more than 1GB RAM world... :yes: I'm glad to see our previous discussions were of help.

But do read carefully Igor Leyko's article, kindly translated from the Russian for us by GreyPhound. I believe it answers some of your questions. If you can afford the time, do read that thread entirely, it is worthwhile. I believe you'll be able to set a XMSDSK ramdisk of just under 200 MB on your remaining RAM, but you won't be able to use all of it, because if you do you won't be able to launch even a single DOS box... If you don't have time for the whole thread, be sure not to miss at least this landmark post by diskless. Cheers!

Link to comment
Share on other sites

The design limit of Windows 95 is 2GB according to http://support.microsoft.com/kb/q181594/

BUT that's the theoretical value that Win95 can use, RetroOS. In actuality (aka. in real life) the RAM limitation in Win95 can be much less than 2Gb due to motherboard/hardware limitations. So what MS is saying in MS article 181594 is just in theory. A blind assumption. In other words, believe it at your own risk.

The info in MS articles 304943 and 181594 are almost inaccurate. The info posted in MS article 304943 also apply to Win95 as it also has problems with 1.5 Gb+ of physical memory installed, even though MS article 304943 does not mention Win95.

Edited by erpdude8
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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