當前位置:首頁 » 手機軟體 » 手機編譯aml軟體
擴展閱讀
戰地2042網路連接失敗 2024-12-30 01:47:11

手機編譯aml軟體

發布時間: 2023-04-09 21:25:25

Ⅰ iDSDT編譯aml時錯誤,求助大神修復

IDSDT的編譯器太老了,建議換成最薯困輪新的編譯器編譯,然後手工加入代碼,IDSDT的作用僅限於參考價值。英特爾已經發布了支數信持ACPI規范5.0的IASL編譯尺跡器。
具體參考英特爾對新版本編譯器的改進說明PDF文檔,英特爾官網有介紹。

怎麼編譯DSL文件為AML文件

編譯DSL文件為AML文件:

1、利用編譯程序從源語言DSL文件編寫的源程序產生目標程序AML文件;

2、用編譯程序產生目標程序的動作。 編譯就是把高級語言變成計算機可以識別的2進制語言,計算機只認識1和0,編譯程序把人們熟悉的語言換成2進制的。

編譯程序把一個源程序翻譯成目標程序的工作過程分為五個階段州信:詞法分析;語法分析;語義檢查和中間代碼生成;代碼優化;目標代碼生成。主要是進行詞法分析和語法分析,又稱為源程序分析,分析過程中發現有語法錯誤,給出提示信息。

(2)手機編譯aml軟體擴展閱讀:

編譯程序的語法分析器以單詞符號作為輸入,分析單詞符號串是否形成符合語法規則的語法單位,如表達式乎跡昌、賦值、循環等,最後看是否構成一個符合要求的程序;

按該語言使用的語法規則分析檢查每條語句是否有正確的邏輯結構,程序是最終的一個語法單位。編譯程序的語法規則可用上下文無關文法來刻畫。

語法分析的方法分為兩種:自上而下分析法和自下而上分析法。自上而下就是從文法的開始符號出發,向下推導,推出句子。

而自下而上分析法歲扒採用的是移進歸約法,基本思想是:用一個寄存符號的先進後出棧,把輸入符號一個一個地移進棧里,當棧頂形成某個產生式的一個候選式時,即把棧頂的這一部分歸約成該產生式的左鄰符號

Ⅲ 用什麼軟體打開aml文件

用文本編輯器打開
用記事本可以打開看看,是源程序

Ⅳ 求助大大幫忙修改編譯生成aml 一個錯誤Error 4095

論壇上隨處可見。到處充斥著穗鉛修改猜氏好dsdt的軟體。比如。 dsdt auto pactor(但其中有好多壇友提出,自己的主板型號裡面都沒有)。dsdt se (此軟體集修改核數和修復於一身,我也漢化dsdt se了一下,下面有下載地址)。還有dsdt edit& auto fix/patcher,具體...

如何使用ACPI Patcher製作DSDT補丁

很多人都知道使用DSDT補丁可以開雙核,但DSDT的功能不僅僅如此,除了開雙核,還可以可以修復ACPI缺陷(不需要Disabler.kext,原
版cpupowermanagement正常使用),RTC,HPET缺陷(原版kext正常工作),顯卡(代替efistring),音效卡(只是代替了
HDAEnabler.kext),網卡(包括TimeMachine問題),此外還可以解決其他很多奇奇怪怪的問題,因此建議盡可能使用DSDT補丁。

但是DSDT到底是什麼東西,怎麼這么神奇呢?這個要從ACPI說起了,ACPI是Intel(i386,x86_64,IA64)平台的標准固件規范,
絕大部分OS需要從BIOS得到的信息都可以從ACPI得到,並且現在的趨勢是未來的任何新的特性相關的信息都只能從ACPI得到。

ACPI的信息包括:
配置信息,這些信息從legacyPNP設備的配置,到多處理器,到NUMA,比如現在的MultipleCore的信息就只能從ACPI得到。Linux啟動很多代碼就是處理這些配置信息,比如APIC,IOAPIC設置等。敬氏
ACPI相關設備,主要是筆記本電腦相關的設備,包括電源按鈕,電池,外接電源,風扇,熱鍵等。
底層硬體,比如PCI中斷路由,chipset(主要是南橋PCI-to-LPCbridge)操作等。

電源管理,ACPI定義的電源管理包括CPU的電源管理(調頻率P-state,idleC-state,throtting
T-state),設備電源管理(D-state),系統電源管理(Suspend-to-Ram,Suspend-to-Disk, power
off)等。
設備熱插拔,ACPI用一種統一的方式來描述設備的熱插拔,這樣的設備從單一的PCI設備,到筆記本電腦的DockingStation,到整個PCI hierarchy,CPU,Memory,甚至整個NUMA節點。

可以說要理解現代旦灶PC平台必須了解ACPI。ACPI主要是由很多表(Table)組成,而DSDT(Differentiated System Description Table)是其中一個最主要的ACPI表之一,它的定義如下

DSDT is an acronym for DifferentiatedSystem Description Table.
Thistable contains theDifferentiated Definition Block, which supplies
theinformation and configuration information about the base system.

