• Please review our updated Terms and Rules here

HIMEM.SYS memory testing is faulty?

Shadow Lord

Veteran Member
Joined
Jun 16, 2010
Messages
3,234
Location
California
I was not aware of this but apparently HIMEM.SYS does its own memory testing on bootup (at least on version 6.22 of DOS - maybe others). On my EISA system the first 16MB seem to be fine. However, when I add the /EISA switch (needed apparently to use the full 64MB) it errors out and tells me HIMEM was not installed. The memory passes POST testing fine and does not error out on multiple all night passes of Memtest86+ 4.1. Anyone have experienced this issue before?

Thanks.
 
I generally skip the HIMEM.SYS memory test by specifying the "/TESTMEM:OFF" switch. I wonder if it might get you past the error you're experiencing?

Yes, I can bypass the testing using the /TESTMEM switch. My questions is more along the lines of is HIMEM broken or my memory chip ;)? I just want to make sure I am not missing a memory fault that can be a cause of head aches w/ random issues.
 
Can you try that system with a Win9x startup diskette? Just in case a bug got found with large memory after DOS 6.22.

HIMEM.SYS has a problem if the extended memory isn't all contiguous. Are you loading any other drivers that might be accessing extended memory?
 
Can you try that system with a Win9x startup diskette? Just in case a bug got found with large memory after DOS 6.22.

I'll have to dl a Win9x startup diskette. This system is strictly DOS/Wfw 3.11 so it wouldn't be a permanent option but for dx it is a good idea. Thanks.

HIMEM.SYS has a problem if the extended memory isn't all contiguous. Are you loading any other drivers that might be accessing extended memory?

Not before HIMEM. Basically it is the first line in my config.sys. QEMM has no issues w// the memory and I will end up using it in the end for memory management. I'll check to see if a later version of HIMEM has the same issues.
 
Well, it turns out that the HIMEM.SYS (v 3.95) from DOS 7.10 (Win98SE) will run fine on DOS 6.22. I replaced my HIMEM.SYS w/ the updated one and unfortunately the error remains.
 
http://support.microsoft.com/kb/109845

The Win9x versions never check memory by default. I have never used the /EISA switch on my EISA/VLB 486 motherboard, didn't even know it existed. It has no problems detecting all 40MB of RAM in the machine without it.

Yeah, I forced it to test using TESTMEM:ON. Interesting enough the document you linked to points to "Turbo" being an issues. I know my system is on fast (the rabbit light is on ;)) but I always assumed that meant full speed vs. slow (turtle light). I have to see if I can switch modes and if the error goes away.

When the /EISA switch is not used (or when the MS-DOS version 5.0 version of HIMEM.SYS is used), only the amount of contiguous extended memory identified by Int 15H/88H (get extended memory size) is allocated by HIMEM.SYS. If a system has 24 MB of memory installed (and all extended memory was in one contiguous block starting at 1 MB) and Int 15H/88H reports 16 MB available, HIMEM will use only 16 MB, leaving the remainder unused and unavailable. Several original equipment manufacturer's (OEM) BIOS implementations never indicate more than 16 MB of available memory through Int 15H/88H regardless of how much more memory may be installed. Therefore, on one of these machines with more than 32 MB of memory installed, most of it is not usable with HIMEM.SYS, EMM386.EXE, and Windows 3.0.

From here.

So it may not be needed in your system. I wonder what would be an easy way to check if the memory is contiguous...
 
From here.

So it may not be needed in your system. I wonder what would be an easy way to check if the memory is contiguous...

I wonder if it will work around the stupid memory limitation this board has with BIOS shadowing enabled. Micronics (the mfr of the board I have) claims when Video and ROM shadowing is enabled in BIOS, the board can't address more then 16MB because of the memory map. Perhaps the /EISA switch is the key. This board with shadowing disabled is SLOW, like the turbo button is off during POST along with any disk or video access in DOS.
 
Back
Top