Dav*_*lai 3 hardware driver pci
我读过一些关于PCI和IDE/ATA的文章,现在有点糊涂了。PCI 类 0x01(大容量存储控制器)包含一个 IDE (0x01) 和一个 ATA (0x05) 子类。但是,从https://superuser.com/questions/341452/whats-the-difference-between-ata-pata-and-ide:
该标准被命名为 IBM PC/AT 的“AT 附件”(这意味着高级技术,但 ATA 不是高级技术附件)。但 IDE 和 ATA 是同义词。ATA 是一个更好的术语。
那么,如果它们相同,为什么它们有 2 个不同的子类?另外,在这篇文章中提到
两种类型的驱动器(SATA 和 PATA)都是 IDE 设备。
...但是当我在 oracle VM 中配置虚拟机时,有不同的:IDE、SATA 等...控制器。
此外,这篇文章:https : //sg.answers.yahoo.com/question/index?qid=20090723091840AA40xd6 说明 IDE 和 PCI 用于不同的连接,但我认为 ATA“控制器”已连接到 PCI公共汽车,这就是为什么我必须在那里检查它们。
它们是不同的...... PCI用于声卡视频卡等...... IDE用于CD ROMS硬盘驱动器软盘驱动器等......
在 VirtualBox 中,当我连接 IDE、软盘控制器、SCSI 或任何存储设备时,它会出现在 PCI 总线上,就像声卡和网卡一样。
我读的文章越多,我就越困惑。对它们进行一些清晰的描述会很好。
术语“IDE”、“ATA”和“PATA”可以互换使用。一般都是指传统的40/44pin带状线硬盘接口。请注意,PCI 或 PCI Express IDE/ATA/PATA 控制器可以在以下两种模式之一下运行:
传统模式 - 从原始 PC 模拟传统 ISA 总线 IDE 控制器。使用 IRQ 14 和 15。IRQ 不能像普通 PCI 设备一样共享/重新映射。仅支持有限数量的 IDE 通道(主要/次要)。自 PC 诞生以来,向后兼容所有操作系统。
本机模式 - 就像传统的 PCI 设备一样。IRQ 编号不是固定的,可以与其他 PCI 设备共享。支持系统中任意数量的控制器。需要 Windows 2000 或更高版本。
随着 SATA 的引入,我们又多了一层兼容性。SATA 控制器通常可以配置为以下两种模式之一:
IDE 模式 - 像传统的 IDE/ATA/PATA 控制器一样工作。允许与旧操作系统(Windows XP 及更早版本)向后兼容。请注意,在 IDE 模式下,您仍然可以选择 Legacy 与 Native 模式,如上所列。
AHCI 模式 - SATA 控制器的现代编程接口。Windows Vista 及更高版本本机支持。
因此,SATA 控制器可以是:
为了让事情变得混乱,一些 BIOS 将 IDE 模式称为“Legacy”,而将 AHCI 模式称为“Native”。此外,并非上面列出的所有模式都一定适用于您的芯片组/BIOS。较旧的芯片组可能不支持 AHCI。一些较新的芯片组不再支持旧模式。此外,在具有多个 SATA 端口的主板上,可能会限制哪些端口可以处于哪种模式。
清如泥?伟大的!现在,这如何映射到 PCI 类代码?在 PCI 基类 01h(大容量存储)下,PCI 规范中定义了几个子类。有三个与您的问题相关。
子类 01h = IDE 控制器
大多数 IDE/ATA/PATA 控制器将使用这个子类
IDE 模式下的 SATA 控制器也是如此
Both Legacy and Native Mode IDE controller will use this subclass. You query other bits in the register map to determine which mode you are in.
Sub-class 05h = ATA Controller with ADMA
This is a special case IDE/ATA controller with special DMA capabilities.
I have never seen an Intel or AMD chipset that uses this sub-class.
Sub-class 06h = SATA Controller
Typically this means a SATA controller in AHCI mode.
However, some early SATA controllers had a proprietary interface.
The Programming Interface register will tell you what mode it is in.
As for Oracle VM, it probably gives you a choice of which mode the "virtual" HDD is presented to the guest Operating System. I do not have a copy in front of me though. Just glancing at the documentation, it looks like there are choices for IDE (not clear if Native/Legacy/AHCI) or SCSI.
| 归档时间: |
|
| 查看次数: |
1937 次 |
| 最近记录: |