簡單說就是包含了所有和基本系統(basesystem)不同的設備的信息,basesystem每台機器都是一樣的,這個是在acpispec里指定
的,但是每台機器都是不相同的,所以不相同的設備大都是由DSDT表來描述。它包含了亮遲散很多AML代碼。大多數BIOS是針對windows開發的,而
windows自己也不完全遵循acpi規范,所以因為BIOS的bug,這些代碼本身可能有錯,導致其他的系統,如linux,mac os出錯。

我們可以手動修復這些bug使之兼容MAC系統。DSDT在bios里是以編譯後的aml文件存在,需要把它解出來,反編譯成aml代碼形式(dsl文
件,文本文件),代碼修改完畢再重新編譯,替換掉bios里原來的dsdt表。不過PC-EFI,Chameleon的出現,使得我們不再需要冒險刷
bios,只要把製作好的DSDT.aml文件放在根目錄或者/Extra文件夾里,啟動的時候就會自動使用這個DSDT.aml,從而達到修復ACPI
系統bug的作用。

但是DSDT補丁怎麼製作,卻很少有人能詳細的介紹,mac上的軟體基本上只能製作解決雙核,acpi問題的dsdt.aml,要想解決更多的問題,就必
須回到windows,使用insanelymac論壇里的一款軟體ACPIPatcher,這個軟體相對比較復雜,今天我們就來了解一下這個軟體的用
法。

軟體界面如上圖,左上可以指定bios和製作補丁,右上是具體選擇補丁選項的地方,左下是輸出信息,右下可以看到進度。
先來看左上部分各個標簽的具體作用。

BIOSPatch:選擇一個bios製作dsdt.aml,選擇bios文件和指定輸出dsdt.aml目錄之後,選中GenerateDSDT.aml,然後按下Patch Bios按鈕即可,輸出目錄不可以是bios目錄,否則會出錯

DSDTPatch:對一個已有的DSDT.aml進行acpi修復,選擇DSDT.aml,指定輸出目錄,按下PatchAML即可

ImportDSDT:用已有的DSDT.dsl對bios打補丁,選擇輸入dsl文件和bios,按下PatchBios即可

ExportDSDT:從bios里解出DSDT.dsl文件,選擇bios文件和輸出目錄,按下Exact即可

D/CDSDT:DSL編譯成AML文件,或者AML文件反編譯成DSL文件,取決於選中Compile還是Decomplie,選中Compile的時
候如果同時選中Patchbefore compile,可以在把DSL編譯成AML文件的時候打上ACPI補丁。

看完了左上的標簽我們來看最重要的部分,右上bugfix的詳細信息,

General:

這里有三個最重要的修復,HPETPatch,RTCPatch和AliasesPatch,前兩個可以解決一些時鍾方面的問題,很多機器里如果有
AppleIntelCPUPowerManagement.kext就會四國,或者不能正常使用,需要Disabler.kext,如果你選了前兩項,
從此可以扔掉Disabler.kext,因為AppleIntelCPUPowerManagement.kext可以正常工作了,第三個選項也許更加
重要,AliasesPatch直接對應是否能開雙核,對asus,msi的主板來說,這個選項是非常重要的,技嘉沒有這個問題,選不選都無所謂。

點擊Fixes…可以看到一個新窗口


里都是一些針對編譯時出現error或者warning的fix,作者的意見是當出現這些error或者warning的時候可以選擇,我的意見時全部選
擇,防止出現error或者warning,如果還有問題,就需要去網上搜索解決方案,自己動手修改代碼然後再編譯了。

Network:

這里相對比較復雜,你需要知道硬體位置,這個可以用ioRegistryExplorer來看,Lan0應該是百兆網卡而GIGE是千兆網
卡,FixGP9指增加一個GPIO9的控制項,UseTime Machine Fix修復Time
Machine找不到內置網卡的問題,下面是針對技嘉P43 P45 Realtek 8111c千兆網卡的設置圖,它的硬體位置在PEX 5

Graphics:

這里合理設置後完全可以代替efi-string,natit,nvinject,nvdarwin,nvkush等,首先在model那裡選擇顯卡型號
和顯存大小,下面綠色的選項針對N卡,紅色的針對A卡,N卡需要設置nvcap值,A卡需要設置Framebuffer和
DevID,Hardwarelocation需要用ioRegistryExplorer看下,PEGP和Use DSDT GFX都要選中。

這里以硬體地址PCI 0為例,分別給出nVidia8800 GT 512MB和ATI HD3870 512MB顯卡的示例。

nVidia 8800 GT512MB

ATI HD3870 512MB

Audio:

通過設置audio可以代替HDAEnabler.kext,設置很簡單,AudioChipset里預置了三種,Realtek
ALC888-0,Realtek ALC888-2,RealtekALC889a,ALC888分別對應address 0和address
2,技嘉P43, P45板載的ALC888選RealtekALC888-0,ALC889選Realtek ALC889a,此外還要選中Use
HDEF Audio,下面以889為例

看完bug fix來看看左下角的兩個編譯選項,ForceDSDT
Compilation表示強制編譯,即便出現錯誤,Stop on compilation
Warning表示出現warning時停止編譯,追求完美的人可以選擇此項,因為0error,0warning的dsdt表示沒有任何語法錯誤。

