EGOvoruhk Posted December 21, 2007 Posted December 21, 2007 I've got 2 1GB sticks of RAM in my system. I know (or assume rather) I can't use 2GB with 98, but I need them installed because it's a multi-boot system. I installed 98 with just one of my sticks in, and then went about trying to work how to get the second one in. I began my search, and I was directed to this site for help. I finally got my system to boot with MaxPhysPage=38000 and MaxFileCache=30000, but now I have a different problem. Once in Windows, I can't get a command prompt to load without it telling me I have low memory. This also happens when trying load applications, or gamesAny help would be appreciated. For now, I'm just going to start messing with the values, hoping to come across some magic, but I'm just shooting in the darkThanks in advance
galahs Posted December 21, 2007 Posted December 21, 2007 Try these threads:http://www.msfn.org/board/index.php?showtopic=107342http://www.msfn.org/board/index.php?showtopic=105373http://www.msfn.org/board/index.php?showtopic=99263
Ninho Posted December 21, 2007 Posted December 21, 2007 I finally got my system to boot with MaxPhysPage=38000 and MaxFileCache=30000, but now I have a different problem. Once in Windows, I can't get a command prompt to load without it telling me I have low memory. This also happens when trying load applications, or gamesSeems a bit strange to say the least. Not discussing your choices, you are willing to limit the mem used by Windows to slightly under 1 gigabyte - if my quick math is correct. The MaxFileCache value IIRC is decimal kilobytes, and 30000 seems acceptable if a tad small for your situation. As a consequence, it /should/ work... Please make absolutely certain you entered the required parameter lines in the respective right sections of your %windir%\system.ini file. The MaxPhysPage= should be under [386enh], while MaxFileCache= goes under [Vcache]. I know you must have been careful, but please... double-check before we try to reproduce or understand your problem !Cheers-- Ninho
dencorso Posted December 21, 2007 Posted December 21, 2007 Hi, EGOvoruhk!galahs pointed you in the right direction. Those threads contain all our previous discussions and findings regarding win 9x/me with lots of memory.I'm glad you got the system to work. As for the out of memory error with DOS boxes, I do have someideas about what may be happening. Yet, before writing many considerations based on guesses only,let me ask you some questions: Are you using XMSDSK? If so, what settings are you using?What is the AGP aperture you are using?Did you try to use more than MaxPhysPage=38000, after you had set MaxFileCache=30000? And what happened then?Are you using EMM386.EXE or any other UMB manager?
EGOvoruhk Posted December 21, 2007 Author Posted December 21, 2007 Are you using XMSDSK? If so, what settings are you using?Nope. No XMSDSK hereWhat is the AGP aperture you are using?I set it to 32MB, which is the lowest I could set it toDid you try to use more than MaxPhysPage=38000, after you had set MaxFileCache=30000? And what happened then?I set them both at the same timeAre you using EMM386.EXE or any other UMB manager?No. Everything I'm using is default. I just did a plain install, then SP 2.1a, and the ME system files update
dencorso Posted December 22, 2007 Posted December 22, 2007 Thanks for the info. From it I guess you have no other place to improve your configuration outside windows. So, please, try reducing even further MaxFileCache to 16384, then restore it to 30000 and try using a bigger MaxPhysPage, but do each modification by itself, and check whether the low memory errors disappear or not in each case.
galahs Posted December 23, 2007 Posted December 23, 2007 How do you tell windows to place those files (operating system specific ones like the registry in particular) on a RAM disk
diskless Posted December 23, 2007 Posted December 23, 2007 How do you tell windows to place those files (operating system specific ones like the registry in particular) on a RAM diskI could provide info tomorrow about the following:1. Swap file on a RAM drive (dead easy)2. Registry on a RAM drive, rest of Windows on a hard drive (easy)3. All of Windows including registry on a RAM drive (also easy)
galahs Posted December 24, 2007 Posted December 24, 2007 If you would that would be great. I'm sure some other members would love to know too.I know how to put the swap file on there but the rest I wouldn't have a clue.
oddjob Posted December 24, 2007 Posted December 24, 2007 If you would that would be great. I'm sure some other members would love to know too.I know how to put the swap file on there but the rest I wouldn't have a clue.Use coa or setreg to put your registry into a ramdisk, alter the registry to point to the ramdisk letter you want to use then copy system.dat and user.dat over to it.To put all of windows into your ramdisk first use subst to point to your ramdisk letter to a folder you create then install windows into that subst drive letter (similar to installing windows onto a cd)Its all old hat preferred method for diskless win9x farms, nothing difficult and has shed loads of info of how to do it on google
vick1111 Posted December 24, 2007 Posted December 24, 2007 Well it would be great to receive more information on how to install the virtual memory on the ramdrive.I have just installed Windosws 98 SE on an Asrock 4coredual-sata2 -Intel core 2 quad processor -2 Gb of DDRII -I believe that many new installation of windows 98 will be on a multiboot O.S. PC like mine and the one that started this post.In a multi boot system new windows 98 users may have around 2 Gb of memory or may be even more.The problem is what to do with this excess memory in windows 98.Presently in my installation I have limited the memory used by windows 98 to 1Gb with the maxphispage (in system.ini) and to make the system work I had to reduce the MaxFileCache to 30000 (yes just 30000 cause more would not allow the start of dos window).I am not very happy of the solution I have adopted and if possible I will try to put the Virtual memory on a ram drive.I suspect that there can be some advantages and some disadvantages.1 Disadvantage : using 1Gb of virtual memory on ramdrive and one Gb of memory can bring the risk of locking the system when the virtual memory is not enough for the system.1 Advantage: It would solve the problems of the memory management bugs and a MaxFileCache enter would not be anymore necessary.I would appreciate comments on this and also an explanation of why 1.8 Gb would be a good choice for virtual memory on ram drive in a system with 2Gb memory?Infact i was thinking of something around 1 Gb for virtual memory on ramdrive in a 2Gb system.1.8 Gb would leave just 200Mb of memory which seems not to be enough even for the agp video card memory needs.With that setting I seriously doubt the system could work with my ATi Radeon 9600 using 256 Mb of memory.So if someone could add some comments on how much memory give to the virtual memory ramdisk in a 2 Gb system or similar system it would be very welcome.Also it would be appreciated some comments on how to avoid the lock up of the system after filling all the virtual memory.Is 1 Gb of virtual memory enough to avoid any risk of lockup of the system?? Merry xmas to everyone and thanks to all the wise posters
dencorso Posted December 26, 2007 Posted December 26, 2007 Try these threads:http://www.msfn.org/board/index.php?showtopic=107342http://www.msfn.org/board/index.php?showtopic=105373http://www.msfn.org/board/index.php?showtopic=99263There is one more thread worth reading:http://www.msfn.org/board/index.php?showtopic=79756
vick1111 Posted December 30, 2007 Posted December 30, 2007 Well I have tried everything that was possible (given my knowledge of the problem) and I have not been able to make XMSDSK work without problems.I have Windosws 98 SE installed on an Asrock 4coredual-sata2 -Intel core 2 quad processor -2 Gb of DDRII -I have developed the idea that the MaxFileCache entry does not solve definetely the out of memory error.In some cases no matter what the entry for the MaxFileCache or for MaxPhysPage I got an out of memory error when starting dos.(I have verified memory values with system monitor)---------------------My failed attempts---------------------Even in the most favourable situation after starting 6 instances of dos windows, the out of memory error appears again.At one point I was able to make XMSDSk work without problem with:c:\ramdisk\xmsdsk.exe 500000 z: /T /Y(in autoexec.bat.)At that point I did loose completely the use of Dos window.(It is like some important memory resources are taken by the video card or something else and I have no clue about what is it! even if I have developed the idea that the solution is not in the maxfilecache settings : the solution must be in some kind of wise memory management I cannot find)-----------------------------------My present configuration (without XMSDSK)----------------------------------I have upgraded to service pack 2 for 98 SE.and my present settings are:autoexec.batmode con codepage prepare=((850) C:\WINDOWS\COMMAND\ega.cpi)mode con codepage select=850keyb it,,C:\WINDOWS\COMMAND\keyboard.sysLH /L:2 C:\WINDOWS\COMMAND\DOSKEY /INSERTPROMPT $p$gSET DIRCMD=/P /Asystem.ini [386Enh]MaxPhysPage=40000ebios=*ebiosmouse=*vmouse, msmouse.vxddevice=*dynapagedevice=*vcddevice=*vpddevice=*int13woafont=app850.fonkeyboard=*vkdMinSPs=16ConservativeSwapfileUsage=1DMABufferSize=64[vcache]MinFileCache=3000MaxFileCache=393216(rest is omitted)config.sysDEVICE=C:\WINDOWS\HIMEM.SYS /TESTMEM:OFF /QDOS=HIGH,UMBDEVICE=C:\WINDOWS\EMM386.EXE NOEMS X=A000-F7FF DEVICE=C:\WINDOWS\setver.exedevice=C:\WINDOWS\COMMAND\display.sys con=(ega,,1)Country=039,850,C:\WINDOWS\COMMAND\country.sys(I have tried and cannot use UMBPCI.SYS at the place of EMM386 cause my motherboard is not supported)EMM386.exe did work only with the setting: X=A000-F7FF .I do not think that EGOvoruhk either has solved the problem????In this configuration I am able to start 2 (two) fresh dos windows before I get the out of memory at the 3rd dos istance.-----------------------------------XMSDSK Failure-------------------------------------Whenever XMSDSK succesfully creates a ram drive then my dos windows become unavailable for the "out of memory error"MOREOVER XMSDSK does not work properly: when I start the scandisk, to check the sectors into the ramdrive Z, the write attempt fails after a while.A more simple copy write attempts fails too.The failure happens not at a specific point.what happens is that I got a blue screen with not recoverable error sayng things like:"An exception 0E has occurred at 0028:C0004D6D in VxD Vmm(01) + 00003D6D. This was called from 0028:C19359C4 in Vxd Rmm(01) + 00000254"I have tried many different settings for XMSDSK.(Some example :c:\ramdisk\xmsdsk.exe 1800000 z: /T /Yc:\ramdisk\xmsdsk.exe 1100000 z: /c1 /T /Yc:\ramdisk\xmsdsk.exe 500000 z: /T /Yc:\ramdisk\xmsdsk.exe 500000 z: /c64 /T /Yc:\ramdisk\xmsdsk.exe 500000 z: /c1 /T /Y)
jaclaz Posted December 30, 2007 Posted December 30, 2007 Cannot really say if it can help, not even if it works at all, but you can try using the "other" DOS ramdisk, SRDISK:http://sourceforge.net/projects/srdiskjaclaz
dencorso Posted December 31, 2007 Posted December 31, 2007 First of all: remove EMM386 from your CONFIG.SYS! It's not required for windows and this results in memory management way worse than standalone VMM.VxD. And in the configuration you are using it, it is not able to provide UMB, so it is pointless to use it anyway. And don't forget to change the DOS statement to "DOS=HIGH" without the ", UMB". Now, Exception 0E is a Page Fault. XMSDSK is trying to access memory that isn't there. I think I know why, so bear with my somewhat longish reflection below, please. Some time ago, Tihiy (in this post) pointed to a russian language page, by Igor Petrovitch Leyko (Nov 03, 2005), about win 98 memory problems (link), and while no automatic translator did a good job at translating it, Google Language Tools gave me a good start, and from that start I've done my best to produce a good enough English translation of a short excerpt of that page, which I find relevant to the present discussion: "Right-click on the My Computer icon, choose Properties from the menu, then the Device Manager tab. Right-click the Computer icon (at the top of the list) and then choose Properties. In the window that appears, choose Memory. In the resulting list of addresses assigned to devices locate the first entry from the fourth gigabyte (= the range C0000000-FFFFFFFF). The entry you want is the one that has the address nearer to C0000000 or farther from FFFFFFFF (which are two ways of saying the same thing). Subtract C0000000 from that hexadecimal number you just found (using the the standard Windows calculator's Hex mode), convert the result to decimal (by selecting the calculator's Dec mode) and divide by 1024 (all of the calculation is easily done with the calculator in scientific mode). The resulting number is the maximum allowable size of the disk cache (it is stated in kilobytes). Open the system.ini file, find the section [VCache] and fill it with a string MaxFileCache = xxx, where xxx is the number you just calculated. If you later add another hardware device to the computer, it may require the repetition of these calculations, and will leave less space for the cache." Just to avoid any misunderstandings, let me say that, in my own system, when I perform the above procedure, I find, as the device with lowest memory address range: "EC800000-EC8000FF Via Rhine II Fast Ethernet Adapter" and hence, by doing the calculations with EC800000, reach a value of 729088 kB. But the real problem is what does this value really mean? Well, my own experiments show that if I set MaxFileCache=729088 or to any value above 131072, I get "Insufficient Memory to Initialize Windows" and the system simply doesn't start at all. Yet, MaxFileCache=131072 still leads to a "There is not enough memory available to run this program" on starting a DOS box, usually the third or the fourth, sometimes even the first. So I settled down to use MaxFileCache=114688, and now I can start 28+ DOS boxes, before getting the "There is not enough memory available to run this program" error. All this using a XMSDSK of 262272 kB, and having an AGP aperture of 65536 kB. But if I expand or reduce the XMSDSK size, the number of DOS boxes I can open diminishes or increases, respectively. Further tests seem to indicate that the memory value reached per Igor Leyko's proposed calculation is the total memory pool available for XMSDSK, VCache, the AGP aperture, and the DOS boxes. In my system this means 262272+114688+65535=442496 and 729088-442496=286592 is the free space my DOS boxes use, when created. Bear in mind that my system has 1.5 GB of RAM and I'm using MaxPhysPage=48400 (1156 MB) now. Be warned that, except for the text from Igor Leyko that I cited, all the conclusions presented here are mine own, based solely on my limited experiments on my own computer, so: (1) I may be wrong and (2) even if I'm not, YMMV. Happy holidays!
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now