The problem with parity checking is that while it is certain to detect a change in a single bit ,if two bits change then this leaves the total number of 1 bits even and a parity error will nit occur. However, in modern computer systems the probability of a single bit error is so small that the probability of two such errors in the same memory location a vanishingly small. Indeed, such errors are so rate that it is arguable that parity checking itself is redundant.
As is takes eight bits to store a single byte, adding an extra bit for parity checking makes the total number of bits need equal to nine. This is the reason that 386/486 systems need nine 1MByte chips or 9xMByte SIPs or SIMMs for every Mbytes of memory you also have an additional 1MByte dedicated to parity checking! In same machines you can disable parity checking and make use of the unused chips to increase the amount of memory available. As transient memory errors are very rare, and the memory is tested for permanent faults every time you switch the machine on, you might consider this a reasonable trade-off.
EmoticonEmoticon