![]() Which behavior is the truth? Is there any web articles clarifying this? If my idea is not the fact, then the HDD can only verify the written sector the next time user fetches it but in case the next fetch fails CRC and ECC, and its corresponding cache has been discarded, we can do nothing but to know the previously written data has been permanently lost. The drive can try as many "hot spare" sectors as he will until he finds a good one. This is a nice moment to do sector replacement because the to-be-written data now surely remains in hard drive's internal cache. In case the verification fails or the sector is deemed unreliable by the firmware, the firmware can immediately replace the sector so no user data is lost(at least not lost at the moment it is written to disk surface). When HDD writes a sector, it does read verification immediately(verify CRC checksum and employ ECC to recover the soft error bits). Now my question is: When does the HDD firmware determine a sector should be replaced. Users can know the development of sector replacement count from S.M.A.R.T item called "reallocated sector count".Ī sample HDD drive with too many reallocated sectors(the index 133 drops below threshold 140): ![]() This mechanism eliminates the need for OS to do bad sector managment itself. As we all know, modern hard disk drives do internal bad sector management inside their firmware, that is, when the drive detects a physically damanged or unreliable physical sector, it replaces the bad one with a good one from the reserved sector store. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |