2014年5月7日 星期三

UEFI driver概論

    UEFI的driver有幾種不同的種類,分別用來完成不同的任務。就好像汽車有分轎車、跑車、休旅車、貨車等...統稱為汽車,但其作用是大大的不同,就好像在路上時我們看到一台法拉利的時候也不會叫他為得利卡一樣。
    從UEFI driver writer's guide的文件中,我們可以看到UEFI image可分為兩大類分別為"Drivers""Application",簡單說在系統中對晶片做一些初始化的動作,或者是針對Platform做一些特殊客製化動作的就是driver,而負責進入像是windows或是shell的就是application。

如果Driver的存在時間來分類,分別為如下:
1. Boot service driver:
     在POST階段中exit boot service前都可使用的driver,但一exit boot service呼叫後,這些driver就不會存在memory中了,如果後面的driver還有人使用boot service的driver的話就會出現錯誤...
2. Runtime driver:
     基本上這種driver會一直存在memory中,不只在POST階段中在OS下也可使用。