HDAT2 ,HDDSCAN,MHDD,Victoria 這是四大免費磁碟軟體. 不過作者群幾乎都在Data Recovery產業工作..
Linux 下用smartctl -l scterc,0,0 /dev/sda - disable read and write ERC
就可以關掉
以下出自於 T10 SCT 指令集
http://www.t10.org/t13/docs2005/DT1701r5-SCT.pdf
這次我就先不翻了.看有沒有高人翻的好.跟表現實作可加入OSSLab VIP 名額.
Error Recovery Control command
The Error Recovery Control command can be used to set time limits for read and write error recovery. For non-
queued commands, these timers apply to command completion at the host interface. For queued commands
where in order data delivery is enabled, these timers begin counting when the device begins to execute the
command, not when the command is sent to the device. These timers do not apply to streaming commands, or to
queued commands when out-of-order data delivery is enabled. Time limits for error recovery may be desirable in
a data redundant RAID environment where it is more desirable to have the drive report a data error rather than risk having it being kicked off of the RAID.
The Read Command Timer sets an upper limit to the amount of time the drive’s disk task will be operating on a
command. This is typically the amount of time the drive will be operating on a read command in total but in some
cases a read command will require more than one disk operation. Minimum value for this command is one.
Setting this value to zero will disable Read Command time-out, allowing the drive to perform all available error
recovery procedures without time limit.
If the Read Command Timer expires while the drive is performing error recovery, the drive will stop processing
the command and report an un-correctable ECC error for the LBA that was causing error recovery to be invoked.
Note that the LBA might actually be recoverable given more time for error recovery. At this point the host could reconstruct the data for the failing LBA from the other disk drives, and then issue a write command to the target
LBA, allowing the drive to handle the suspect LBA as it best sees fit.
The Write Command Timer sets the upper limit for the amount of time the drive spends recovering from an error while performing a write. The minimum value for this command is one.
Setting this value to zero will disable
Write Command time-out, allowing the drive to perform all available error recovery procedures without a time limit.
The Write Command Timer has the effect of controlling how aggressively the drive will reallocate write data when
encountering defects. A long Write Command Timer allows the drive to use all of its available error recovery T13/1701DT Revision 5
procedures for dealing with write errors. A short Write Command Timer will force the drive to reallocate sectors that are having difficulty being written sooner rather than later. The reallocating of the data needs to occur in order to prevent the write command from exceeding its allotted time. If the timer expires during a retry, the reallocation operation is completed. If the timer is about to expire, it is the responsibility of the drive to attempt to reallocate the data before the timer expires. If the drive is unable to complete data reallocation before the timer
expires then the devices fails the command when the timer expires. When Write Cache is enabled the operation of the timer is vendor specific.
The typical usage for an ATA or SATA drive is with Write Cache enabled. With write cache enabled, the drive cannot report an error on a write command. This is because the write command that is actually experiencing
difficulty was probably finished from the host’s perspective many commands ago. This leaves no recourse for the drive other than to reallocate any sectors that are having difficulty being written.
Read and Write command timer values are set to default values at power-on but may be altered by a SCT command at any time. These settings are unaffected by software (soft) or hardware (pin 1 or COMRESET) reset.
WD 後期用的是非標準SCT 指令設定 可能偷寫在某塊Module (軔體區) 我有美國時間的話 會把smart 翻開來查查...或是把SMART Module 放上來給大家看看是那數值.