迷迭香的记忆已经褪色,四叶草的幸福被谁追逐 那些零碎的回忆,渐渐失去了方向。

 

什么是Clover(四叶草)呢?显然它不是指的草地里用来喂牛的草啦。Clover是一个软件,是一个新型的启动器,它能够让普通的PC上用上Mac OS X系统。

黑果必备引导器四叶草Clover r3696 EFI|mbr专用ISO|Pkg-萌草酱

苹果公司(Apple)限制Mac OS X系统只能在Apple设备上使用,并且苹果不保证Mac OS X在其它设备上能够正常工作。所以,用户需要承担一定的风险。当然,为了避免其它的法律纠纷,你不应该用作商业用途。装上了Mac OS X的非苹果电脑,就叫做黑苹果(Hackintosh)。

为了开始黑苹果,你需要一个特殊的启动器。现在有很多启动器,它们可以分成两类:仿冒EFI和真实EFI。

启动器类型

仿冒EFI:它是很多年前David Ellion发明的。工作流程如下:它假设EFI已经完成了相应的工作,并在内存里以一种简单的形式保留活动痕迹(boot-arg和tables tree)和EFI运行时程序,然后启动内核_mach_kernel_。举例来说,Chameleon(变色龙)就是这种启动方式,它会产生一些负面影响,比如使启动磁盘选项面板不工作。正是这种没有运行时服务的工作方式让苹果有机会从中作难。2013年1月的情况是,因为缺少SetVariable()函数,iMessage停止运行。

真实EFI:对于BIOS主板而言,理论上需要将EFI刷入主板来代替BIOS,但是实际上只需要一个可以加载的EFI即可。EFI启动方式由Intel发明,现在它是TianoCore上一个活跃的开源项目,启动器的名字叫_DUET_。那么问题来了,它能够加载EFI但是它并不是用来启动Mac OS X的。所以我们还需要修改DUET,使之能够启动Mac OS X。较新的主板已经包含了EFI,但它并不适合运行黑苹果。

名字的来源

启动器的名字_Clover_由一位创建者kabyl命名。他发现了四叶草和Mac键盘上Commmand键的相似之处,由此起了Clover这个名字

 

EFI

EFI(The Extensible Firmware Interface,可扩展固件接口)是位于操作系统和硬件固件之间的一个软件接口。相对于BIOS那最多64kb的可用空间和运行于16位处理器模式,EFI大小可以达到4MB,运行于32位或64位模式,并且理论上是平台无关的。但实际上想要达到全平台兼容是不可能的。

Clover

Clover是一个操作系统启动加载器(boot loader),能够同时运行于支持EFI方式启动的新式电脑和不支持它的老式电脑上。一些操作系统可以支持以EFI方式启动,比如OS X, Windows 7 64-bit, Linux;也有不支持的,比如Windows XP,它只能通过传统的BIOS方式来启动,也就是通过启动扇区来启动。

EFI不仅存在于操作系统的启动过程中,它还会创建操作系统可访问的表和服务(tables and services),操作系统的运行依赖于EFI正确的提供功能。从内建的UEFI来启动OS X是不可能的,用原始的DUET来启动OS X也不可能。CloverEFI和CloverGUI做了大量的工作来修正内部表,让运行OS X成为可能。

译注:DUET(Developer's UEFI Emulation),开发者的UEFI模拟

 

Clover的任务

  1. 设置SMBIOS (DMI)信息来模拟一台真实的Apple电脑 - 这对于运行OS X系统是必需的。序列号是伪造的,但是有效的。
  2. ACPI表 - 包含在电脑的固件中 - 通常没有被正确的编写而且可能包含bugs,这大多是因为制造商的懒惰:APIC表中包含错误的CPU核心数量,没有NMI数据,FACP表中没有重置寄存器(reset register),错误的电源配置,SSDT表中没有EIST数据,甚至没有DSDT表。Clover试图去修正这些问题。
  3. 接着OS X会从boot loader获取用来描述附加的设备如显卡、网卡或声卡的数据,这些数据就是所谓的EFI字符串(EFI Strings)。Clover产生这些数据。
  4. 基于BIOS的电脑在启动初期,USB运行于旧的模式(legacy mode),当控制权传递给操作系统时,会产生问题。Clover负责改变USB的运行模式。
  5. OS X使用一块特殊的称为NVRAM的内存来进行信息交换,它被包含在运行时服务(RuntimeServices)中(在启动的初期不存在,not present in a legacy loader)。Clover提供这种信息交换,使Firewire功能正常,“启动磁盘”设置面板也可正常使用。附加的NVRAM也用于注册iCloud和iMessage服务。
  6. ConsoleControl协议是必要的并且DUET中没有.
  7. 通过DataHub协议为EFI/Platform填充某些必要的信息,这些信息DUET中没有,而UEFI中也不一定会有。而且会设置非常重要的FSB频率值(FSBFrequency value),因为这个值有时是错的或者根本就没有。
  8. CPU在工作前必须被正确地初始化,但是主板为了兼容大量的不同的CPU,内部表中不包含任何正确的CPU数据。Clover会对安装的CPU做一个完全的检测,修正这些表中的CPU信息。其中的一个效果就是CPU加速模式(turbo mode)能够工作。
  9. 还有一个小问题:DUET和EDK2源码是为了兼容不同的硬件而编写的,但不同的硬件依赖于不同的常量。这意味着每个编译对应一个特定的平台。Clover提供了自动平台检测。

基本概念

Clover支持两种启动方式,启动过程如下:

启动方式A: 基于BIOS的电脑(老式主板)
BIOS>MBR>PBR>boot>CLOVERX64.efi>OSLoader

启动方式B: 基于UEFI的电脑(新式主板)
UEFI>CLOVERX64.efi>OSLoader

Mac OS X的操作系统加载器(OSLoader)是boot.efi, Windows的则是bootmgr.efi

Clover 最新版下载地址

EFI文件时传说中的CD文件需要放到ESP分区内,PKG是安装包方便已经安装好了的童鞋安装到系统引导分区,ISO不用说了吧,跟变色龙差不多,支持传统的BOOT。(iso建议使用EasyBCD 进行菜单添加)

Clover特点

  • 支持UEFI /BIOS
  • 支持UEFI 启动Windows 在白苹果 和普通PC上
  • 可定制的使用界面 支持主题, 图标, 字体, 背景图片 动态图片, 鼠标指针的美化
  • 主题资源请到 http://clover-wiki.zetam.org/Theme-database 下载
  • F1 -多语言帮助, 选择你喜欢的语言进行配置
  • 按F2保存加载日志 和系统日志方便查找BUG
  • 按F4保存原始(OEM) ACPI tables
  • 按F5测试修改后的DSDT
  • 按F6保存videoBIOS 在 EFI/misc
  • 按F10 保存 GUI 屏幕截图
  • 按F12弹出CD/DVD ,光盘插入后重新刷新菜单
  • 按PgUp/PgDown改变GUI 分辨率
  • 保存BOOT0000 选项到 NVRAM (like bcfg in Shell)
  • 默认开机进入之前选择的系统
  • call to Shell.efi
  • 支持你的屏幕的最大分辨率

黑苹果必备引导器四叶草Clover v2.3k r3696版最新下载地址

EFI|http://pan.baidu.com/s/1jIfNVkM

mbr BIOS专用ISO|http://pan.baidu.com/s/1c12e9c0    (建议配合EasyBCD 引导菜单编辑器 添加启动菜单

Pkg|http://pan.baidu.com/s/1bpLtHHd

 

相关推荐:

适用于mbr分区表10.11.5 黑苹果懒人版CDR镜像