2

We know eventually everything is transistors which have state 0 and 1.

And the transistor may be damaged sometimes.

Can we test if there's any bit of defect transistors in the memory?

I think it's similar for hardware or anything else.

compile-fan
  • 16,885
  • 22
  • 59
  • 73
  • Isn't that part of the [BIOS Power-On Self-Test](http://en.wikipedia.org/wiki/Power-on_self-test) in standard desktop computers? – pmg May 26 '11 at 15:29
  • @pmg ,that's done in firmware,I'm talking about doing it in software. – compile-fan May 26 '11 at 15:35
  • 1
    `volatile int neutrinodetected = 0; while (!neutrinodetected); puts("GOTCHA");` – pmg May 26 '11 at 15:46
  • @pmg: Normally the POST tests are utterly useless wastes of time just to keep the PHB's happy... :-) – R.. GitHub STOP HELPING ICE May 26 '11 at 19:13
  • @R..: [Pointy Haired Boss](http://www.acronymfinder.com/PHB.html)?? Anyway, under common hosted implementations (Windows, Linux, Unix), there is no way to test all of the physically present memory. – pmg May 26 '11 at 20:32
  • Yeah. The management types who demand to see a test for some ridiculous policy reason, with no clue about whether the test results are even meaningful. :-) And yes you're right about the impossibility of testing on implementations that utilize virtual memory. – R.. GitHub STOP HELPING ICE May 26 '11 at 21:11
  • In general, the memory tests run during POST only test a subset of memory, with a very limited pattern of test data, so they are pretty useless to detect a bad bit of memory. And if you have the "Quick Boot" option enabled in your BIOS (most PCs ship that way by default), the memory tests are usually bypassed anyway. – myron-semack Jun 22 '11 at 16:42

1 Answers1

6

You can't make a definite decision from a process whether a memory cell is bad or not. The way this is usually done by writing known values to memory addresses and checking if they're identical when read back in. Tools like memtest86 work on that principle.

yan
  • 20,644
  • 3
  • 38
  • 48