手动提取DSDT和SSDT教程

有很多朋友都在问小子如何制作DSDT,其实,小子对DSDT也只是了解,并没有深入研究过。

下面,小子就把自己所了解的制作DSDT的方法介绍给需要的朋友,当然,小子要特别说明的是DSDT并不是安装黑苹果必须的,也不要盲目的使用DSDT,它只是为了让我们的黑苹果更接近白苹果。

首先,让我们先来了解下什么叫DSDT?

ACPI 全称为Advanced Configuration and Power Interface即高级配置和电源管理接口
是由HP、Intel、Microsoft、Phoenix和Toshiba共同开发,用来定义能够为主板上设备提供操作系统配置和电源管理的硬件和软件接口的公开的行业规范。它能在操作平台独立的方式下描述系统硬件并且以固定格式的数据结构或者AML形式表示,最主要的AML表便是DSDT(differentiated system description table)。

DSDT是最大也是最重要的表因为它描述了主板上的设备,DSDT和其他ACPI表是储存在BIOS而且只描述主板上的硬件。因为Windows的优化可能会导致一些错误,所以我们需要用一些符合OS X系统需要的声明来绕过之前有错误的DSDT表从而使兼容性更可能的好。

我们通过变色龙引导加载编辑过的DSDT而不是工厂预设的,可以达到以下效果:

1.DSDT中的仿冒device-id能够取代仿冒驱动。

2.系统更新可能会使修改过的驱动或者仿冒驱动失效但无法使DSDTpatch失效。

3.DSDT修改能使系统睡眠并开启原生降频。

4.大规模的修改能够加速启动过程。

接着,小子分别以Mac平台、Linux平台和Windows平台来讲解如何提取DSDT。

Mac平台提取DSDT:

确认没有加载DSDT的前提下进行,在终端中运行dsdt.sh(点我下载)这个脚本,它将把所有的ACPI表都提取到/Users/你的用户名/ACPI目录下,当然,你也可以使用像DSDTSE,Chameleon Wizard类似的软件。

Linux平台提取DSDT:

在Linux终端中输入:cat /proc/acpi/dsdt > dsdt.aml

Windows平台提取DSDT:

AIDA64或其他工具提取DSDT和SSDT,提取方法如下:

红色框内右键 点击ACPI Tool SaveDsdt SaveTable 另存之

接下来小子来说说.dsl与.aml的编译与反编译:

当从系统中提取出DSDT以及其他ACPI表时,他们的格式是ACPI Machine Language(ACPI机器语言,后缀为.aml),我们要修改的话,DSDT需要先反编译成.dsl文件。用来编译和反编译ACPI表的程序叫做 iASL(点我下载),使用方法如图所示:

 iASL使用方法

本文链接:手动提取DSDT和SSDT教程

转载声明:本站文章无特别说明皆为原创,转载请注明:史蒂芬周的博客
本站所有软件仅供学习使用,请在24小时内删除,本人不承担任何相关责任!


53 评论
Inline Feedbacks
View all comments
五月风

你这个博客真不错了

xfangc

大神好,用同样的驱动,我的10.9.1不能上网而以前装的10.8.2可以,虽然识别出网卡但是型号不对,本来是rtl8139却识别为8169,请问是不是只有通过网卡内建方法来上网?如果要修改dsdt,win,linux和mac在哪里修改好一点?

xfangc

谢谢

疯狂的石头

大神你好,为什么我装了AIDA64之后,空白处点右键 没有看到 ACPI Tool 这个条目?

jialin

ubuntu(linux)中/proc/acpi/没有 dsdt这个文件 。
提取步骤应该如下(ubuntu):
sudo apt-get install acpidump iasl
sudo acpidump -t DSDT -b > dsdt.aml
sudo acpidump -t SSDT -b > ssdt.aml
sudo acpidump -t SSDT -b –skip 1 > ssdt-1.aml
sudo acpidump -t SSDT -b –skip 2 > ssde-2.aml
chmod 755 *.aml

飞天超音速

请问在win7和Mac中使用什么软件来提取?

don

