Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I don't know much about the physics behind bad blocks on a HDD, but I've often seen that a "bad" block turns to good when you overwrite it with something (anything, zeroes will do). I've even written my own tool that does exactly that. Windows command-line format utility with the /P:1 switch will do the same. I figure that in this case it was just a CRC error (the know that the drive does store checksums with each of its sectors)

However I wonder how reliable this is. Perhaps a bit is stuck on 0, and appears as "good" when everything is zeroed out, but in real life use it has 50/50 chance of working correctly. Or perhaps a bit always gets set together with its neighbor, etc.

On another internet forum the prevailing opinion seems to be that there are two types of bad blocks - "soft" bad blocks (which are indeed checksum errors, and can be safely corrected with no impact on further drive longevity) and "hard" bad blocks that are micro-fissures in the drive plates, and will make the sector always unreadable, and no amount of overwriting will help that. Also, the drive can be expected to rapidly deteriorate in quality.

If that is true, then it would be easy to distinguish between a truly bad drive, and a good one that has simply had the misfortune of an incorrect checksum. Unfortunately I'm old enough to have stopped believing in fairy tales.

I've got an idea about an utility similar to memtest that would do the same to a HDD (writing different patterns, possibly several times, and then reading them back to check), but I also wonder if there is a point. What if the guys on the other forum are right after all?

Anyone know?

share|improve this question

4 Answers 4

This answer includes speculation and opinion, and is more fun than fact.

http://www.seagate.com/staticfiles/support/seatools/user%20guides/SeaToolsDOSguide.EN.pdf written around 2010

By design, modern disk drives maintain spare sectors for reallocation purposes. Usually, sectors become difficult to read long before they become impossible to read. In this situation the actual data bytes in the sector are preserved and transferred to the new spare during a sector reallocation. Similarly, when a disk drive writes data and encounters a problem, the drive firmware retires the problem sector and activates a replacement before giving successful write status.

From the logic of this any "real" new bad sector marked out by the hardware , may very well have had a "real" problem at one time or another , and should not be re-tested and re-used , because it is a problem waiting for a place to happen, just like the original marked out bad sectors.
The space consumed by the few "bad" items is so small usually it is not worth concidering using them.

Should a re-test utility test the sector under many conditions? Yes it should, why wouldnt it, it would take minor extra time to confirm that multiple and different writes to it is readable, and would not cut into the total in the area. Adding ,why not a whole bunch of sectors in that same location seeking if there was any actual damage in the area , or just a fluke at the time?

- http://www.seagate.com/staticfiles/support/samsung/docs/M2%20Portable%20Series%20User%20Manual%20EN%20Rev00%20110428.pdf

If you make an impact on the external drive, it may cause bad sectors on the disk. Bad sectors can cause various and potentially read/write errors

The impact bad sectors always seem to show in groupings in a similar area, with added bad sectors growing from that. a person should be able to get an idea of actual head impact damages on surfaces from the grouping of them. Any actual physical damage to an area, that releaces any particals from that area, those particals have to be slung off and filtered out.
From all the other information, any head impact damage might also result in the head itself becomming worse? If there is noticable accumulations of new bad sectors in groups, I dont think I would want to rely on that drive, but my drives usually don't have a lot of (shown) new remapped sectors at all.


Power fluxuation, static induction, interferance , atomic size warble, temperature, the data density , I would wonder if the Hardware itself had a error with "some sectors" under "less than ideal" circumstances, that at any rate they would still be the "worst of the bunch". When The manufactures own tests log-out bad original sectors , do they go back and say "well the ac clicked on in the building, or we had a flux in background radiation, so lets re-test that?" :-) Or do they figure that "under Any condition" the rest of them worked this one did not?

If there was a way to determine if the sectors are damage, growing damage from suface damage or surface imperfections, it should be the grouping of the sectors marked bad. ARgggg

I think only a hard drive manufacture could correctaly answer this, there are other data sheets that go well beyond my skill levels. At seagate WD seems to stick more with the simpler.

The most I have to go on, is what I have seen and experieneced and the data they provide. There are times when the stuff is deemed bad, and I have re-used it, and it never presented a problem, I knew at the time it was a software/hardware problem of my own. If it was damage I caused I would hope it logged out all 15 tracks there to never pass by the whole area again :-). When looking inside the drives, it is beyond me, they are perfect, Following this picture we see The molecular mounds the head tries to fly over. And Magnetic force microscopy?

