Windows8测试版系统下载|预览版

Windows8测试版系统下载预览版

共同期待微软最新操作系统,体验全新概念

Windows8系统下载|主题|测试版|beta|界面

Mac OS X苹果系统下载 安装 帮助

Mac OS X苹果系统下载 安装 帮助

华语界最权威性的"黑苹果"电脑论坛

OS X Lion下载|安装|驱动|软件|帮助

查看: 2612|回复: 16

内核的破解 [复制链接]

没心没肺地活着

Rank: 7Rank: 7Rank: 7

UID
255993
帖子
1436
PB币
3612
威望
11
贡献
0
发表于 2008-4-25 23:58:11 |显示全部楼层
最近本人正在利用业余时间进行着这项工作,我也知道在国外有很多的爱好者已经有了很为深入的研究,但是相关的公开介绍相当稀少。我也是刚开始,或许在认识与研究上出现了不少偏差,还请大家多多指正!先行谢过。

目前OS X的内核破解方法基本有两种,一种是比较直接的采用反汇编的方法对内核进行修改;另一种是根据苹果公司公布的XNU Kernel源码进行相关的修改工作。

当然,两种方法都会有一定局限性。

第一种方法, 极其类似于硬件玩家们的超频工作,采用对BIOS参数的调整组合,一步一步的测试而最终达成目的。是一个修改,测试,再修改,再测试的过程。它的局限在于,对于内核组成的全局感不强,另外,需要对x86的汇编语言十分熟悉;

第二种方法,由于苹果公司在发布一个新的版本内核后,就会在网上公布上一个版本的内核源码。不过,请注意,XNU的源码并不是全部公开的。还有相当数量的内容是以二进制码的形式提供的。这样就为源码的重编译增加了难度,使得很多东西还是得采用反编译的方法来修改。

接着说。
我目前所做的采用第一种方法。
首先,要找到一个原版的内核,这个容易,上苹果网站上下升级包,然后用Pacifist把原版的内核Mach_kernel取出。注意,这时的内核是一个Universal Binary文件,包括了两套代码PPC的和i386的。

苹果公司为大家提供了一个工具-Lipo来做一些基本的Universal Bin文件处理。具体介绍请参阅:
http://developer.apple.com/docum ... es/man1/lipo.1.html
我先用Lipo对原始的内核文件进行了i386平台代码的剥离。生成了一个只有一半左右的新文件。然后,上网去找相应的其它爱好者已经做好的破解文件。这里要注意一下,目前有部分破解内核是基于XNU源码进行修改后重新编译了的,文件大小上会有不同。

[ 本帖最后由 Envying 于 2008-4-25 09:04 编辑 ]
黑苹果大叔的博客
谢绝回答任何PM
MB: GA-P35-DS3R CPU: Intel PD E6300 2.8GHz RAM: 4GB DDRII-800 Video: GF9400GT 1GB
HD: SG320GB (MBR winXP); SG500GB (MBR 10.5.7); SG500GB (10.6)
Onboard Audio & LAN
Sleep in 10.5.7 but no sleep in 10.6

没心没肺地活着

Rank: 7Rank: 7Rank: 7

UID
255993
帖子
1436
PB币
3612
威望
11
贡献
0
发表于 2008-4-26 00:02:19 |显示全部楼层
下一步你需要两样工具程序,一个是文件比较软件,我自己用的是UltraEdit里的UltraCompare,当然这一类的软件很多。另一个是反编译软件(要能反编译Mach-O文件的),我目前知道的有两种,HTE和IDA Pro,我现在用HTE。

[ 本帖最后由 Envying 于 2008-4-25 09:05 编辑 ]
Test.JPG
untitled.JPG
New.JPG
黑苹果大叔的博客
谢绝回答任何PM
MB: GA-P35-DS3R CPU: Intel PD E6300 2.8GHz RAM: 4GB DDRII-800 Video: GF9400GT 1GB
HD: SG320GB (MBR winXP); SG500GB (MBR 10.5.7); SG500GB (10.6)
Onboard Audio & LAN
Sleep in 10.5.7 but no sleep in 10.6

