Professional Documents
Culture Documents
Readme
Readme
If H2benchw finds errors while verifying the data it means that the
media has not returned all data exactly as it was written. It is
likely that the media is defective, but there are other possible
causes for data corruption. In case of error you should therefore
repeat the test and
* Format the media immediately before testing
* Don't use USB extension cords
* If testing USB or FireWire devices, try a different port (sometimes
USB ports at the back of the PC are better than those at the front)
* For exteral drives try another cable if possible
Error messages
-------------When the verifying process detects any errors it outputs some
statistics differentiating the various error types:
* sectors that have been overwritten by others due to addressing
errors (see above)
* sectors that have been altered only slightly (less than 8 differing
bits per sector)
* completely corrupted sectors.
In the case of overwritten sectors H2testw tries to find out how much
real memory exists in the overwritten area and outputs that amount as
"aliased memory" (no guarantee here).
Finally it outputs the offset of the first error with regard to the
total amount of test data along with the expected and found value at
that offset.
Hint: You can copy&paste the error message, for instance to send it in
an email.
Typical errors
-------------The test data of H2testw is made up so as to be able to discern
certain typical errors. There are three types:
* Addressing errors: When writing a sector its contents are not
written to the correct address but overwrite another sector. We have
seen this error on certain manipulated USB sticks. It also happens
if you use a hard drive larger than 128 GByte on a machine whose
BIOS or OS doesn't know about 48-bit addressing. In this case all
addresses are taken modulo 128 GByte. When crossing the 128 GByte
boundary you overwrite data at the beginning of the drive.
* Data is not saved at all. We have encountered this with defective
USB sticks. Instead of the data written to it a sector returns only
ones or zeroes when reading it. This is typical when accessing
nonexisting memory.
* Only few bits of data are changed. That might happen if the
connection between the PC and the storage media is faulty.
Technical details about the test data
------------------------------------H2testw writes data in chunks of 1 megabyte. So even if you choose to
completely fill the media you will end up with up to 1 megabyte of
free space. Although technically not correct H2testw uses the
Windows convention that 1 MByte equals 1024 KByte or 1,048,576 Byte.
In order to avoid problems with the 4 GByte limitation of the FAT file
system, H2testw begins a new data file after each gigabyte (1024
MByte).
Inside a data file each 512-byte sector begins with a 64-bit word (8
byte) containing the offset with regard to the whole data set. It is
stored in little-endian format, least significant byte first.
So the file 1.h2w begins with
00 00 00 00 00 00 00 00,
the next sector with
00 02 00 00 00 00 00 00,
the next with
00 04 00 00 00 00 00 00
and so on. The file 2.h2w begins with
00 00 00 40 00 00 00 00
(offset 1 GByte = 0x40000000).
The rest of each sector is filled with a pseudo random number
sequence using the offset word as a seed.