我所认知的BIOS—> uEFI AHCI Driver AtaAtapiPassThruSupported的局部变量们

Posted cynchanpin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我所认知的BIOS—> uEFI AHCI Driver AtaAtapiPassThruSupported的局部变量们相关的知识,希望对你有一定的参考价值。

【我所认知的Bios】—> uEFI AHCI Driver(6) — AtaAtapiPassThruSupported的局部变量们

LightSeed

5/7/2014


前面5个篇文章把EFI_DRIVER_BINDING_PROTOCOL这个protocol的一个实例(instance)AHCI driver的安装做了一个比較具体的介绍。事实上这个driver到眼下为止仅仅干了一件事情,那就是把这个protocol安装到相应的ImageHandle上去。对于这个driver在BDS的怎么执行,原理上讲就是先调用supported()然后再调用start(),最后执行stop()来卸载driver。

近期听了不少同事说去泰国旅游多么多么爽。后来了解了一下确实是不错的选择。恰好还欠着老婆一个honey moon,于是这两周花了不少时间来研究攻略。写了一份算是架构吧。正如前面这几篇文章一样,事实上都仅仅是一个架构,细节上还须要进一步做研究和探讨。

一说就说了那么多架构上的东西。关于EFI_DRIVER_BINDING_PROTOCOL让我们来继续做更深入的探讨,把它研究透。针对于AHCI driver的话,就从它的Supported()開始说起。

在uEFI的spec里面,有一个叫做EFI_ATA_PASS_THRU_PROTOCOL的protocol。

它事实上是能够不用存在的,关键是看BIOS是否想要支持这个功能。

事实上它这个protocol是对IDE和AHCI等不同SATA controller模式封装。有了这个protocol,那么就能够固定地用这个protocol来訪问不同模式下的SATA controller。并通过controller訪问挂在其以下的SATA设备了。


[右键点击图片。在新窗体打开是能够放大看的]

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

以上是关于我所认知的BIOS—> uEFI AHCI Driver AtaAtapiPassThruSupported的局部变量们的主要内容,如果未能解决你的问题,请参考以下文章

批处理判断是BIOS还是UEFI启动还是WINPE

UEFI---关于BIOS,EIST和PState&CState和CPU主频变化得关系

三支火把--- 关于BIOS&UEFI查阅资料网站总结

如何使SCCM同时支持BIOS PXE Boot 和 UEFI PXE Boot

[转帖]UEFI和BIOS

Bios启动模式:Legacy/UEFI