2012年2月28日星期二
about OSx86 (From wiki)
A computer built to run this type of Mac OS X is also known as a Hackintosh, a portmanteau of the word "hack" and the name of Apple's main brand of computers, Macintosh. Hackintoshed notebook computers are also referred to as "Hackbooks".
The Apple software license does not allow Mac OS X to be used on a computer that is not "Apple-branded". The legality of this form of tying is disputed by companies such as Psystar, Bizon computer, PearC and MacPC who have attempted to release products using Mac OS on non Apple-machines. However, Apple claims the methods it uses to prevent Mac OS X from being installed on non-Apple hardware are protected in the United States by the DMCA, and in November 2009 won a summary judgement against Psystar on these grounds.
Legal issues and Apple objections
Apple does not authorize the use of the Mac OS on any x86 PC other than the ones it has developed itself. The company used a Trusted Platform Module, or TPM, to tie Mac OS to the systems it distributed to developers after announcing its switch to Intel's chips.
The Mac OS X EULA forbids installations of Mac OS X on a "non-Apple-branded computer". On July 3, 2008, Apple filed a lawsuit against Psystar Corporation for violating this restriction, among other claims. Apple claimed Psystar "violated the Digital Millennium Copyright Act (DMCA) by dodging copy-protection technologies Apple uses to protect Mac OS X. "Apple employs technological protection measures that effectively control access to Apple's copyrighted works. Defendant has illegally circumvented Apple's technological copyright-protection measures." Specifically, Apple charged Psystar with acquiring or creating code that "avoids, bypasses, removes, descrambles, decrypts, deactivates or impairs a technological protection measure without Apple's authority for the purpose of gaining unauthorized access to Apple's copyrighted works." This brief revealed that Apple considers the methods that it uses to prevent Mac OS X from being installed on non-Apple hardware to be protected by the DMCA.
On November 13, 2009, the court granted Apple's motion for summary judgment and found Apple's copyrights were violated as well as the Digital Millennium Copyright Act (DMCA) when Psystar installed Apple's operating system on non-Apple computers. A hearing on remedies was set for December 14.
On January 14, 2009, the Gadget Lab site of Wired Magazine posted a video tutorial for installing Mac OS X on an MSI Wind netbook, but removed it following a complaint from Apple. Textual instructions remain, but include an EULA violation disclaimer.
Developer Transition Kit
Efforts to run Mac OS X on non-Apple hardware utilized leaked copies of pre-release software. On June 6, 2005 Apple announced the availability of a Developer Transition Kit. This kit was made available to registered developers at a cost of $999. The first patches circumvented the Trusted Platform Module (TPM) that was included on the motherboard of the Developer Transition Kits. The TPM was required by theRosetta technology that allowed software compiled for the PowerPC architecture to run on Intel-based architecture. Removing this requirement allowed Mac OS X to be installed on non-Apple computers. Rosetta also required microprocessors that included SSE3 instructions. Patches were released to the community which emulated these instructions with SSE2 equivalents and allowed the installation on machines without SSE3 support, although this produced a performance penalty. Being beta software, many updates followed its release.
TPM包含在Developer Transition Kit,用来支持Rosetta技术,移除TPM允许Mac OS X安装在非苹果电脑。Rosetta需要处理器支持SSE3指令集,但随后发布的补丁可以通过SSE2指令集来模拟这些指令,允许Mac OS X安装在不支持SSE3指令集的处理器上,尽管性能上受到影响,但是随后的更新解决了这些问题。
In October 2005, Apple released update 10.4.3 to developers that required NX bit microprocessor support; however, patches were released to circumvent this.
Hacking approaches
破解方法,主要分为内核破解和Bootloader及模拟。
Kernel hacks
Mac OS X 10.4.4 "Tiger"
On January 10, 2006, Apple released Mac OS X 10.4.4 with the first generation of Intel-based Macs, the iMac and the MacBook Pro. These machines used Extensible Firmware Interface (EFI) platform firmware instead of the older style BIOS found on most x86 motherboards. On February 14, 2006, an initial "hack" of Mac OS X v10.4.4 was released on the Internet by a programmer with the pseudonym crg92. Within hours Apple released the 10.4.5 update, which was patched again by the same author within two weeks. On April 3, 2006 Apple released their 10.4.6 update and again patches were released within two weeks that allowed users to install most of this update on non-Apple computers, although this did not include the updated kernel in 10.4.6. In June, the hackers released the 10.4.7 Mac OS X update for non-Apple computers using the 10.4.4 kernel.
Up to the release of the 10.4.8 update, all OSx86 patches used the 10.4.4 kernel with the rest of the operating system at version 10.4.8. However, the newer frameworks relied on the newer kernels and this led to users of 10.4.8 encountering many problems. (直到10.4.8,破解版的内核一直延用10.4.4)Apple also started making more use of SSE3 instructions on their hardware making it even more difficult for users with CPUs supporting only SSE2 (such as older Pentium 4's) to get a fully compatible system running.苹果使用越来越多的SSE3指令集,使得使用过时PC的用户很难获得全兼容的系统。
XNU kernel patch
Two programmers, working under the pseudonyms Mifki or Vitaliy and Semthex, released new kernels by starting with the open source XNU tree and applying patches necessary to run the kernel on non-Apple hardware. Mifki's goal was to release the kernel with as few patches as possible, able to run on close-to-Apple hardware. Semthex's goal was to make his kernel more compatible with older design hardware with the omission of some crucial features.
Both kernels allowed most of the updated kernel extensions/frameworks to work, making properly configured PCs operate more like genuine Apple computers. While Mifki has only updated his kernel once, Semthex updates it regularly and added AMD, VMware and SSE2-support in later versions. Semthex released his hacked kernel source code on his webpage. On December 24, 2006 he also released the latest patches for the SSE3 kernel as a diff file for his original source tree as a Christmas present to the community. The SSE2 emulation that Semthex developed with Rufus was the first fully complete emulation of all SSE3 instructions to be presented to the OSx86 community. Semthex和Rufus共同开发的SSE2模拟首次对SSE3指令集进行了全模拟。The previous SSE2 emulation was incomplete, only emulating 3 of the available SSE3 instructions, and very inefficient compared to the new emulator. The new emulator enabled even SSE2 OSx86 users to run SSE3 based applications such as iTunes 7 and most 3D programs.
In the early days of 10.4.8, an Intel-SSE3 only install DVD was released by JaS, which included Vitaliy's and Semthex's kernel. A few weeks later, a hacker calling himself tubgirl released an AMD-SSE3 install DVD. With Semthex's successful completion of the SSE2 Kernel, JaS released an SSE2-SSE3 universal DVD and announced his retirement from hacking Mac OS X after seven successful DVD releases. However, on August 9, 2008, JaS released yet another distribution featuring both a client and server version of Mac OS 10.5.4.
As early as Mac OS X v10.5 build 9A466 the community has maintained a version of Leopard that can run on non-Apple hardware. A hacker by the handle of BrazilMac created one of the earliest patching processes which made it convenient for users to install Mac OS X onto 3rd party hardware by using a legally obtained, retail version of AppleMac OS X. It was utilizing the BrazilMac patch that many effortless distros of Mac OSx86 came to fruition. Five of the most popular builds go by the name JaS, Kalyway,iATKOS, iPC and iDeneb - although more recently these builds are on the way out as the Boot-132 method (described below) gains popularity. However, all of these compilations rely on the work of kernel hackers made by Lorem (build 9A466), SynthetiX (builds 9A499, 9A527 and 9A559), ToH (builds 9A581, 9B13 and 9B18) and more recently a group calling themselves StageXNU (now called Voodoo) (Darwin 9.4.0). Their contributions trickled down into the various Mac OSx86 installers, readily available on the internet. There continue to be refined and updated builds released, not just to maintain compatibility with Apple releases but an ever increasing number of third party components. The OSx86 community has been quick to make the necessary modifications to enable Apple's latest releases to run on non-Apple hardware. Within hours of Leopard's release, an AMD/Intel SSE2/3 Kernel Patcher was created which removed the HPET requirement from an original untouched mach_kernel file, a core component of the Mac OS.
Mac OS X v10.6 "Snow Leopard"
When "Snow Leopard" was released, Russian hacker netkas created a version of Chameleon which can boot Mac OS X v10.6. The main problem was that many people were forced to modify DSDT or use kexts due to some specific issues. As soon as possible modbin and dmitrik released test versions of kernel that allow to boot Snow Leopard on AMD machines. Stable XNU kernels for v10.6 were released by Qoopz and Pcj. There are some popular builds based on Retail by the name Universal (Intel only), Hazard, and iAtkos. Since v10.6.2 Nawcom, Qoopz, and Andy Vandijck have been working on Legacy kernel for unsupported CPUs.
When Apple had released the Developer Preview 1, Russian Hackintosh developer usr-sse2 was the first who created a method to install Lion. The method consists in deploying Mac OS X v10.7 image on a flash drive, and booting from it through XPC UEFI Bootloader (See DUET below). After some changes were made to the Chameleon source code, booting of Lion was possible with an updated version of Chameleon. Lion still doesn't work on AMD PC's as there is not yet a kernel for it.
Boot loaders and emulators
EFI emulation
Extensible Firmware Interface (EFI) is a specification that defines a software interface between an operating system and platform firmware. Since this method generally does not require copying or modification of Mac OS X, it is the considered to be the most legal way of installing Mac OS X on non-Apple computers. EFI模拟不需要修改Mac OS X,被认为是在PC机上安装Mac OS X系统最合法的方法。
In early November 2007, a group of hackers (fronted by a Russian hacker known as Netkas), using an already modified boot-132 source root from David Elliot (also known as dfe), developed a method of emulating an EFI environment using a specially modified Darwin boot loader. 通过定制的Darwin boot loader模拟EFI环境。In practical terms, this meant that regular PCs meeting a minimum set of hardware requirements could now be "seen" as real Macintosh computers by the OS, allowing the use of unmodified, "stock" Apple kernels (as long as the CPU supports it) and thus giving a more transparent and reliable operation. Several methods for real world deployment of this innovative solution have arisen all around the Internet. An explanation of this achievement along with a usage guide was provided by the website DigitMemo.com.
True EFI emulation was a highly sought after asset for the OSx86 community. Previous efforts based upon Apple’s open source Darwin Project and Hackintosh gurus allowed users to use Mac OS X on normal PCs, with patched kernels/kernel modules which simply bypassed EFI. Using the EFI patch, a Hackintosh could boot off "vanilla" (unmodified) Mac OS X kernels and use vanilla kernel extensions. This not only allowed the system to be compatible with future system updates, but also offered increased stability.
In mid-2008, a new commercial product, EFi-X, was released that claims to allow full, simple booting off official Leopard install disks, and a subsequent install, without any patching required, but this is possibly a repackaging of Boot-132 technology. Rebel EFI is another commercial product that also seems to use open source software.
It was thought that Windows 7 support of EFI would result in PC motherboards replacing BIOS with EFI. MSI announced the Efinity mainboard in early 2008. As of 2011, EFI-based computers have entered the market, but there is no information on whether anyone has successfully booted OS X natively on these platforms.
Boot-132 is a boot loader provided by Apple for loading the XNU kernel.In mid-2008, a new modified BOOT-132 came on to the scene. This method allows users to conduct the Leopard-based OSx86 installation using a stock, retail purchased copy of Mac OS X Leopard and eradicates the necessity of a hacked installation like JaS or Kalyway (mentioned previously). The Boot-132 boot loader essentially preloads an environment on the system from which Leopard can boot and operate. Boot-132预先载入一个Leopard可以引导和运行的环境。The boot loader stores the necessary files (kext files) in a .img collection or simply a folder. The luxury of this new installation method includes the ability to boot and install from a retail Leopard DVD and update straight from Apple without breaking the DMCA. The only possible problem here is that it breaks the Mac OS X EULA.
The boot loader behaves like the linux kernel: one can use an mboot-compatible (a patched syslinux was used for the hack) boot loader which tells boot-dfe about the .img file (the ramdisk or initrd, as it's known by linux users), and boot-dfe will then use the kexts (or mkext) from it. This new boot-dfe has been tested with the retail Leopard DVD, and it can boot, install, and run Leopard without having to build a modified DVD.
This however only works with compatible machines. One notable exception, that since the release of the Voodoo kernel in December 2008, AMD users have been able to run Retail. Non-Core users can run Retail by using any compatible kernel. Both methods require the placing of the hacked kernel on the boot-132 disc.
Since the early developer builds of Mac OS X v10.6, members of the OSx86 community had been booting the new operating system using yet another boot loader called PC EFI provided by Russian hacker Netkas or the boot loader of the Voodoo team Chameleon. Chameleon is based on David Elliot's BOOT-132. The bootloader supports ACPI, SMBIOS, graphics, ethernet, and some other injections. It allows to boot up Mac OS X on a different to Macintosh hardware. Chameleon supports a lot of AMD as well as Nvidia Graphics Cards. There are a lot of branches of it by different developers. Chameleon is currently in the 2.1 development state.
In March 2007, the OSx86 community made some significant progress with the development of a Live DVD. The Live DVD allows booting to a working system with Mac OS X v10.4.8.
On January 2, 2009, InsanelyMac's Live DVD team published a new method by which a Mac OS X v10.5.x Live DVD could be produced, allowing users to boot a fully working Mac OS X desktop from a DVD or USB flash drive. The method was more reliable than previous methods because it manipulated Apple's existing Netboot and Imageboot functionalities and behaved as if the system were running off a network disk. It was easier to produce; requiring only a single script to be added to an existing installation. Distributions of the live DVD have been made since its inception. Since then, it is notable that this method has been shown to work on normal Apple Mac hardware.
标签: Boot-132, Boot-dfe, Chameleon, OSx86
about Chameleon (Mac OS X Bootloader)
Chameleon is combination of various boot loader components. It is based on David Elliott's fake EFI implementation added to Apple's boot-132 project.
Features
Device Property Injection via device-properties string in com.apple.Boot.plist
hybrid boot0+boot1h loaders for both MBR and GPT partitioned disks.
automatic FSB(前端总线) detection code even for recent AMD CPUs.
Apple Software RAID support.
stage2 loader (boot) can be placed as a regular file in the boot partition's root folder. It has precedence over the embedded startupfile.
Graphical Interface
Chameleon currently uses a text based interface like most bootloaders. The next version of Chameleon, 2.0, is going to have a GUI with support for true 24-bit PNG image files, with transparency support. Currently, a release candidate of the version 2.0 is available for download by anyone on the official website.
标签: Chameleon, Mac OS X, OSx86
about Boot-132
The loader was used in the Apple Developer Transition Kit PC rented to software developers during the Apple–Intel transition. This bootloader is not used on Intel Macs, instead boot.efiis used.
Source code for Boot-132 was released along with the XNU kernel in the 10.4.8 set of tarballs. Boot-132 was used with the last version of OS X for the DTK systems. Previous releases used boot-122 or earlier versions of Apple boot.
Boot stages
Boot-132 consist of three boot stages: boot0, boot1 and boot2.
Boot stage 0 is a short assembly program (less than 446 bytes) located in the Master Boot Record of a MBR partitioned disk. Boot0 assumes the presence of a BIOS in the system and callsinterrupt 0x13 to access low-level hard disk read and write services. The Apple version of boot0 only supports MBR partitioned disks. Support for GUID partition table is added to Chameleon versions of the code.
Boot-dfe
Boot-dfe is a modified version of Boot-132 created by David Elliott in 2007. The boot-dfe loader is started by another bootloader, typically GRUB, or in the case of booting from a CD, a patched version of ISOLINUX. The interface between the two bootloaders is defined by the GNU Multiboot Specification. The boot-dfe loader populates the struct boot_args structure and passes it on the the XNU kernel. (See OS X boot process.).
GRUB \
The latest versions of boot-dfe are able to load additional kernel extensions to the XNU kernel as an initial ramdisk (initrd). The extensions can be stored in an HFS or HFS+ partition in a APM, GPT, or MBR partitioned volume. The ramdisks are supplied to boot-dfe by the multiboot loader in the form of Multiboot modules.
The Boot-132 method is a method of installing Mac OS X Leopard or Snow Leopard on a PC from a retail DVD. Boot-132方法用于从零售Mac OS X光盘在PC机上安装Leopard或者Snow Leopard系统。This was made possible by the version of boot-dfe released in June 2008
To boot from an OS X retail disk first boot from the boot-dfe CD. When Darwin boot prompt appear, eject CD and replace with Mac OS X Retail DVD and select it from the menu. After installation, boot from the hard disk the first time using the boot-dfe CD and install the .kext needed.
Chameleon
The Chameleon bootloader is derived from Apple's boot-132. It adds David Elliott's fake EFI implementation.变色龙增加了虚假的EFI。
标签: Boot-132, Boot-dfe, Chameleon, Mac OS X, XNU
2012年2月25日星期六
英国政府将要求记录每一个电话、电子邮件和Tweet zz
物理学家精确测定普朗克常数 zz
微软指责Google绕过IE隐私设置,Google回应IE隐私功能不符实际 zz
联合国威胁自由互联网 zz
SkyDrive将支持单文件300MB和ODF zz
标签: SkyDrive
金山拆分快盘业务 zz
Canonical宣布Ubuntu for Android zz
Apache 2.4发布,直接瞄准Nginx zz
ReRAM将能代替内存和硬盘 zz
Firefox领先Windows,Chrome领先Linux zz
标签: chrome, firefox, ubuntu, windows
BSA称防火墙阻碍中国云计算发展 zz
甲骨文发布DTrace for Linux beta版 zz
Linux平台Firefox Flash插件将停止更新 zz
标签: Adobe, Flash, Pepper API
Google翻译支持世界语 zz
YouPorn被发现使用明文密码 zz
标签: Clear-Text Password, YouPorn
为儿童设计的Android 4.0平板MEEP! zz
美国政府希望推迟切断感染木马的计算机网络连接 zz
标签: American, DNSChanger
恶意程序的新演化:开源开发模式 zz
黑客工具包Zeus源代码泄露 zz
标签: Zeus
Visual Studio 11宣布 zz
标签: Visual Studio
五款优秀的Linux多路复用终端 zz
Google、微软和Netflix将DRM引入Web zz
下一代WiFi网络将能用手机卡自动登陆 zz
如果Android是剽窃来的产品,那么iPhone也是 zz
Google等同意支持Do Not Track,但并不停止跟踪 zz
标签: Do Not Track, google
英特尔加大支持LibreOffice zz
标签: Intel, LibreOffice
美国联邦上诉法院裁决嫌疑人不需要解锁加密硬盘 zz
2012年2月21日星期二
延迟和错误率令SSD前景蒙上阴影 zz
标签: Latency, NAND Flash, SSD
Mozilla称发行次级根证书是不可接受的 zz
美洲狮Gatekeeper限制开发者和开源软件 zz
标签: Gatekeeper, Mountain Lion
安全工具HijackThis开源 zz
标签: HijackThis, opensource
140字节的俄罗斯方块 zz
标签: Javascript, twitter
Google为Chrome开发密码生成器 zz
2012年2月20日星期一
欧盟美国批准Google收购摩托罗拉移动 zz
Tor帮助伊朗网民重新上线 zz
光驱工具Daemon Tools将ISO镜像数据发送到官方服务器 zz
标签: Daemon Tools, MountSpace, Privacy
思科称全球移动流量每月597 Pb zz
标签: Cisco, Mobile Network Traffic
中国黑客可能长期自由访问北电内网 zz
研究发现公钥有效性99.8% zz
LibreOffice 3.5发布 zz
标签: LibreOffice
加拿大支持互联网监视,称批评者是支持儿童色情 zz
标签: Canada, Internet Censorship
惠普开源webOS Web浏览器Isis zz
Mozilla将要求所有CA撤销用于监视的次级根证书 zz
研究发现未授权iOS应用泄漏隐私少于被苹果批准的应用 zz
索尼演示只供认证用户使用的电源插座 zz
标签: Intelligent Socket, Sony
NASA退役最后一台大型机 zz
苹果回应iOS应用侵犯用户隐私 zz
Library.nu关闭,Ifile.it关闭匿名上传 zz
标签: Library
苹果在德国赢得对摩托罗拉的滑动解锁专利诉讼 zz
标签: Apple, Germany, Motorola, Samsung
甲骨文称MySQL cluster 7.2实现每分钟10亿次查询 zz
报导称Android 5将在第二季度发布 zz
Windows 8将有新Logo zz
Scientific Linux 6.2发布 zz
VLC 2.0发布 zz
标签: VLC
六款优秀的Linux引导工具 zz
2012年2月19日星期日
约翰·纳什寄给NSA的信已解密 zz
Understanding the iPod Photo Cache folder
解决:“iPod Photo Cache”存储为在iPod、iPhone、iPad上显示而优化的照片,而该文件夹的位置取决于选择的同步方式。为了节约磁盘空间,可以删除该目录,而不会影响原始照片。
PUK码
Window Maker恢复开发,发布新版 zz
标签: Window Maker, Window Manager, x window system
苹果宣布OS X 10.8美洲狮 zz
标签: IOS, Mac OS, Mountain Lion
初窥Mozilla的Boot2Gecko移动平台和Gaia UI zz
标签: Boot2Gecko, Gaia UI
2012年2月16日星期四
Twitter宣布所有注册用户默认启用加密 zz
匿名组织声称要让13个DNS根服务器下线 zz
创新宣布推出百核“汉之派”平板 zz
标签: android, Creative, Hanzpad
印度政府将跟踪所有移动用户的位置 zz
ATA & AHCI
这就是ATA 和AHCI 的区别,ATA模式下的硬盘没有AHCI模式下的硬盘运行速度快,因为只有SATA接口的硬盘可以设为AHCI,而ATA模式是针对IDE硬盘存在的,这两种不同接口在传送数据快慢上有很大区别。
Springboard & Winterboard
标签: Springboard, Winterboard
2012年2月13日星期一
关Macbook pro中iCloud“查找我的mac”功能
2012年2月9日星期四
Google发布Chrome For Android Beta zz
第20届国际C语言混乱代码大赛获胜者宣布 zz
下一代主机是否应该可升级? zz
微博运营商证实实名制最后期限 zz
Nouveau驱动支持OpenCL加速 zz
Adobe证实Android版Chrome不支持Flash zz
Chrome 17发布 zz
英特尔下一代处理器硬件支持事务内存 zz
传言称苹果Siri将在下月支持中文 zz
Google付费跟踪100%用户上网行为 zz
2012年2月5日星期日
卫星电话加密算法被破解 zz
标签: Crack, GMR, Satellite Phone
2012年2月4日星期六
Mozilla发布Rust语言编译器v0.1 zz
标签: Mozilla Labs, Rust
Google的SPDY将可能包含在下一代HTTP标准中 zz
GDB 7.4发布 zz
普在Apache下开源webOS Enyo框架 zz
Firefox Javascript引擎变成单线程 zz
标签: firefox, Javascript
KDE 4.8发布 zz
标签: KDE 4.8
Ubuntu将用搜索界面HUD取代菜单 zz
Twitter将在特定国家屏蔽特定内容 zz
微软向诺基亚支付2.5亿美元使用WP7 zz
部分Win8品牌笔记本将内置Kinect传感器 zz
Siri竞争对手Evi上线,服务器超载 zz
Kindle Fire仅用三个月就超过其它Android平板 zz
标签: Kindle Fire
劫持网站流量出售 zz
标签: Hijack Traffic
泰国政府欢迎Twitter的按国家审查计划 zz
开源机器人操作系统---ROS zz
标签: opensource, ROS
2012年2月3日星期五
无损图片压缩ImageZero发布 zz
标签: ImageZero, Picture Compress
海盗湾创始人终审败诉 zz
标签: TPB
根服务器管理公司VeriSign承认在2010年被黑客入侵 zz
标签: DNS, SSL, Symantec, VeriSign
Google透露Android Market恶意程序扫描服务 zz
标签: Android Market, google, MALware
Windows Phone 8细节泄漏 zz
标签: Details, Windows Phone 8
KDE平板面临GPL侵犯问题 zz
2012年2月2日星期四
Firefox 10发布 zz
Office 15技术预览开始 zz
标签: Exchange, Lync, Office 15, Office365, SharePoint
七款优秀的Git客户端替代 zz
标签: Git Client
WikiLeaks或将服务器迁移到西兰公国 zz
Facebook正式宣布IPO计划 zz
IE6市场份额增加,Chrome下跌 zz
Greg Kroah-Hartman加盟Linux基金会 zz
维基百科选择Lua为新的模板语言 zz
彭博社开放其市场数据API zz
中印两国网速排名滞后 zz
标签: Akamai, State of the Internet
微软发布Kinect For Windows zz
标签: Kinect SDK, windows
Google博客服务开始基于国别的审查 zz
Facebook称它被四个国家屏蔽 zz
N9可能远比Lumia畅销 zz
Unicode 6.1发布 zz
标签: Unicode
订阅 博文 [Atom]