DSDT的製作

來源:互聯網
上載者:User

進入製作DSDT之前我們總該要知道DSDT到底是什麼東西吧,所以首先講一下DSDT的概念。這個要從ACPI說起了,ACPI是 Intel(i386,x86_64,IA64)平台的標準韌體規範,絕大部分OS需要從BIOS得到的資訊都可以從ACPI得到,並且現在的趨勢是未來 的任何新的特性相關的資訊都只能從ACPI得到。ACPI的資訊包括:配置資訊、ACPI相關裝置、底層硬體、電源管理、 裝置熱插拔,ACPI主要是由很多表(Table)組成,而DSDT(Differentiated System Description Table)是其中一個最主要的ACPI表之一。具體的我也不太清楚,反正就是用來描述硬體就是了(><)

 

DSDT包含了很多aml代碼,大多數BIOS是針對Windows開發的,而Windows自己也不完全遵循ACPI規範。因為BIOS的 Bug,這些代碼本身可能有錯,導致其他的系統如Linux、Mac OS出錯,所以我們要手動修複這些Bug使之相容Mac系統。DSDT在BIOS裡是以編譯後的aml檔案存在,需要把它解出來,反編譯成aml代碼形式 (dsl檔案,文字檔),代碼修改完畢再重新編譯,替換掉BIOS裡原來的DSDT表(現在提取DSDT已不需要BIOS檔案,下面會介紹到 )。不過PC-EFI、Chameleon等的出現,使得我們不再需要冒險刷BIOS,只要把製作好的DSDT.aml檔案放在Mac分區的根目錄或者/Extra檔案夾裡,啟動的時候就會自動使用這個DSDT.aml,從而達到修複ACPI系統Bug的作用(BootThink是放在/Darwin下面 )。

 

首先聲明,DSDT不能達到驅動硬體的目的。前面已經提到過了,DSDT只是用來識別硬體的。如果系統裡面沒有內建你硬體的驅動,或者沒有類似的驅動,製作DSDT也只會是徒勞,所以只能通過安裝第三方的kext來驅動了。

網上介紹製作DSDT的方法很多,有在Windows下製作的,也有在Mac下製作的,我就是在Mac下製作的,使用的軟體是DSDTSE,非常的方便。先說一下在Windows下的方法吧。

在Windows下製作DSDT,我們使用到的軟體有Everest和ACPI Patcher。其中Everest用來提取系統的DSDT,ACPI Patcher用來產生DSDT.aml。另外,ACPI Patcher內建一些修複DSDT的選項比如驅動顯卡、音效卡、網卡,如果裡面沒有你的型號的話還是不要使用了,我還是推薦手動修改。基本步驟如下:

 

開啟Everest,在Everest底部狀態列右鍵快顯功能表,點擊ACPI Tool。

點擊Save DSDT,產生的是尾碼為bin的檔案,這個就是一個類似於未打補丁的DSDT.aml的檔案,我們就是利用這個檔案製作DSDT。

接下來就要使用使用ACPI Patcher對上面產生的bin檔案打補丁並產生aml檔案了。請在右邊選擇正確的主板產商,如果是Phoenix則不需要改變,使用預設的Award即可。

選擇DSDT Patch這個菜單,指定源檔案為上述的bin檔案,再指定一個輸出路徑,點擊Patch AML即可。左下角的提示框在編譯的時候會有資訊產生,一定不能產生errors;warnings倒無所謂,除非你追求完美。

如果產生了錯誤,要先使用“D/C DSDT”功能表項目把bin檔案轉換成dsl檔案,然後用編輯工具進行編輯。編輯好之後,仍然使用D/C DSDT功能表項目將該dsl檔案打補丁並編譯為aml檔案。如果你選擇了右邊的幾個選項,編譯成aml檔案的時候一定要選擇“Patch before compile”。

**************************

軟體名稱:APCI Patcher 軟體版本:0.2 Beta 5 下載地址:http://u.115.com/file/f9fc49f849

在Mac下使用的是DSDTSE,使用和Windows差不多。不過使用DSDTSE可以直接開啟DSDT編輯視窗,相對方便很多。而且還提供了很 多warnings和errors的解決方案,具體我也就不介紹了。下次再介紹一下一般的warnings和errors的解決方案吧,感覺挺有用處的。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.