Restore A Quick Formatted Drive In Windows? Also Cost Of IDE RAID

J

Justin Goldberg

I need a program that functions like HDD Regenerator, eg: to restore a
quick formatted partition. DOS and HDD Regenerator won't work with a
usb to ide disk adapter. GetDataBack and the like only want to restore
data to other drives, not restore the same drive.
 
J

Justin Goldberg

Forgot to post the ide raid question. I'll formulate and post that
question later.
 
F

Franc Zabkar

I need a program that functions like HDD Regenerator, eg: to restore a
quick formatted partition. DOS and HDD Regenerator won't work with a
usb to ide disk adapter. GetDataBack and the like only want to restore
data to other drives, not restore the same drive.

I don't use HDD Regenerator, but the following product does not appear
to "restore a quick formatted partition". Instead its author claims it
will repair "physical bad sectors". <shrug>

HDD Regenerator 1.61:
http://www.dposoft.net/#b_hddhid

Program features

Ability to detect physical bad sectors on a hard disk drive surface.

Ability to repair physical bad sectors (magnetic errors) on a hard
disk surface.

The product ignores file system, scans disk at physical level. It can
be used with FAT, NTFS or any other file system, and also with
unformatted or unpartitioned disks.

How it works

Almost 60% of all hard drives damaged with bad sectors have an
incorrectly magnetized disk surface. We have developed an algorithm
which is used to repair damaged disk surfaces. This technology is
hardware independent, it supports many types of hard drives and
repairs damage that even low-level disk formatting cannot repair.

- Franc Zabkar
 
A

Arno

I don't use HDD Regenerator, but the following product does not appear
to "restore a quick formatted partition". Instead its author claims it
will repair "physical bad sectors". <shrug>
Program features
Ability to detect physical bad sectors on a hard disk drive surface.
Ability to repair physical bad sectors (magnetic errors) on a hard
disk surface.

Well, either this simply runs a long SMART selftest or just
repeatedly tries to read a bad sector, or it is plain fraud.
The product ignores file system, scans disk at physical level. It can
be used with FAT, NTFS or any other file system, and also with
unformatted or unpartitioned disks.

Just as a long SMART selftest or a manual surface read.
How it works
Almost 60% of all hard drives damaged with bad sectors have an
incorrectly magnetized disk surface. We have developed an algorithm
which is used to repair damaged disk surfaces.

Obviously nonsense.
This technology is
hardware independent, it supports many types of hard drives and
repairs damage that even low-level disk formatting cannot repair.

Soooo, low-level access that is hardware independent? Fascinating.

Arno
 
J

Justin Goldberg

Almost 60% of all hard drives damaged with bad sectors have an
incorrectly magnetized disk surface. We have developed an algorithm
which is used to repair damaged disk surfaces. This technology is
hardware independent, it supports many types of hard drives and
repairs damage that even low-level disk formatting cannot repair.

- Franc Zabkar

From following this group I've found that spinrite is absolute rubbish,
and now hdd regenerator is rubbish too?

I've tried to debate with the spinrite developers on news.grc.com using
some of the arguments against it from this newsgroup, but it never goes
anywhere, so I gave up:
http://12078.net/grcnews/article.php?id=12230&group=grc.spinrite.dev#
12230
 
J

Justin Goldberg

You can't physically repair a damaged disk surface, it is
in a sealed unit.

You can read it with a scanning tunneling microscope, lol.

So should I use getdataback, then?
 
A

Arno

From following this group I've found that spinrite is absolute rubbish,
and now hdd regenerator is rubbish too?

They claim to do something that is not possible. So, yes.
I've tried to debate with the spinrite developers on news.grc.com using
some of the arguments against it from this newsgroup, but it never goes
anywhere, so I gave up:
http://12078.net/grcnews/article.php?id=12230&group=grc.spinrite.dev#
12230

Their product used to have merit in the old MFM times. Today,
they are just cashing in on the remainder of that reputation.

Arno
 
F

Franc Zabkar

From following this group I've found that spinrite is absolute rubbish,
and now hdd regenerator is rubbish too?