If a hard drive manufacture did know all the answers, then it would not explain all the angry users who recieve Re-Tested Re-manufactured drives as a replacement, and have problems with them. Some users indeed were the problem, but not all of them.

Follow this picture To see an idea of "weak heads"
0s or not , I doubt it matters a Write is very complete

share|improve this answer

When a typical mechanical hdd encounters what it believes to be a bad sector it does one of several different things. The author behind SpinRite often talks about some of the features within a program he wrote called SpinRite.

Basically your typicall hdd is able to determine if its able to read the data by doing error checking. If it encounters an error its able to correct the errors to a certain number of bits.

What SpinRite does is basically ask the HDD if its able to read the data multiple times. If the hdd is able to read it, SpinRite moves the data to a different sector, this allows the hdd to mark the previous sector as bad eventually and this is how its able to recover data for you.

On another internet forum the prevailing opinion seems to be that there are two types of bad blocks - "soft" bad blocks (which are indeed checksum errors, and can be safely corrected with no impact on further drive longevity) and "hard" bad blocks that are micro-fissures in the drive plates, and will make the sector always unreadable, and no amount of overwriting will help that. Also, the drive can be expected to rapidly deteriorate in quality.

So either physical unrecoverable defects of the platters themselfs or known recoverable defects or better described the fact a platter can and will be 99.999% perfect.

I've got an idea about an utility similar to memtest that would do the same to a HDD (writing different patterns, possibly several times, and then reading them back to check), but I also wonder if there is a point. What if the guys on the other forum are right after all?

Besides the fact this program already exists ( SpinRite ) it sounds like you don't know enough about the inner workings of a HDD to even write this utility.

What made SpinRite so good was its ability to reverse engineer the error-checking in its early days.

If that is true, then it would be easy to distinguish between a truly bad drive, and a good one that has simply had the misfortune of an incorrect checksum. Unfortunately I'm old enough to have stopped believing in fairy tales.

Its less about checksums and more about error checking and eror correction please do more research.

share|improve this answer
    
More research - that's why I came here. I don't know even where to start. :( Plus, advances in HDD technologies in the last decade have been enormous, and I wouldn't trust even a 5 year old article today. Have you any idea where I could find some information on this? –  Vilx- Mar 13 '12 at 13:50
1  
Also - just so you understand the scope - I'm not trying to recover data. I'm trying to find out whether a given HDD is truly junk, or can I still use it for unimportant data (like backing up my movie DVDs and the like) and expect it to have a reasonable lifetime still. –  Vilx- Mar 13 '12 at 13:51

I use spinrite to check hard drive for defect. So far I'm happy with it. As it disable any error correcting in hdd so that the real bad block will appear.

share|improve this answer

What could be happening is that the drive firmware is "remapping" the bad sector behind the scenes. Modern hard drives have spare sectors they keep around for this purpose. There is a limit of them and SMART data can tell you how close you are to running out on some drives.

However no one can really know what is going on without disassembling and examining the hard drive firmware.

There are utilites like badblocks for Linux that write to every sector and read it back.

Most physical data mediums have a significant error rate that is hidden using things like forward error correction codes, etc. You might have thousands of errors on your hard drive now, but since the drive writes redundant data for each sector, it never reports an error and you never know about it.

share|improve this answer
1  
In a sense, with PRML technology (present on all disks today), every bit is probably wrong, all the trillions. Most are only slightly wrong, though. Your logical 1 bit will be physically a 0.99, 0.9 or 0.6, or a 1.3 - and you have some extra (analog) values around for error correction. It's the job of the drive electronics to convert this analog signal back into discrete bits. As long as the analog read signal is close to what was written, the resulting bits will be correct. –  MSalters Mar 13 '12 at 14:09
    
@MSalters - you have some extra (analog) values around for error correction : Error detection and correction happens in the digital domain, that is, after the analog signal is demodulated to digital. –  sawdust Mar 13 '12 at 20:21
    
@sawdust: Not all corrections. Clock & Gain correction is done in the analog domain. –  MSalters Mar 15 '12 at 9:45

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.