为什么 ATA 安全擦除与 PATA 驱动器同时而不是并行发生?

为什么 ATA 安全擦除与 PATA 驱动器同时而不是并行发生?

发出时通过 hdparm 的 ATA 安全擦除命令对于多个 SATA(非 SSD)驱动器,它是并行发生的。

然而,当对 PATA 驱动器发出相同的命令时,它会连续发生。例如,在第一个进程完成之前,第二个 PATA 驱动器不会开始其进程。

ATA 安全擦除命令是否受到限制单PATA通道

如果是,为什么会这样,因为它是驱动控制器的内部例程?

独立IDE通道可以克服吗?

请注意,在发出 dd 命令来擦除驱动器时,它是并行发生的。

PATA 驱动器历来用于现已退役的老化和遗留设备。要求是安全擦除驱动器,因为它们包含个人身份信息等敏感数据。

答案1

您可能会看到 PATA 的局限性:两个驱动器共享同一总线(通道),并且一次只有一个驱动器可以主动使用它。主机忙于处理命令并等待结果算作正在使用它。我见过一些驱动器在命令完成后立即返回hdparm --security-erase并“离线”处理命令,其他驱动器hdparm直到命令完成后才返回。我怀疑以前的驱动器将允许主设备和从设备同时执行此操作。

请注意,在 PATA 使用多年的过程中,这一点确实有所改善;大多数改进都集中在重要的地方:读取和写入命令。 dd 可以同时执行两个驱动器,即使它们很古老,因为它不是一个写入命令,而是很多很多写入命令。 (在真正古老的驱动器上,它实际上是轮流的 - 将一些扇区写入一个驱动器,将一些扇区写入另一个驱动器;较新的模式允许驱动器接收写入命令,缓冲它,并“离线”处理它以释放总线,这样两个驱动器就可以同时写入)。

(顺便说一句:这也是为什么当您在 RAID 阵列中使用 PATA 驱动器时,两个镜像都需要位于不同的总线上。主设备或从设备发生故障通常会导致总线损坏。)

如果您有多个 PATA 通道(或总线,或无论您如何称呼它们),每个通道都应该能够同时处理执行安全擦除的驱动器。我已经成功地使用 USB PATA 接口来调用安全擦除(还有 dd,我个人都这样做);当然,添加更多 USB 设备既简单又便宜。至少对于安全擦除而言,它不占用 USB 带宽。

当然,SATA 是点对点的,不存在多个驱动器的共享总线。所以这个问题不存在。

相关内容