![]() ![]() |
Jun 9 2007, 02:09 AM
Post
#1
|
|
|
Advanced Member ![]() ![]() ![]() Group: Members Posts: 398 Joined: 29-October 06 From: Bratislava Member No.: 114267 OS: 98SE
|
Hi. i was trying to fix this issue because for me is necessary to run som dos based aplications even in windows and this can cause serious errors while running them - including installation of Unofficial service pack. I thing i found a fix.
There are several reasons why this error occur. Mostly is caused by some graphics adapters, or by large ram and by system settings in config sys and system.ini. Fixing of problem depends on the reason of memory insufficiency. 1. Dos based programs - it is absolutely necessary for them to have enough memory to run. Mostly it means conventional memory. 2. Command.com and command line programs (*.bat, mem, or other w32 apps running in dos window) - here are mixed reasons why the will not run. They need conventional memory, and they need classic windows memory to run. 3. Windows based applications - here is only one reason - lack of free system ram. This error occurs even when you have really large ram and have large virtual memory swapfile so the reason is not the amount of ram at all, but mostly the memory management. I used some critical applications where this error can cause trouble to diagnose the problem and now i am sure that it is caused by too large MaxFileCache value. Here are the lines which i used in system ini and fixed problem. [vcache] MaxFileCache=131072 MinFileCache=4096 chunksize=2048 namecache=4096 directorycache=96 To prove that these settings are correct i tried some things. 1.I opened You tube and play any video, then i turned on TV tuner and i watched both videos. If one of them goes blank or is frozen it means that memory is consumed. With setting above it didnt occured. 2. with tv tuner and you tube opened i ran Ultima online by *.bat file. It ran correctly. Then i ran command.com and it worked. (ultima itself has trouble with lack of memory) 3. Opened Notepad/Metapad and selected quite large text and used copy/paste. With the setting aboe it worked without error. This positive state didnt changed even when i was using apps for hours without restart. If the MaxFileCache is larger than 131072 all "Not enough memory" errors appeared again - when the number was larger the intensity of memory errors was greater. This error is probably linked also with hardware construction and this is the thing i want to discuss I have 2 HDD, 2 CD roms, Ati Radeon 9800XT, 1,5 gb RAM. I need a feedback from somebody who is using more or less peripherals, different graphics and ram. System has 1024 Mb of ram and 512 mb of Ramdisk, where the win386.swp is stored. Try to use vcache settings i have posted and then try to raise Maxfilecache. Good diagnostic tool is any video playing and attempt to run Command line, or copy/pasting blocks of text in notepad. Before testing be sure that you have enough free conventional memory (at least 450-500 kb) Report if memory error occur while using 131072 kb of maxfilecache - send here your Vcache section of system ini, config sys, and autoexec.bat file. This post has been edited by Offler: Jun 9 2007, 02:11 AM |
|
|
|
Jun 14 2007, 06:25 AM
Post
#2
|
|
|
creator of 98SE2ME Group: Moderator Posts: 2358 Joined: 22-November 04 Member No.: 37121
|
QUOTE (Offler @ Jun 9 2007, 02:09 AM) ... system.ini: directorycache is invalid entry, does not exist anywhere.[vcache] directorycache=96 HTH |
|
|
|
Jun 14 2007, 02:29 PM
Post
#3
|
|
|
Advanced Member ![]() ![]() ![]() Group: Members Posts: 398 Joined: 29-October 06 From: Bratislava Member No.: 114267 OS: 98SE
|
this was my source:
http://www.thpc.info/ram/vcache.html link is on your page and i have no possibility to check which entries are valid or not except clasiccal "try and fail" debugging. Only entry which matters is Maxfilecache. question is why and how it fixes our trouble... |
|
|
|
Jun 15 2007, 05:16 AM
Post
#4
|
|
|
Member ![]() ![]() Group: Members Posts: 251 Joined: 29-June 06 Member No.: 100101
|
The Windows 32-bit protected-mode cache driver (Vcache) determines the maximum cache size based on the amount of RAM that is present when Windows starts. Vcache then reserves enough memory addresses to permit it to access a cache of the maximum size so that it can increase the cache to that size if needed. These addresses are allocated in a range of virtual addresses from 0xC0000000 through 0xFFFFFFFF (3 to 4 gigabytes) known as the system arena.
On computers with large amounts of RAM, the maximum cache size can be large enough that Vcache consumes all of the addresses in the system arena, leaving no virtual memory addresses available for other functions such as opening an MS-DOS prompt (creating a new virtual machine). |
|
|
|
Jun 16 2007, 01:08 PM
Post
#5
|
|
|
Advanced Member ![]() ![]() ![]() Group: Members Posts: 398 Joined: 29-October 06 From: Bratislava Member No.: 114267 OS: 98SE
|
thanks a lot for explanation.
|
|
|
|
Jun 25 2007, 07:08 AM
Post
#6
|
|
|
Member ![]() ![]() Group: Members Posts: 251 Joined: 29-June 06 Member No.: 100101
|
thanks a lot for explanation. A pleasure, interestingly from previous research I understand the vcache driver is internally limited to a maximum of 800 meg, if this could be altered and its other interupts adjusted, I wonder if none of the system.ini tricks would be needed allowing upto the max 4 gig of ram on a 32bit system |
|
|
|
Jun 26 2007, 01:07 AM
Post
#7
|
|
|
Advanced Member ![]() ![]() ![]() Group: Members Posts: 398 Joined: 29-October 06 From: Bratislava Member No.: 114267 OS: 98SE
|
well the memory management of w98 is quite a mystery for me.
I have 1,5 gb of ram right now and 512 mb is used as ramdisk with swapfile. Somebody here mentioned that win98 does not use Upper memory but if i let it unfilled i cant start my machine and i need to raise amount of ramdisk to 700 mb... If i use umbfill system can start with 1024 mb or ram and 512 mb of ramdisk I wonder how it works if win98 really dont use free upper memory. |
|
|
|
Jun 28 2007, 05:02 AM
Post
#8
|
|
|
Member ![]() ![]() Group: Members Posts: 251 Joined: 29-June 06 Member No.: 100101
|
well the memory management of w98 is quite a mystery for me. I have 1,5 gb of ram right now and 512 mb is used as ramdisk with swapfile. Somebody here mentioned that win98 does not use Upper memory but if i let it unfilled i cant start my machine and i need to raise amount of ramdisk to 700 mb... If i use umbfill system can start with 1024 mb or ram and 512 mb of ramdisk I wonder how it works if win98 really dont use free upper memory. As far as i am aware upper memory blocks in the upper memory area are not available to win98 without a driver such as umbpci which allows them to be used as normal memory if any is left, after any memory resident progs,ramdisk/drivers have been loaded. By disabling your shadow rom and having your drivers loaded from its area. Being that himem.sys has been called via io.sys then extended before a ramdisk has been created via config.sys,autoexec etc, if this results in vcache.vxd only seeing the remaining 1 gig of ram not the full 1.5 gig and allows you to boot normally. This post has been edited by oscardog: Jun 28 2007, 06:29 AM |
|
|
|
Jun 28 2007, 04:25 PM
Post
#9
|
|
|
MSFN Expert ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 1207 Joined: 13-April 05 From: USA (Cavendish, Co. Windsor, Vermont) Member No.: 51865 OS: none
|
Hi. i was trying to fix this issue because for me is necessary to run som dos based aplications even in windows and this can cause serious errors while running them - including installation of Unofficial service pack. I thing i found a fix. There are several reasons why this error occur. Mostly is caused by some graphics adapters, or by large ram and by system settings in config sys and system.ini. Fixing of problem depends on the reason of memory insufficiency. 1. Dos based programs - it is absolutely necessary for them to have enough memory to run. Mostly it means conventional memory. 2. Command.com and command line programs (*.bat, mem, or other w32 apps running in dos window) - here are mixed reasons why the will not run. They need conventional memory, and they need classic windows memory to run. 3. Windows based applications - here is only one reason - lack of free system ram. This error occurs even when you have really large ram and have large virtual memory swapfile so the reason is not the amount of ram at all, but mostly the memory management. I used some critical applications where this error can cause trouble to diagnose the problem and now i am sure that it is caused by too large MaxFileCache value. Here are the lines which i used in system ini and fixed problem. [vcache] MaxFileCache=131072 MinFileCache=4096 chunksize=2048 namecache=4096 directorycache=96 To prove that these settings are correct i tried some things. 1.I opened You tube and play any video, then i turned on TV tuner and i watched both videos. If one of them goes blank or is frozen it means that memory is consumed. With setting above it didnt occured. 2. with tv tuner and you tube opened i ran Ultima online by *.bat file. It ran correctly. Then i ran command.com and it worked. (ultima itself has trouble with lack of memory) 3. Opened Notepad/Metapad and selected quite large text and used copy/paste. With the setting aboe it worked without error. This positive state didnt changed even when i was using apps for hours without restart. If the MaxFileCache is larger than 131072 all "Not enough memory" errors appeared again - when the number was larger the intensity of memory errors was greater. This error is probably linked also with hardware construction and this is the thing i want to discuss I have 2 HDD, 2 CD roms, Ati Radeon 9800XT, 1,5 gb RAM. I need a feedback from somebody who is using more or less peripherals, different graphics and ram. System has 1024 Mb of ram and 512 mb of Ramdisk, where the win386.swp is stored. Try to use vcache settings i have posted and then try to raise Maxfilecache. Good diagnostic tool is any video playing and attempt to run Command line, or copy/pasting blocks of text in notepad. Before testing be sure that you have enough free conventional memory (at least 450-500 kb) Report if memory error occur while using 131072 kb of maxfilecache - send here your Vcache section of system ini, config sys, and autoexec.bat file. Warning, there is a bug that causes the following: Setting the swap file to bigger than 768 MB causes Windows to think there isn't enough RAM to initialize the GUI! |
|
|
|
Jul 23 2007, 12:36 PM
Post
#10
|
|
|
Member ![]() ![]() Group: Members Posts: 153 Joined: 29-July 06 From: Pakistan Member No.: 106221 OS: XP Pro x86
|
I do not know whether this applies to the discussion or not, but i have 128 MB ram and 380 MB swap file, i had a "Not enough Memory error" once and i just raised the swap file size to 420 MB and it was fixed. The Maxfilecache setting is at default 393216. I do not use any minfilecache setting.
|
|
|
|
Jul 24 2007, 08:58 AM
Post
#11
|
|
|
member ![]() Group: Members Posts: 67 Joined: 6-February 05 Member No.: 43253 OS: 98SE
|
I do not know whether this applies to the discussion or not, but i have 128 MB ram and 380 MB swap file, i had a "Not enough Memory error" once and i just raised the swap file size to 420 MB and it was fixed. The Maxfilecache setting is at default 393216. I do not use any minfilecache setting. How do you raise the swap file size? |
|
|
|
Jul 24 2007, 09:48 AM
Post
#12
|
|
|
Systems Annihilist ![]() ![]() ![]() Group: Members Posts: 342 Joined: 14-September 05 From: Terra, Sol Member No.: 72994 OS: none
|
How do you raise the swap file size? Start->Settings->Control Panel->System, then "Performance" tab, "Virtual Memory" box; careful now! Usually "Let Windows Manage..." is the best option unless you may be running out of HDD space. Before you change anything, first check the current Windows\WIN386.SWP size and your Free HDD space. If you give too big/too small, you might lock up the system (correction on this statement?). Also ref. RJARRRPCGP's comment/info...BTW, good info provided. Admittedly I'm shy of in-depth knowledge of these other points... Perhaps there is a relationship (? input, please)... This post has been edited by submix8c: Jul 24 2007, 09:51 AM |
|
|
|
Jul 24 2007, 02:43 PM
Post
#13
|
|
|
Member ![]() ![]() Group: Members Posts: 153 Joined: 29-July 06 From: Pakistan Member No.: 106221 OS: XP Pro x86
|
How do you raise the swap file size? Start->Settings->Control Panel->System, then "Performance" tab, "Virtual Memory" box; careful now! Usually "Let Windows Manage..." is the best option unless you may be running out of HDD space. Before you change anything, first check the current Windows\WIN386.SWP size and your Free HDD space. If you give too big/too small, you might lock up the system (correction on this statement?). Also ref. RJARRRPCGP's comment/info...Yes exactly. One more thing: If you have two hard drives, then select the hard drive for swap which does not has operating system on it. This way read and writes are increased. |
|
|
|
Jul 26 2007, 03:22 PM
Post
#14
|
|
|
creator of 98SE2ME Group: Moderator Posts: 2358 Joined: 22-November 04 Member No.: 37121
|
|
|
|
|
Jul 28 2007, 03:22 AM
Post
#15
|
|
|
Advanced Member ![]() ![]() ![]() Group: Members Posts: 398 Joined: 29-October 06 From: Bratislava Member No.: 114267 OS: 98SE
|
Generally the more amount of Ram you have, the larger swapfile you have and the larger Vcache is defined this error occurs more and more times
Technically Windows 98 SE with some patches can have up to 1gb of classical ram and another 4 gb of virtual ram (swapfile) and of course best performance of virtual ram can be gained with large ramdriver. the question is if is somebody so mad to build up a system with 5 gigs of ram To use 1gb of ram and 4gb of virtual ram located on harddisk is quite possible but the question is if it can improve or degrade the system performance. At all it is more memory that can be used with a single app. i tried to set Virtual memory to 4gigs... system was able to run but i experienced trouble. Sound driver was failing.. This post has been edited by Offler: Jul 28 2007, 07:21 AM |
|
|
|
Jul 28 2007, 06:24 PM
Post
#16
|
|
|
Member ![]() ![]() Group: Members Posts: 251 Joined: 29-June 06 Member No.: 100101
|
Technically Windows 98 SE with some patches can have up to 1gb of classical ram
Just out of interest win9x can have 4 gig of "classical" ram being 32bit, altering vcache.vxd might be a start in enabling this. All the best |
|
|
|
Jul 28 2007, 06:31 PM
Post
#17
|
|
|
Windows Lupus Project Creator ![]() ![]() ![]() Group: Members Po |