我在音频midi中设置不了主音量,主音量很小

don

大神啊。。原来有声音的。。。alc662但是就是不注意就听不到啊,。。。音量调到最大了。。。音量太小了。。。如何解决啊?

don

有没有硬件检测的工具,,发个。。。主板上的是ICH9,扬声器也没有声音。。

don

为什么我安装的10.7.2 电脑是alc662的声卡,给了驱动,在界面可以看到和调节音量图标但是却没得声音。。。插耳机也没有声音》》》

change

请问可以帮我修改dsdt吗?我的网卡内建要添加代码,但添加代码后有很多错误,我自己不会修改。。。。

change

大神求指导,我Q:616482178,感激不尽!~

change

额。。。我不知道要怎样搞那个mac版的变色龙,打开变色龙勾上网卡内建后要怎么做,有没有帖子给我参考一下?没搞过这些,不怎么懂。。。。

change

我已经把网卡内建的信息加入到变色龙的list文件里,并且把他放在extra文件里了,还是无法网卡内建,怎么办才好?

change

该怎么办?求指导!

彭红

我用的chameleon wizard 里的杂项里的ethemet bult in 是内键吧。我点了还是没用。求大神指点!

彭红

我是app id 未知错误!

彭红

bsd名称:en0 是这样的。但是还是一样没有解决。问题“发生未知错误” 的问题。

彭红

调制解调器:找不到apple调制解调器。如果调制解调器是外置的,请确定它是通过 USB 进行连接的。

Sunhdk

主板没有acpi啊

Sunhdk

修改过可识别但是依旧闪屏

Sunhdk

无法调啊

Sunhdk

添加显卡代码后 出现dmdo has arrived 还有五国

Sunhdk

用idsdt创建也有用上rom貌似不起作用

Sunhdk

好不容易添加显卡代码可以识别了却又卡在acpi_smcplatformPlugin:Pushcpu_cstdata – cst evaluation failed 出现五国TT泪啊

Sunhdk

目前显卡可以识别出来可以无法开启qe/ci 也不能调分辨率 偶尔会闪屏 完全无特效 望解决谢谢了 如果可以希望能够详细说下驱动方法

Sunhdk

处理器 英特尔 Pentium(奔腾) 双核 E2200 @ 2.20GHz 主板 华硕 Lancaster8 (英特尔 945G – ICH7 Family) 内存 2 GB ( 镁光 DDR2 667MHz ) 主硬盘 希捷 ST3250310AS ( 250 GB ) 显卡 Nvidia GeForce 8400 ( 128 MB / 华硕 ) 显示器 惠普 HWP26A2 HP w1907 ( 19.1 英寸 ) 光驱 建兴 ATAPI DVD D DH16D2S DVD光驱 声卡 瑞昱 ALC888 @ 英特尔 82801G(ICH7) 高保真音频 网卡 瑞昱 RTL8101E Family PCI-E Gigabit Ethernet NIC / 惠普
这个显卡驱动怎么办?dsdt怎么弄?我试过网上的驱动结果启动到白苹果时花屏了 急 谢谢!!!

Sunhdk

非常抱歉再次请教下 目前网卡驱动成功声卡用voodoo的那个也还好 就是显卡用变色龙驱动以后还是无法调分辨率,没有其他调节选项 系统卡的厉害 偶尔会闪屏 求Nvidia GeForce 8400 ( 128 MB / 华硕 ) 的驱动 或者其他方法 dsdt怎么编我不懂求指教谢谢了哈

Sunhdk

目前来看显卡没有驱动是关键这个对使用影响很大 除了dsdt还有其他方法驱动么? 烦请提供个能用不花屏的驱动或者方法谢谢 网卡内建的话我后期用dsdt解决 dsdt花的时间比较久 所以主要想驱动显卡 谢谢

Sunhdk

还有就是app store无法登陆阿

Sunhdk

如何查看网卡是否内建? DSDT文件我都提取好了 只是不知道如何编译 把win这里提取的参数复制到mac那里去? 还有就是闪屏特厉害啊 keynote说我显存不足