I believe that Steve Gibson makes some bogus claims (eg that magnetic
domains weaken over time), but the basic methodology behind Spinrite
seems logical to me. By that I mean that Spinrite will turn off ECC
and try to read a bad sector up to 2000 times. If at the end it
doesn't achieve an error free read, then it will try to reconstruct
the sector based on the most probable value of each bit.

http://en.wikipedia.org/wiki/Spinrite#Features

OTOH, the author of HDD Regenerator claims that he uses an undisclosed
algorithm which is hardware independent. This would mean that he is
limited to whatever ATA commands are available to him via the ATA
spec, as is Steve Gibson. It seems to me that the easiest "hardware
independent" solution would be to read the bad sector up to 2000 times
and give SMART a chance to reallocate it.

- Franc Zabkar
 
A

Arno

I believe that Steve Gibson makes some bogus claims (eg that magnetic
domains weaken over time), but the basic methodology behind Spinrite
seems logical to me.

It used to be that, in the old MFM times. It does not work for the
modern encodings used in the last decade or so.
By that I mean that Spinrite will turn off ECC and try to read a bad
sector up to 2000 times.

The reading 2000 times you can do manually. The manual ECC is not
in any way better than what the drive can do.
If at the end it doesn't achieve an error
free read, then it will try to reconstruct the sector based on the
most probable value of each bit.

You do not want that for modern drives. It is not quite as inaccurate
as leaving the sector filles with zeros, but comes close. For most
applications it will either not matter (so zeros can be used) or it
will be a complete desaster anyways (comressed data, e.g.)

If zeros are fine, you can use e.g. dd_rescue (free, very small)
under Linux.
OTOH, the author of HDD Regenerator claims that he uses an undisclosed
algorithm which is hardware independent. This would mean that he is
limited to whatever ATA commands are available to him via the ATA
spec, as is Steve Gibson. It seems to me that the easiest "hardware
independent" solution would be to read the bad sector up to 2000 times
and give SMART a chance to reallocate it.

Indeed. The Sstrength of the SpinRite description is that it did
make sense for older HDD technology. It does not anymore today.
One thing is that the on-disk encoduing used to be standardized
in the MFM/RLL days and the ECC was standard as well. This is not
true anymore today, and reading with ECC off does not make any
sense. Also because today HDDs use some partial-response maximum-
likelyhood decoding, which means they do not read 0 and 1 but analog
values. You cannot interpret them without exactly knowing what
modulation has been used and what encoding.

Arno
 
F

Franc Zabkar

The Sstrength of the SpinRite description is that it did
make sense for older HDD technology. It does not anymore today.
One thing is that the on-disk encoduing used to be standardized
in the MFM/RLL days and the ECC was standard as well. This is not
true anymore today, and reading with ECC off does not make any
sense.

I referred to my copy of IBM's Personal Computer AT Technical
Reference Manual. The Fixed Disk Adapter section talks about the Read
Sector command. In those days the Command Register's bit definitions
for this command were as follows:

7 6 5 4 3 2 1 0
---------------
0 0 1 0 0 0 L T

L = 0 for data only, 1 for data plus 4-byte ECC
T = 0 for retries enabled, 1 for retries disabled

This IDE reference talks about the above Read Long commands (22h and
23h):
http://www.repairfaq.org/filipg/LINK/F_IDE-tech.html

However, I don't see a corresponding command in today's ATA
specification. It was present in ATA-3 but seems to have been retired
in ATA-4.

http://www.t10.org/t13/project/d2008r7b-ATA-3.pdf
http://www.t10.org/t13/project/d1153r18-ATA-ATAPI-4.pdf

So you are correct -- today's drives do not appear to be able to
retrieve the ECC data. My apologies.

There are some claims on Steve Gibson's web site which I don't
understand.

How SpinRite RECOVERS Unreadable Data:
http://www.grc.com/srrecovery.htm

Gibson believes that data can be lost during SMART's reallocation
process. Surely such a claim is bogus:

"Hard disk drives 'heal themselves' by replacing defective sectors
with spares. The problem is that the drive does this on its own,
without asking or notifying, and in the process vital data is
too-easily lost."

He then disables SMART to prevent automatic reallocation:

"The FIRST THING SpinRite does when it starts examining and working
with a drive is to completely disable the drive's built-in automatic
sector relocation. This way the drive can't whisk the sector away the
first time it's not easily read, and SpinRite can study the sector to
recover its data as much as necessary."

