On 9/30/05, Jules Richardson <julesrichardsonuk at yahoo.co.uk> wrote:
I beliee that most PCs could make use of the
added parity bit, while
Macs didn't care if it was present.
Isn't that the other way around? Nearly all PCs I've come across don't
care about parity, but the rest of the world always seemed to make use
of it.
It's one of those things that has changed. Prior to around the Penitum
introduction, the vast majority of PC's (and most serious machines) used
parity by default. Parity could be switched off (usually by DIP switch or
mobo jumper.) As memories got bigger, parity errors due to random events
(cosmic ray, decay of radio active potassium in the chip ceramic) went from
being a once a year thing, to being a once a day thing.
Of course, the users whose computers crashed with a "parity error" message
on the screen got annoyed and blamed the motherboard manufacturers. The
manufacturers came up with two solutions. The first was ECC/EDAC support,
which could correct most of the errors. The second (and cheaper) method was
to not use parity at all. After all, 11% of parity errors aren't actually a
problem in the RAM the computer sees. Of the rest, a significant fraction
affect memory areas that won't be saved to disk. If you corrupt code in
memory a program will probably crash (rather than the computer), at which
point the code will be reloaded from memory. Other likely places for memory
errors are big images. Chances are that the errors won't make to disk.
I've often wondered if any operating systems wash their pages. Having the
idle loop perform a quick checksum on pages that aren't dirty to see if they
are intact (and reload them from disk if they aren't) would seem like a good
idea on non-ECC systems.
Eric