Microsoft ASL 編譯程式
Microsoft ACPI 來源語言 (ASL) 編譯程式 5.0 版支援進階設定和 Power Interface 規格 5.0 (ACPI 5.0 規格) 中的功能。 ASL 編譯程式會與 Windows 驅動程式套件 (WDK) 一起散發。
ASL 編譯程式 (asl.exe) 位於已安裝 WDK 的 Tools\arm\ACPIVerify、Tools\arm64\ACPIVerify、Tools\x86\ACPIVerify 和 Tools\x64\ACPIVerify 目錄,例如 C:\Program Files (x86)\Windows Kits\10\Tools\<build #>\<build architecture>\ACPIVerify
。
您必須先安裝 SDK,後面接著 WDK。 這兩個套件的組建編號必須相符。
命令列選項
ASL 編譯程式支援數個命令行選項。 若要列出版本資訊和可用的命令行選項,請在命令提示字元視窗中執行命令 “asl /?
”。
ASL 編譯程式使用方式
ASL 編譯程序支援下列命令行選項:
asl /?
asl [/nologo] /d <BinFile>
asl [/nologo] /u [/Fa=<ASMFile>] [/Fl=<LSTFile>] [/Fn=<NSDFile>] <AMLFile>
asl [/nologo] /tab=<TabSig> [/c] [/Fa=<ASMfile>] [/Fl=<LSTFile>] [/Fn=<NSDFile>]
asl [/nologo] [/Fo=<AMLFile>] [/Fa=<ASMFile>] [/Fl=<LSTFile>] [/Fn=<NSDFile>] <ASLFile>
選項 | 描述 |
---|---|
? | 列印此說明訊息。 |
nologo | 隱藏標誌橫幅。 |
Fo=<AMLFile> | 覆寫 DefinitionBlock 中的 AML 檔名。 |
Fa=<ASMFile> | 產生 。名稱 <為 ASMFile> 的 ASM 檔案。 |
Fn=<NSDFile> | 產生名稱 <為 NSDFile> 的 NameSpace 傾印檔案。 |
d | 以文字形式傾印二進位檔。 |
u | 將 AML 檔案解除組譯成 。ASL 檔案 (預設值) 或 。LST 檔案。 |
tab=<TabSig> | 將 ASL 資料表解除組譯成 。ASL 檔案 (預設值) 或 。LST 檔案。 將非 ASL 數據表傾印至.TXT檔案。 如果 <TabSig> 為 『*』,則會將所有數據表傾印到ACPI.TXT。 <TabSig> 也可以是數據表的實體位址。 |
c | 從數據表建立二進位檔。 |
使用Microsoft ASL 編譯程式的 ACPI-table-load 功能
在系統開發期間,有一種方法可以模擬各種ACPI BIOS 建構,並在開發系統上進行測試,這非常有用。 Windows 作業系統允許從 Windows 登錄載入特定 ACPI 資料表,而不是從電腦的 BIOS ROM 載入。 使用這項功能需要系統管理員許可權,而且需要在系統上啟用測試簽署。 在支援 UEFI 安全開機的系統中,無法啟用測試簽署,而且除非停用 UEFI 安全開機或系統上安裝 Windows 偵錯原則,否則無法使用編譯程式的數據表載入功能。
若要使用數據表載入功能,要多載的ACPI數據表必須符合下列需求:
要多載的數據表必須已存在於系統的BIOS ROM中。 例如,DSDT 可以多載;不過,如果計算機沒有 SSDT,您無法強制從此登錄覆寫機制載入 SSDT。
數據表必須包含 Windows ACPI 解釋器通常取用的 AML 程式代碼(Acpi.sys驅動程式)。
載入版本號碼最高的數據表。 載入登錄以進行測試的數據表的版本號碼必須高於 BIOS ROM 中的相同數據表。
要載入的數據表必須採用編譯的 (AML) 格式,並在正確的位置載入登錄,並指定正確的參數。 所述的機制是設計來處理載入數據表和設定登錄的所有層面。
警告
本主題所述的程式可能會讓您的 Windows 系統處於無法開機的狀態。 在嘗試此處所述的程式之前,請確定您能夠存取另一個具有NTFS檔案系統支援的作業系統(也就是同一部電腦上的「安全組建」。 此程式僅供系統開發人員和測試人員使用,不應用於開發或生產用途至關重要的任何計算機上。
ACPI-table-load usage
若要將 ACPI 數據表載入登錄以供測試之用,會叫用 ASL 編譯程式,如下所示:
asl.exe /loadtable [-v] [-d] <AMLFile>
其中 AMLFile 是編譯的 AML 檔名,其中包含您想要載入登錄的數據表。
選項 | 描述 |
---|---|
-v | 詳細資訊模式。 開啟公用程式的額外偵錯輸出。 |
-d | 刪除。 從登錄中移除先前載入的 AML 檔案,並刪除所有相關聯的登錄機碼。 |