What does Gibson mean by "whisk away"? If he means "automatically
reallocate", then surely this is the most desirable outcome. Instead
Gibson hammers away at the bad sector until he successfully retrieves
the data, and *then* re-enables SMART so that the drive can reallocate
the bad sector. This seems pointless to me.

If it is true that there is no longer any Read Long command in the ATA
spec, then I find the following statement curious:

"Rather than ignoring the data from a bad read, SpinRite uses its
unique 'hardware level access' (which no other utility has) to read
whatever data the drive was able to get from the bad sector."

Is Gibson claiming to use some manufacturer specific commands to gain
access to the raw uncorrected data (including ECC ?) in much the same
way as the old Read Long command was able to do? Do some manufacturers
still support an undocumented Read Long command, even though the ATA
spec appears to have retired it?

Gibson also claims that ...

"If several thousand sector re-reads all fail to produce a single
perfect reading, SpinRite next employs the database it has been
building from each failed sector reading. By performing a statistical
analysis of this data, SpinRite is frequently able to reconstruct all
of the sector's data, even though no single reading was perfect."

This begs the question, if SpinRite is unable to read the ECC bytes
from the drive, then how is it able to confirm the integrity of the
reconstructed data?

I also notice the following statement in the ATA-7 spec:

"An unrecoverable error encountered during the execution of [the READ
SECTOR(S)] command results in the termination of the command. The
Command Block registers contain the address of the sector where the
first unrecoverable error occurred. The amount of data transferred is
indeterminate."

This suggests that the data from a bad sector may or may not be
transferred. It may be that only an error status bit (UNC =
uncorrectable) is set. (???)

- Franc Zabkar
 
F

Franc Zabkar

There are some claims on Steve Gibson's web site which I don't
understand.

Steve Gibson claims to be able to influence a HD's read AGC (automatic
gain control) circuit.

SpinRite's Defect Detection Magnetodynamics:
http://www.grc.com/srphysics.htm

He says that ..

"SpinRite is actually able to lower the amplification of the drive's
internal read-amplifier, then to cause the drive to encounter a
'minimum amplitude' data signal. If that data signal happened to fall
upon a spot of the drive's recording surface that is in any way 'weak'
then the drive will mis-read the data bit and return an error for the
sector containing the bad spot."

However US patent #6839193, entitled "Method and apparatus for
determining read-to-write head offset of a disk drive", assigned to
Seagate, shows that the data field of each sector is preceded by an
"AGC data field which may be used to set read sensitivity".

The patent states that "when the read/write head is over the AGC data
field the gain of the recovered signal is adjusted to provide a
predetermined constant amplitude signal in order to reduce
demodulation errors."

So it appears to me that the read amp's AGC circuit is "trained"
during the "preamble" to the data field and is therefore not
influenced by the data pattern. Of course I'm assuming that the
technology described in the above patent (dated Jan 4, 2005) is
actually being implemented in current products.

- Franc Zabkar
 
E

Eric Gisin

Just because ATA-4 retired it doesn't mean it is no longer implemented.
The original 4-byte ECC is long gone, but I recall an IBM manual
describing another bit (when set) will read the full ECC (400 bits or so).
 
F

Franc Zabkar

Just because ATA-4 retired it doesn't mean it is no longer implemented.
The original 4-byte ECC is long gone, but I recall an IBM manual
describing another bit (when set) will read the full ECC (400 bits or so).

So that must be what Steve Gibson means by "unique 'hardware level
access' (which no other utility has)".

Thanks for the correction.

- Franc Zabkar
 
A

Arno

Steve Gibson claims to be able to influence a HD's read AGC (automatic
gain control) circuit.
SpinRite's Defect Detection Magnetodynamics:
http://www.grc.com/srphysics.htm
He says that ..
"SpinRite is actually able to lower the amplification of the drive's
internal read-amplifier, then to cause the drive to encounter a
'minimum amplitude' data signal. If that data signal happened to fall
upon a spot of the drive's recording surface that is in any way 'weak'
then the drive will mis-read the data bit and return an error for the
sector containing the bad spot."

