capaho wrote:
When any application, including the OS, needs RAM, a memory block of sufficient size is allocated and then freed once it's no longer needed. This memory block is, or should be, exclusive to the process that's using it until it is no longer needed and the memory block is freed, whereby it becomes available for another process.
There are several things wrong with this:
1. The OS is not an application. You can't quit it without shutting down the machine, nor can application processes run without the services the OS provides.
2. Many OS services are always needed (for example file services). Thus, there is never a time the wired memory dedicated to those services can be freed up except at shutdown time.
3. It is not true that every block of memory must be reserved for the exclusive use of a single process. In fact,
as explained in detail in the third paragraph of the Details of the Virtual Memory System section of the Apple developer document "Memory Performance Guidelines," memory pages can be shared among different processes or even among multiple blocks of code within a single process.
I think it is extremely unlikely that you would have a stable Snow Leopard installation (or any other OS version) where there is "undetectable" hardware failure in the RAM or the hard drive.
Think what you will but it is not all that uncommon that a defect in a memory module can't even be detected during a single pass of specialized RAM testing software like Memtest, Rember, or the Apple Hardware Test. In fact, some defects only show up when a DRAM chip attempts to hold specific data patterns, so it is quite possible that in one OS version that pattern will never appear in the defective part of the module but will in another.