0%

SATA相关

硬盘IDE和AHCI模式的区别

通俗易懂的说法就是,IDE就是ATA模式,是并口传输模式,04年前普及的技术,理论上最大133Mb每秒。
AHCI就是SATA模式,串口传输模式,新技术,传输速度快,理论上最大300Mb每秒。

IdeController驱动

IdeController.c中

SataController驱动

MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c中

AtaAtapiPassThru驱动

MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c中

AtaBus驱动

MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBus.c中

ScsiBus 驱动

MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.c

ScsiDisk 驱动

MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.c

DiskIo 驱动

MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIo.c

Partition 驱动

MdeModulePkg/Universal/Disk/PartitionDxe/Partition.c

SIMPLE_FILE驱动

MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemEntryPoint.c

以上协议的关系如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
+-----------------------------------------+
| 文件系统驱动 (EFI_SIMPLE_FILE_SYSTEM) |
+-----------------------------------------+
| Partition 驱动 |
+-----------------------------------------+
| DiskIo 驱动 |
+-----------------------------------------+
| **块设备驱动 (EFI_BLOCK_IO_PROTOCOL)** | <-- AtaBus 驱动/ScsiBus 驱动/ScsiDisk 驱动
+-----------------------------------------+
| ATA/ATAPI PassThru 驱动 |
| (EFI_ATA_PASS_THRU_PROTOCOL) |
+-----------------------------------------+
| IDE Controller 或 SATA Controller 驱动 |
| (EFI_IDE/SATA/AHCI_CONTROLLER_INIT) |
+-----------------------------------------+
| 硬件 (IDE 控制器或 SATA 控制器) |
+-----------------------------------------+

参考资料
1.https://blog.csdn.net/weixin_38233274/article/details/79030426