*** Craig Hart wrote in a message to All:
CH> This works rather well, detecting a bad memory bit in a
CH> known bad SIMM module I have (for this very purpose), which
CH> HIMEM.SYS also objects to, however this alogarythm is only
CH> one of many ways to write a RAM tester.
CH> I'm looking for other alogarythm's to try. Can anyone
CH> describe or refer me to any other RAM tester source
CH> code/alogarythm descriptions? I can take internet URL's if
CH> you have them... Information on this topic isn't easily
CH> gleaned, and so far a good read of what few memory
CH> manufacturer's data sheets I have has found very little.
CH> I am especially keen to try and devise a test that can
CH> detect the sitation where the user fits two different SIMM
CH> modules to a single bank - on their own each SIMM works OK,
CH> but as a pair in the same bank, they fail. (for example, one
CH> 80ns & one 60ns SIMM, or one EDO + one NonParity SIMM). This
CH> is a common enough mistake and will cause major instability
CH> problems for linux/win95/NT users.
From working on computers in a repair shop, I can tell you that memory
problems on the modern motherboards is a total pain in the ass. One has the
regular SIMMs, external cache, and internal cache, plus the CPU itself, as
well as the motherboard/BIOS (CMOS settings), each one a potential source of
memory problems. I also like looking at the low-level specs of the various
processors, etc., and messing with assembler (real mode stuff only; no
experience with protected mode, etc.), so I tend to understand how things
tick internally better than most "technicians" (in quotes, since most who
claim to be technicians are just wanna-bes who won't ever make it since they
don't care to sit down and track down a problem the hard way).
I'd say that the hardest thing right now to track down is internal cache
errors; I've yet to see a program that checks internal cache, even though
both Intel and AMD Pentium-class chips, as well as the most recent 486-class
chips (not Cyrix; they don't have the extra registers) have special registers
specifically for testing the internal cache. Personally, I think it sucks
when the best way to check for internal cache problems is to swap the CPU and
then run Win3x/Win95 to see if it acts less flaky.
External cache can be tested simply by disabling it in the CMOS or removing
the COAST module, and doing the Windows memory test again (see commentary
about about using Windows as a memory test).
I've found that for best results, I need to try several different diagnostics
programs... and even if a test fails, that apparently doesn't always mean
that there's a problem. I've seen some memory tests fail consistently on
certain motherboards, yet the computers work without apparent problem.
If you want to get into video memory testing, I can tell you right now that
most testers will not check for "static"; it's my understanding that this
occurs when the memory is not fast enough; however, most memory testers
report that the memory is perfectly ok, even when the display is blatantly
screwed up. PC-Pro detects this problem, though, and also finds other
problems with video cards that I know are flaky, yet are passed by other
video memory testers. (Static is not necessarily a problem with the video
memory or the video card itself, just incompatible with the system that it's
in, or else the CMOS settings need adjustment to match).
If you write a memory tester that actually WORKS, with a minimum of false
alarms (or at least an explanation of how to determine for sure if it's a
false alarm), I'll be interested in seeing it.
Also, I'd suggest that you try to arrange different tests in a logical
sequence; one diagnostics program (I forget which one) has an address line
test (I think that's what it is) as the very last test to be performed, yet
it's also the fastest test, taking less than half a second (the amount of
memory doesn't affect the speed); seems illogical to have that test as the
very last one.
Also, some test programs simply reboot on some systems when they hit bad
memory, so it's hard to know exactly where the problem is; if this could be
avoided or at least worked around, it'd be helpful.
There is at least one virus that randomly changes memory, making the memory
appear to be bad. I can think of several other ways to cause similar effects
by changing control registers, etc.
If you want to reply, please feel free to send me netmail at the Fido address
below.
--Scott.
--- timEd 1.01
---------------
* Origin: Wizard's, 254-554-2146, Abacus PLUS, 903-3097 (1:395/11)
|