右邊還有一個選項是bios類型選擇,根據你的bios類型選擇Award還是AMI,技嘉的bios是Award

目前市面上較流行的主板BIOS主要有 Award BIOS、AMI BIOS、Phoenix BIOS三種類型。
Award
Award BIOS是由Award Software公司開發的BIOS產品,在目前的主板中使用最為廣泛。Award BIOS功能較為齊全,支持許多新硬體,目前市面上多數主機板都採用了這種BIOS。
AMI

AMI BIOS是AMI公司(全稱:American Megatrends
Incorporated)出品的BIOS系統軟體,開發於80年代中期,早期的286、386大多採用AMI
BIOS,它對各種軟、硬體的適應性好,能保證系統性能的穩定,到90年代後,綠色節能電腦開始普及,AMI卻沒能及時推出新版本來適應市場,使得
Award BIOS佔領了大半壁江山。當然現在的ami也有非常不錯的表現,新推出的版本依然功能強勁。
Phoenix
Phoenix BIOS是Phoenix公司產品,Phoenix意為鳳凰或埃及神話中的長生鳥,有完美之物的含義。Phoenix BIOS 多用於高檔的586原裝品牌機和筆記本電腦上,其畫面簡潔,便於操作。
Insyde
Insyde bios 是台灣的一家軟體廠商的產品,是一種新興的BIOS類型,被某些基於英特爾晶元的筆記本電腦採用,如神舟、聯想。

下面我們以技嘉GIGA EP43-UD3L為例,實際操作一次,顯卡是nVidiaGeforce 9800 GTX 512MB,音效卡是ALC888。
設置輸入輸出路徑,BIOS類型,Stopon warning,General設置

補丁詳細設置

然後按下Patch Bios,運行完畢可以看到成功編譯,而且可以看到編譯過程中出現 0Errors, 0 Warnings, 0 Remarks, 660 Optimizations。


時到輸出目錄里可以看到dsdt.aml,此外,bios文件下面還會生成patch過的以new結尾的bios文件,如
ep43ud3l.f4.new,如果你確認dsdt.aml可以使用,那麼這個bios也是可以使用的,有需要的話可以自行刷bios,不過刷機有風
險,還請慎重。

dsdt.aml的使用非常簡單,首先確保你安裝了支持dsdt的引導,如PC-EFIV9,Chameleon1.0.12或者Chameleon 2
RC1,推薦最新的Chameleon2
RC1,然後把dsdt.aml放在系統盤的根目錄或者Extra文件夾里,如果是efi分區啟動,放在efi分區的Extra文件夾里就可以了。

到此,本次講座就算是結束了。全文完整的doc檔和acpi patcher可以在附件下載到。

一點小更新,如果你用acpi patcher得不到DSDT,比如ASUS,MSI的部分主板,你可以在linux下通過在終端里運行
cat /proc/acpi/dsdt > dsdt.aml
得到,然後用acpi patcher把它反編譯得到dsdt.dsl就可以修改了
如果你可以進入mac,那麼用附件里的getdsdt腳本也可以得到dsdt.dat,重命名為dsdt.aml即可

Ⅵ 如何編譯AML8726-MX Linux 3.0.8 Source Code

$cd ~
$cd C_code
$gcc xxxx.c -o xxxxxxxx

其中,~就是 /home/a564034199
xxxx就是配空好你的源文件的名虧唯字
xxxxxxxx就是要編譯的文培鉛件

Ⅶ 安卓手機root後可以安裝什麼

。1、將ROOT壓縮包和factory_update_param.aml
2個文件復制到平板TF卡根目錄(TF卡最好格式化)。2、然後在開機情況下插入TF卡到機器的卡槽並進行關機。3、最後先按HOME鍵(小正洞房子鍵)然
後3秒後再按電
源鍵。出現白色
小機器舉局枯人的時候在臘畢同時松開。4、這時會看到綠色安卓機器人肚子打開了正在維修狀態。維修狀態時會有進度條顯示。大約等5-10秒進度條過去了之後會自動開
機,開機後即ROOT成功。

Ⅷ dsdt提示這個錯誤怎麼解決

首先,dsl是源代碼文件,aml是二進制文件。二進制文件,是機器能直接執行的。其次,當源代碼仍存在錯誤時,一般是不允許保存為二進制文件的,因為錯誤使得源唯伍鏈代碼不能編譯為二進制,所以指孫在仍然存在錯誤時,不能保存為aml。再者,一般情況下,軟體提取到的是橘凳二進制文件,即aml,再由軟體反編譯回到源代碼,展現在我們面前(可以視為變回了dsl)。即軟體把它又變了回去,但是,在變的過程中,可能出現錯誤,於是,就不能再編譯到二進制,即不能保存為aml。對於你的問題:1、沒有錯誤的aml是二進制文件。是機器能直接執行的。可以直接放到clover/acpi/patched/下面。2、在DSDT仍然存在錯誤時,不能保存為aml,只有修改所有錯誤(警告和提醒不影響),使得編譯通過,才能保存為aml。