没心没肺地活着

Rank: 7Rank: 7Rank: 7

UID
255993
帖子
1436
PB币
3612
威望
11
贡献
0
发表于 2008-4-26 01:56:56 |显示全部楼层
从文件的比较来看,基本的出发点是将一些不利于非苹果设备的初始化认证,比较,出错调用进行代码屏蔽。与之相关主要是与CPUID有关的如rdmsr, wrmsr, mfence, clflush等一类操作, 这部分主要是与AMD CPU或Nforce Chipset相关的。还有就是HPET的支持部分,有FSB的确认部分。我主要比较了目前的ToH,Nforce的破解内核。

[ 本帖最后由 Envying 于 2008-4-25 11:39 编辑 ]
黑苹果大叔的博客
谢绝回答任何PM
MB: GA-P35-DS3R CPU: Intel PD E6300 2.8GHz RAM: 4GB DDRII-800 Video: GF9400GT 1GB
HD: SG320GB (MBR winXP); SG500GB (MBR 10.5.7); SG500GB (10.6)
Onboard Audio & LAN
Sleep in 10.5.7 but no sleep in 10.6

没心没肺地活着

Rank: 7Rank: 7Rank: 7

UID
255993
帖子
1436
PB币
3612
威望
11
贡献
0
发表于 2008-4-26 05:00:31 |显示全部楼层
嘿嘿,真不知道苹果公司总裁SPJ的所谓Leopard的从上到下的64位这一说法应该如何理解,很明显Mach_kernel本身是基于i386指令集的。
看到去年在chaos集会上的一篇文章。有几点说法提供给大家参考:
64 bit
• The Mac OS X kernel is not 64 bit.
• It supports 64 bit user land applications.
• The kernel code is 32 bit with tiny 64 bit parts for user support.
黑苹果大叔的博客
谢绝回答任何PM
MB: GA-P35-DS3R CPU: Intel PD E6300 2.8GHz RAM: 4GB DDRII-800 Video: GF9400GT 1GB
HD: SG320GB (MBR winXP); SG500GB (MBR 10.5.7); SG500GB (10.6)
Onboard Audio & LAN
Sleep in 10.5.7 but no sleep in 10.6

没心没肺地活着

Rank: 7Rank: 7Rank: 7

UID
255993
帖子
1436
PB币
3612
威望
11
贡献
0
发表于 2008-4-26 05:24:59 |显示全部楼层
有兴趣的同学可以看看这篇文章,不过是英语版的。

Inside osx kernel.zip

79.71 KB, 下载次数: 24, 下载积分: PB币 -1

黑苹果大叔的博客
谢绝回答任何PM
MB: GA-P35-DS3R CPU: Intel PD E6300 2.8GHz RAM: 4GB DDRII-800 Video: GF9400GT 1GB
HD: SG320GB (MBR winXP); SG500GB (MBR 10.5.7); SG500GB (10.6)
Onboard Audio & LAN
Sleep in 10.5.7 but no sleep in 10.6

Rank: 5Rank: 5Rank: 5

UID
150919
帖子
998
PB币
3616
威望
6
贡献
1
发表于 2008-4-26 06:17:38 |显示全部楼层
感谢分享,给大家提供了入手的基础。

没心没肺地活着

Rank: 7Rank: 7Rank: 7

UID
255993
帖子
1436
PB币
3612
威望
11
贡献
0
发表于 2008-4-26 11:10:35 |显示全部楼层

回复 6# 的帖子

不客气,有兴趣的大家一起研究,学习。今后还请多指教!/w00t.gif
黑苹果大叔的博客
谢绝回答任何PM
MB: GA-P35-DS3R CPU: Intel PD E6300 2.8GHz RAM: 4GB DDRII-800 Video: GF9400GT 1GB
HD: SG320GB (MBR winXP); SG500GB (MBR 10.5.7); SG500GB (10.6)
Onboard Audio & LAN
Sleep in 10.5.7 but no sleep in 10.6