If I remember correctly, that claim was bogus to begin with.
What he could do with MFM/RLL is to test with a pattern, that
was more sensitve to surface problems, as it used the weak spots
of the modulation. Pretty much like black magic, so he possibly
dumbed it down. The actuall read amplifier gain is not accessible
and was not accessible in the MFM/RLL times as well.
However US patent #6839193, entitled "Method and apparatus for
determining read-to-write head offset of a disk drive", assigned to
Seagate, shows that the data field of each sector is preceded by an
"AGC data field which may be used to set read sensitivity".
The patent states that "when the read/write head is over the AGC data
field the gain of the recovered signal is adjusted to provide a
predetermined constant amplitude signal in order to reduce
demodulation errors."
So it appears to me that the read amp's AGC circuit is "trained"
during the "preamble" to the data field and is therefore not
influenced by the data pattern. Of course I'm assuming that the
technology described in the above patent (dated Jan 4, 2005) is
actually being implemented in current products.

No idea.

Arno
 
F

Franc Zabkar

If I remember correctly, that claim was bogus to begin with.
What he could do with MFM/RLL is to test with a pattern, that
was more sensitve to surface problems, as it used the weak spots
of the modulation. Pretty much like black magic, so he possibly
dumbed it down. The actuall read amplifier gain is not accessible
and was not accessible in the MFM/RLL times as well.

AIUI, Steve Gibson does not claim to be able to control the read amp
gain directly. AGC relies on a rolling average, so Gibson "trains" the
read amp with strong signals, causing the AGC to reduce the gain, and
then he feeds the amp with weak signals while the gain is still low.

As for whether AGC was used in the early MFM days, I have a circuit
diagram for the 20MB drive that was used in the original IBM PC/AT.
The read amp appears to consist of two-stage differential op-amps with
fixed gains, ie no AGC. The print is hard to read, but the op-amps
look like NE592 video amps which are also specified for use as floppy
disc head amplifiers.

Here is a datasheet:
http://www.datasheetarchive.com/pdf-datasheets/Datasheets-24/DSA-463326.pdf
No idea.

Arno

AIUI, the above patent talks about an AGC data field that is used to
train the servo amp so that it can accurately position the MR read
head. If a write is commanded, then the servo is jogged slightly
off-track to where the write coil is known to be. This may partly
explain why the seek time for writes is slightly greater than for
reads. Accurate positioning is dependent on accurate calibration of
the servo signal. For example, if an on-track read signal, after AGC,
is 10mV, then the write head's offset from the read head could be
where this signal drops to 8mV, say. AIUI these read-write head
offsets are calibrated at the factory and vary from track to track.

In addition to the above AGC data field, it appears that the user data
field has its own preamble of "training" bits which are laid down when
the data are written. In this case these training and sync bits are
used to condition the read amp when reading back the user data.

According to US patent number 6055118, entitled "holding automatic
gain control levels during read error recovery in a disc drive",
assigned to Seagate, the data block begins with a phase locked
oscillator (PLO) field which provides timing and amplitude information
for AGC and clocking. This is following by a training field and sync
field, the latter being used to identify the beginning of the user
data. The patent states that "the AGC first operates in an
'acquisition' mode during which large adjustments in the gain are made
in response to the initial signal levels provided by the preamp to
provide a coarse adjustment of the gain. The AGC then transitions into
a 'fine adjustment' mode, during which the AGC normally continues to
provide small, incremental adjustments to the gain as long as the read
channel is enabled as a particular sector is read".

So at first it appears that SpinRite may be able to influence the AGC
as claimed by Gibson. But then the patent goes on to describe what
happens when a read error is encountered. In this case the drive
re-reads the previous sector on the same track, and determines its
appropriate gain based on its PLO field. It then retries the bad
sector by turning off AGC and applying the *constant* gain derived
from the previous good sector. So it seems that any error that is a
consequence of an attempt to confuse AGC will be automatically
corrected by the drive on its second try, by *disabling* AGC.

BTW, the second patent applies to drives using PRML signal processing.

See http://www.google.com/patents?as_pnum=6055118

- Franc Zabkar
 
A

Arno

Franc Zabkar said:
On 31 Mar 2009 13:12:10 GMT, Arno <[email protected]> put finger to
keyboard and composed:
AIUI, Steve Gibson does not claim to be able to control the read amp
gain directly. AGC relies on a rolling average, so Gibson "trains" the
read amp with strong signals, causing the AGC to reduce the gain, and
then he feeds the amp with weak signals while the gain is still low.

