二、ACPI是Hewlett-Packard, Intel, Microsoft, Phoenix, 和Toshiba共同制定的一個開放的行業規範。是The Advanced Configuration and Power Interface的縮寫,也就是“電源管理模式和配置管理的介面規範”。從名字可以看出主要是“電源管理”和“配置管理”。
它主要涵蓋的功能包括:
System power management(系統電源管理) Device power management(裝置電源管理) Processor power management(處理器電源管理) Device and processor performance management(裝置及處理器效能管理) Configuration / Plug and Play(配置/即插即用) System Events(系統事件) Battery management(電池管理) Thermal management(溫度管理) Embedded Controller(嵌入式控制器)
黑蘋果由於硬體相容性問題,多使用修改DSDT的方法來解決。例如顯示卡,音效卡驅動。那什麼是DSDT呢,我們先需要了解一下它。
什麼是DSDT呢,它是ACPI其中一個表。什麼是ACPI呢,它是BIOS的一個高階功能模組。下面咱稍微詳細的從最大的開始說:
一、首先,BIOS(略)
二、ACPI是Hewlett-Packard, Intel, Microsoft, Phoenix, 和Toshiba共同制定的一個開放的行業規範。是The Advanced Configuration and Power Interface的縮寫,也就是“電源管理模式和配置管理的介面規範”。從名字可以看出主要是“電源管理”和“配置管理”。
它主要涵蓋的功能包括:
System power management(系統電源管理) Device power management(裝置電源管理) Processor power management(處理器電源管理) Device and processor performance management(裝置及處理器效能管理) Configuration / Plug and Play(配置/即插即用) System Events(系統事件) Battery management(電池管理) Thermal management(溫度管理) Embedded Controller(嵌入式控制器)
SMBus Controller(SMBus控制器)
ACPI越來越重要在計算機應用平臺。
更多詳細描述可以訪問Intel technology下載PDF描述文件。
ACPI由很多表組成,包括:RSDP,SDTH,RSDT,FADT,FACS,DSDT,SSDT,MADT,SBST,XSDT,ECDT,SLIT,SRAT。(略寫了,不用太詳細介紹)其中DSDT就是它的一個重要的描述表。
三、最後說到主題^_^。DSDT,它是The Differentiated System Description Table的簡寫。字面上就可以知道它是一個描述系統不同資訊的表。包含了所有除基本系統以外所有不同裝置的資訊,也就是每臺計算機裝置的基本系統是相同的,而不相同的裝置用DSDT來描述。
DSDT表程式碼為ACPI Machine Language (AML)。
Mac OS X不完整支援ACPI規範,僅支援它的子集DSDT。使用者透過修改DSDT可以得到更好的硬體支援。
最簡單的理解就是dsdt是描述硬體的。mac的驅動是被動驅動,需要讓系統知道存在這個硬體且知道硬體位置。修改dsdt的主要目的就是讓mac系統識別存在這個硬體並告訴mac系統你的硬體位置,以便讓mac系統內建的驅動來驅動硬體工作,如此而已,呵呵