在发送ATA命令期间,我发现了几个分类。例如,第一个 - 我们可以将命令分为数据输入,数据输出和非数据命令。另一种分类可以是48位命令和28位命令。第一个用于磁盘,大于120Gb。
问题是:我是否需要设置一些磁盘将知道它是否获得48位命令的值?例如,如果我通过控制器通过SATL或ATA PASS THROUGH命令发送带有ATA的SCSI命令。
答案 0 :(得分:0)
在研究期间,发现每个控制器都有自己的特性,具体取决于驱动程序。这就是为什么实施ATA PASS THROUGH命令是如此困难的工作。
通过阅读Linux驱动程序并检查使用ioctl发送的结构,可以确定它是28位还是48位命令。
此外,检查软件的新功能也非常重要,因为2006年在ATA-6标准中引入了48位逻辑块寻址(LBA)。现在最有可能所有控制器都支持48位命令集,但你仍然应该检查控制器是否支持它。
因此,这个问题的答案很大程度上取决于使用控制器。