If I remember correctly, it is not an AGC, but rather the ganetizaton
strenght that can be influenced locally by writing the right data with
MFM. Does not work with todays modulation, though.
As for whether AGC was used in the early MFM days, I have a circuit
diagram for the 20MB drive that was used in the original IBM PC/AT.
The read amp appears to consist of two-stage differential op-amps with
fixed gains, ie no AGC. The print is hard to read, but the op-amps
look like NE592 video amps which are also specified for use as floppy
disc head amplifiers.

No surprise. I don't think you will have AGC in a HDD. Signals read
druing seeks would play havoc with it, IMO.

Well, no AGC on these. Just fixed gain.
AIUI, the above patent talks about an AGC data field that is used to
train the servo amp so that it can accurately position the MR read
head. If a write is commanded, then the servo is jogged slightly
off-track to where the write coil is known to be. This may partly
explain why the seek time for writes is slightly greater than for
reads. Accurate positioning is dependent on accurate calibration of
the servo signal. For example, if an on-track read signal, after AGC,
is 10mV, then the write head's offset from the read head could be
where this signal drops to 8mV, say. AIUI these read-write head
offsets are calibrated at the factory and vary from track to track.
In addition to the above AGC data field, it appears that the user data
field has its own preamble of "training" bits which are laid down when
the data are written. In this case these training and sync bits are
used to condition the read amp when reading back the user data.
According to US patent number 6055118, entitled "holding automatic
gain control levels during read error recovery in a disc drive",
assigned to Seagate, the data block begins with a phase locked
oscillator (PLO) field which provides timing and amplitude information
for AGC and clocking. This is following by a training field and sync
field, the latter being used to identify the beginning of the user
data. The patent states that "the AGC first operates in an
'acquisition' mode during which large adjustments in the gain are made
in response to the initial signal levels provided by the preamp to
provide a coarse adjustment of the gain. The AGC then transitions into
a 'fine adjustment' mode, during which the AGC normally continues to
provide small, incremental adjustments to the gain as long as the read
channel is enabled as a particular sector is read".
So at first it appears that SpinRite may be able to influence the AGC
as claimed by Gibson. But then the patent goes on to describe what
happens when a read error is encountered. In this case the drive
re-reads the previous sector on the same track, and determines its
appropriate gain based on its PLO field. It then retries the bad
sector by turning off AGC and applying the *constant* gain derived
from the previous good sector. So it seems that any error that is a
consequence of an attempt to confuse AGC will be automatically
corrected by the drive on its second try, by *disabling* AGC.
BTW, the second patent applies to drives using PRML signal processing.

Well, doing that in firmware, with exact knowledge of the heads and
surfaces used, seems possible. SoinRite doing it seems to
be entirely marketing.

Arno
 
B

Barry OGrady

From following this group I've found that spinrite is absolute rubbish,
and now hdd regenerator is rubbish too?

I've tried to debate with the spinrite developers on news.grc.com using
some of the arguments against it from this newsgroup, but it never goes
anywhere, so I gave up:

I find that interesting because I have a 13G IDE hard disk that gave read/write
errors only on the top 3Gs. Scandisk showed seemingly random bad sectors
but Spinwrite did not find any problems.

Back in the AT days I had a full height 20MB MFM hard drive that would
show several bad sectors which Spinwrite would fix until they showed
up again maybe 3 months later.

Barry
=====
Home page
http://members.iinet.net.au/~barry.og
 
R

Rod Speed

Barry OGrady wrote
I find that interesting because I have a 13G IDE hard disk that gave
read/write errors only on the top 3Gs. Scandisk showed seemingly
random bad sectors but Spinwrite did not find any problems.
Back in the AT days I had a full height 20MB MFM hard drive
that would show several bad sectors which Spinwrite would
fix until they showed up again maybe 3 months later.

Thats the well known sector drift problem seen with stepper motor head actuators.

The problem is that the position of the head varys with the temperature of the
drive so the sectors end up being scattered around the average position of the
head on that track. A reformat will fix that problem too because it write all the
sectors again. No longer a problem with drives that dont use stepper motors
to position the heads.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top