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

时间:2014-05-07 11:48:59   收藏:0   阅读:383

【我所认知的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设备了。


[右键点击图片,在新窗口打开是可以放大看的]

bubuko.com,布布扣

bubuko.com,布布扣

bubuko.com,布布扣

bubuko.com,布布扣

bubuko.com,布布扣

bubuko.com,布布扣

bubuko.com,布布扣

bubuko.com,布布扣

bubuko.com,布布扣

【我所认知的BIOS】—> uEFI AHCI Driver(6) AtaAtapiPassThruSupported的局部变量们,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!