How do I do a memory test in QNX?

Ok, Mario,

So tell me just what a “real” memory test should include?

I would assume:
Check for shorted data lines with walking 0’s and walking 1’s.
Check for stuck address lines by writing different data at places where
address bits flip, and verifying the data was still different after the
whole write sequence.
Test all 0’s and all 1’s for loading issues.
Lastly you might want to write a value and check it X refresh cycles later
to verify the memory holds it’s value, and the refresh circuits are working.

What am I leaving out?


John Eddy

“Mario Charest” postmaster@ wrote in message

“Adam Mallory” <>> > wrote in message
news:bbfml7$3bs$>> …
John Eddy <>> > wrote in message
news:bbffti$ddh$>> …

What is “TLB” mapping?

TLB = translation lookaside buffer

The x86 (and other architectures) use this cache of recently used
translations rather than going to the pagetables for each virtual
If there was a way to guarantee that the translations for the pages you
going to use/target will always be in the TLB, then you can scribble
page tables w/o much concern (since the TLB entry will save the hardware
from going to the table, and extracting errnous data).

Just how woud I go about changing the RAM layout if I found bad memory
sounds interesting)?

The asinfo section of the system page desribes memory from which the OS
allocate from, named ‘sysram’. If you found ‘bad ram’, you could modify
ranges for this sysram to exclude the area.

If it were possible to pre-test memory on bootup (reasonably quickly),
re-map to exlcude bad areas, why not do this on every boot?

For the same reason BIOSes aren’t doing real memory test > :wink:

Like I said before, what exactly does ‘bad ram’ look like? The cost of
scanning RAM at startup isn’t cheap, and the benefit of the scan is
not worth the cost. That said, the whole reason why startup code is
is so customers can customize to their hearts content.