Read Instabilities
What are read instabilities?
Mass storage devices must follow a strict set of rules to successfully communicate with computers. When storage devices become physically degraded, they lose the ability to follow some of these rules. The operating system may crash, freeze, or fail to see the drive; the drive may read extremely slowly; and valuable data can suddenly disappear. Read instabilities are essentially problematic hardware-level issues which make it more difficult or impossible to recover partially failed storage devices by using only data recovery software. Absolutely all types of storage devices typically become unstable before they fail completely. If the problem is caught early enough, and addressed correctly with specialized hardware, then the data can be recovered before the storage device suffers complete failure and becomes much more difficult or impossible to recover.
What do read instabilities look like?
It is crucial to differentiate read instabilities from complete failure. If the drive does not identify in the computer’s BIOS then you are most likely dealing with complete failure, which requires a full lab of equipment and deep specialization to handle. An unstable drive will still usually identify in the BIOS, but will be too problematic to recover due to one or more of these symptoms:
-
This is the most classic symptom of read instability issues and it basically means that the drive responded to a read attempt with an error. Healthy drives will not do this under any circumstances, so as soon as you see this symptom, you can be certain that the drive is unstable and on its way to becoming completely failed. What may make this symptom difficult to identify is that typical operating systems do not notify the user of bad sectors. Practically all data recovery software tools do report bad sectors in their logs.
-
Typical operating systems are quite sensitive to the condition of the drive and a single bad sector in critical filesystem elements can easily cause the drive to fail to show up entirely, preventing data recovery software from even attempting a recovery. A drive which shows up in the BIOS, but not in the operating system, is highly likely to be unstable and is in most cases recoverable by specialized hardware like our USB Stabilizer.
-
When a read attempt falls on a degraded area, the symptom you are likely to see is different in HDDs and SSDs. SSDs lack the ability to do internal error handling, relying instead on preventative maintenance, so when a read command falls on an area that the SSD can’t read, it usually permanently stops responding, which causes the computer to hang as it fruitlessly waits for this frozen SSD to respond. The only way to force the SSD to exit this frozen state is to repower it.
HDDs do have internal error handling, so the drive will make hundreds of internal read retries to try to get a successful read. If one of those retries succeeds then the only symptom that will be noticeable is a temporary decrease in speed. If 4+ seconds of internal retries all fail then the drive will conclude the sector is bad, write to its firmware area (located on the platters) to update various logs, and finally respond with an error, at which point the computer can move on. This process wastes a lot of time, causes further physical degradation, and risks firmware corruption. There is also a possibility that the drive may run into an issue while updating its firmware logs, causing it to permanently freeze until it is repowered, just like an SSD.
-
Read instability issues will make the storage device behave in unpredictable ways. Excessive delays and/or some types of drive errors can easily make data recovery software, or even the whole operating system, suffer a critical exception. The computer may restart, the software may crash, or the operating system may drop the drive, putting a stop to the recovery effort. This happens because normal computers are not at all designed for data recovery and they cannot function correctly when a storage device is behaving erratically.
What do hardware read instability handling tools do to help?
There are three main sets of capabilities which help stabilize and accelerate the recovery process while reducing further damage:
-
If the drive doesn’t respond to a read command within a fraction of a second then it is clearly stuck on a bad area, so hardware tools would automatically reset it (for HDDs) or repower it (for SSDs). This helps in two ways. First of all, when unstable drives freeze outright, this will return them from that state so the recovery process can continue seamlessly. Secondly, issuing a hardware reset to an HDD at an early point stops it from doing most of the harmful internal read retries, and in most cases also prevents it from updating its firmware logs, which accelerates the recovery process and makes the drive take further damage at a much slower pace.
-
When dealing with an unstable drive, any part of its responses can be corrupt or delayed, which must be consistently tolerated by the hardware of the read instability handling tool. This is a significant area of research conducted by tool manufacturers to identify the various deviations in communication that unstable drives may exhibit and to design hardware and firmware that can tolerate them. Without this, communication with the unstable drive would frequently break down, putting a stop to the recovery effort.
-
Standard operating systems are not at all designed for data recovery and they include many features which directly complicate recovery efforts. For example, every operating system has hard coded timeouts for every stage of communication with the storage device. If the drive ever takes longer than this time then the operating system drops it and refuses any further attempts at communication in order to protect itself. As another example, standard operating systems typically will not identify a drive if critical filesystem elements have turned into bad sectors, even if the rest of the drive is perfectly readable.
These are the primary ways that hardware tools help deal with unstable drives, but there is a whole lot more that should ideally be done on the software side to help the process along as well.