没心没肺地活着

Rank: 7Rank: 7Rank: 7

UID
255993
帖子
1436
PB币
3612
威望
11
贡献
0
发表于 2008-4-29 01:35:47 |显示全部楼层
看来感兴趣的人的确不多,哈哈!pb61
黑苹果大叔的博客
谢绝回答任何PM
MB: GA-P35-DS3R CPU: Intel PD E6300 2.8GHz RAM: 4GB DDRII-800 Video: GF9400GT 1GB
HD: SG320GB (MBR winXP); SG500GB (MBR 10.5.7); SG500GB (10.6)
Onboard Audio & LAN
Sleep in 10.5.7 but no sleep in 10.6

Rank: 1

UID
563994
帖子
47
PB币
106
威望
0
贡献
0
发表于 2008-4-29 21:28:44 |显示全部楼层
支持,我们需要自己的专家。

UID
23368
帖子
1176
PB币
3979
威望
0
贡献
0
发表于 2008-4-29 22:06:19 |显示全部楼层
帮顶,最近实在没时间折腾

Rank: 1

UID
364314
帖子
58
PB币
12
威望
0
贡献
0
发表于 2008-4-29 22:06:24 |显示全部楼层

支持,继续

支持,继续吧

Rank: 2Rank: 2

UID
536309
帖子
164
PB币
186
威望
0
贡献
0
发表于 2008-4-29 22:16:33 |显示全部楼层
支持lz,不过偶只是玩玩,呵呵

Rank: 1

UID
570917
帖子
25
PB币
2
威望
0
贡献
0
发表于 2008-4-29 22:30:30 |显示全部楼层
感兴趣的人很多,可是语言的局限让人止步。

强烈支持!希望中国有真正的软件业。

顺便问一声,现在中国有软件业吗?

没心没肺地活着

Rank: 7Rank: 7Rank: 7

UID
255993
帖子
1436
PB币
3612
威望
11
贡献
0
发表于 2008-4-29 23:30:32 |显示全部楼层

回复 13# 的帖子

多谢大家支持!

希望不要把我这种个人行为上升到民族层次。我这只限于个人爱好,发贴是希望能找到一些同道中人交流,互相学习。
黑苹果大叔的博客
谢绝回答任何PM
MB: GA-P35-DS3R CPU: Intel PD E6300 2.8GHz RAM: 4GB DDRII-800 Video: GF9400GT 1GB
HD: SG320GB (MBR winXP); SG500GB (MBR 10.5.7); SG500GB (10.6)
Onboard Audio & LAN
Sleep in 10.5.7 but no sleep in 10.6

Rank: 2Rank: 2

UID
567963
帖子
224
PB币
205
威望
0
贡献
0
发表于 2008-4-30 11:21:04 |显示全部楼层
帮你顶一下

Rank: 2Rank: 2

UID
468430
帖子
403
PB币
195
威望
0
贡献
0
发表于 2008-5-2 13:14:02 |显示全部楼层
这个要顶,但太深奥了,不懂,呵呵

Rank: 5Rank: 5Rank: 5

UID
294049
帖子
1142
PB币
1599
威望
1
贡献
0
发表于 2008-5-2 21:32:15 |显示全部楼层
楼主是专家,本菜鸟学习
您需要登录后才可以回帖 登录 | 注册

关闭

临时公告

PCBETA畅游论坛之新手指南
漫游论坛、新手必备之良品。请新注册会员仔细阅读本指南以尽快融入论坛。

查看 »

回顶部
Copyright (C) 2005-2011 pcbeta.com, All rights reserved
Powered by Discuz!  沪ICP备10012085号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
我们的平台:远景在线 | 远景论坛 | 苹果论坛 | Windows8 | Windows7 | Windows Phone论坛 | 电脑硬件