[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bad blocks when validating my disks

From: Rod Smith
Subject: Bad blocks when validating my disks
Date: Mon, 04 Oct 2010 21:10:56 +0100
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv: Gecko/20100915 Lightning/1.0b2 Thunderbird/3.1.4

Dear Curtis,

Thank you very much for you email at the end of August, and particularly the useful reference on the structure of FAT disks. 

I'm sorry for the delay in replying -- I was off on my canal boat for some of the time!

Because many people assume disks are error free, I decided to validate my own suite of disks, that have been in use for between about three years and fifteen years. 

Six out of sixteen disks (totalling ~1.5TB) exposed errors to the IDE interface, with a total of 170kB of bad blocks not counting the three elderly disks that died during the prolonged validation process. 

That's enough to concern me, what with frequent defragging operations etc. that can spread the data corruption around the disk as if it was dirt.  I've summarised my findings at:

I may try to write a helper tool to coalesce the grown bad block tables (and/or badblock lists)  from the source file-system(s) and predict their effect on the re-partitioning operation that's planned. Perhaps even advise where to re-partition to avoid dangerous regions. I dabble in a few software experiments like that in my retirement. Would you like me to let you know how I get on?

You asked how bad blocks were flagged in FAT systems. A relevant paragraph from the Microsoft site says:

There is also a special "BAD CLUSTER" mark. Any cluster that contains the "BAD CLUSTER" value in its FAT entry is a cluster that should not be placed on the free list because it is prone to disk errors. The "BAD CLUSTER" value is 0x0FF7 for FAT12, 0xFFF7 for FAT16, and 0x0FFFFFF7 for FAT32.

from http://download.microsoft.com/download/1/6/1/161ba512-40e2-4cc9-843a-923  143f3456c/fatgen103.doc

Regards from

Rod Smith


reply via email to

[Prev in Thread] Current Thread [Next in Thread]