我正在做硬盘分析,想知道有没有办法在windows下直接控制ATA硬盘。简而言之,我想做一个像数据包嗅探器这样的东西,但是对于发送到/从硬盘驱动器的 ATA 命令。
之后,我希望能够直接在驱动器上编写 ATA 命令。如果这在 Windows 下是不可能的,那么 Linux 是第二选择。
第三个选择是制作一个在 PC 控制下完成所有这些工作的 FPGA。
关于这是否可以通过标准 API 实现的任何想法?
我正在做硬盘分析,想知道有没有办法在windows下直接控制ATA硬盘。简而言之,我想做一个像数据包嗅探器这样的东西,但是对于发送到/从硬盘驱动器的 ATA 命令。
之后,我希望能够直接在驱动器上编写 ATA 命令。如果这在 Windows 下是不可能的,那么 Linux 是第二选择。
第三个选择是制作一个在 PC 控制下完成所有这些工作的 FPGA。
关于这是否可以通过标准 API 实现的任何想法?
在 Windows 上,您可以使用IOCTL_ATA_PASS_THROUGH_DIRECT ioctl 将任意 ATA 命令传递给驱动器。
如果您不打算自己编写,Bustrace ( http://www.bustrace.com ) 被认为是执行此操作的最佳工具,它非常强大。