无忧启动论坛

标题: Clover EFI bootloader又焕发生机了 [打印本页]

作者: artour    时间: 2023-2-8 22:29
标题: Clover EFI bootloader又焕发生机了
本帖最后由 artour 于 2023-2-8 22:41 编辑

概述
Clover 版本:Clover r5151(含 ISO 版、PKG 版、单文件版,全文件 V2 版以及 config 验证工具)

版本发布时间:2023 年 1 月 5 日(之前的项目地址已停运),新的项目地址:https://mac.softpedia.com/get/System-Utilities/Clover-EFI.shtml

「注意」

从 r5120 版开始,Clover 移植了 OpenCore 的 OcQuirks.efi 以及 OpenRuntime.efi 用以替换原有的内存修复程序(AptioMemoryFix.efi),所以 r5120 以下版本不能通过简单替换文件升级;因上面的原因,Clover 文件树新增了 OcQuirks 选项,需要 Clover Configurator 5.16.0.0 及以上版本方能适配,同时也可使用 PlistEdit Pro 或 ProperTree 编辑;
Clover 自 r5122 开始正式集成了 OpenCore 内核,版本号 0.6.3,经实测可以正常安装和升级 macOS 11.0 Big Sur;
Clover 自 r5137 版开始已支持 macOS 12 Monterey ;
Clover 自 r5140 版升级了集成的 OpenCore 内核,新版本号 0.7.3,实测可以正常安装 macOS 12.0.1 Monterey;
Clover 自 r5142 版升级了集成的 OpenCore 内核,新版本号 0.7.5;
Clover 自 r5147 版升级了集成的 OpenCore 内核,新版本号 0.8.2(开发版,20220619);
Clover 自 r5148 版升级了集成的 OpenCore 内核,新版本号 0.8.2(正式版);


Clover
Clover(也叫四叶草)是操作系统引导加载程序,用于已经装有(U)EFI固件的计算机和装有旧版BIOS固件的计算机。操作系统(OS)可能支持(U)EFI(macOS,Windows 7、8或10,Linux或者不支持(U)EFI(Windows XP)。传统legacy引导通常用于最后一个操作系统引导,即Windows XP。



(U)EFI不仅在操作系统引导期间存在,而且还会创建可供操作系统访问的表和服务,并且操作系统的可操作性取决于(U)EFI的正确功能。macOS是无法从普通主板内置的UEFI引导的,也无法使用原始DUET固件仿真来启动macOS。CloverEFI固件仿真和CloverGUI负责处理大量任务,以更正内部表并提供运行macOS的可能性。



(U)EFI
统一可扩展固件接口(Unified Extensible Firmware Interface)或(U)EFI是操作系统和平台固件之间的软件接口。与占用64kb空间并使用16位处理器模式的传统BIOS固件相比,(U)EFI是32位或64位的,允许使用全部内存,并且理论上将其自身定位为与平台无关的。但是现实中不可能与所有平台完全兼容。



macOS
Mac OS是一套运行于苹果Macintosh系列电脑上的基于Unix内核的图形化操作系统,由苹果自行开发。Mac OS是首个在商用领域成功的图形用户界面操作系统。2011年7月20日Mac OS X已经正式被苹果改名为OS X。2016年,OS X改名为macOS,与iOS,tvOS,watchOS相照应。截止本文,最新版本为macOS 11.0 Big Sur,于2020年6月发布。



Clover所解决的macOS引导问题
普通PC是无法安装macOS系统的,但是通过使用Clover EFI BootLoader可以做到这一点。
Clover向SMBIOS(DMI)填充模拟真实Apple Macintosh的数据——这是运行macOS的基本要求。序列号是伪造的,但有效。
PC ROM中包含的ACPI表通常未正确编写,并且可能包含错误,主要是由于制造商比较懒:APIC表中的CPU核心计数不正确,NMI数据丢失,表FACP中的复位寄存器丢失,电源配置文件错误,SSDT表中缺少EIST数据,以及乱七八糟的DSDT表,Clover试图解决这些问题。
OS X更进一步尝试通过EFI字符串从引导加载程序获取描述其他设备(如视频,以太网或声卡)的数据。Clover能生成此类数据。
基于BIOS的计算机在初始引导过程中将以旧模式使用USB,这在将控制权传递给OS时成为问题。Clover将更改USB模式。
macOS使用称为NVRAM的特殊内存进行信息交换,该内存包含在RuntimeServices中(旧式加载器中不提供)。Clover提供了这种信息交换,从而启用了正确的Firewire功能并使用了Startup Disk首选项面板。此外,NVRAM还用于注册iCloud和iMessage服务。
ConsoleControl协议是必需的,并且在DUET中不存在。
有必要通过DataHub协议在EFI / Platform中填充某些数据,该协议在DUET中不存在,在UEFI中并不总是存在。此外,设置了非常重要的FSBFrequency值,该值有时是错误的或完全没有。
在工作之前必须正确初始化CPU,但是由于主板通常可以匹配大量不同型号的CPU,因此内部表中不包含任何正确的CPU数据。Clover对已安装的CPU进行全面检测,更正表和CPU本身,使得CPU可以正确开启睿频模式。
DUET和EDK2源代码是通用编写的,以匹配不同的硬件,但是硬件依赖性本身取决于常量。这意味着针对一个特定平台的编译过程。Clover的目标是普及并提供自动平台检测。


作者: artour    时间: 2023-2-8 22:30
本帖最后由 artour 于 2023-2-8 22:51 编辑

Clover的Config新手设置教程https://www.docin.com/p-2846581879.html

作者: 2010laodu    时间: 2023-2-8 22:37
谢谢分享
作者: yc2428    时间: 2023-2-8 22:45
谢谢分享!
作者: 2048    时间: 2023-2-8 23:03
谢谢大佬的分享
作者: for2008    时间: 2023-2-8 23:16
折腾不动了。
作者: 银狼驰骋    时间: 2023-2-8 23:31
很好的引导程序
作者: legou    时间: 2023-2-9 01:01
弄个视频最好推广,文字太多,没有需求不知道怎么解读
作者: dxhjh    时间: 2023-2-9 07:04

谢谢分享
作者: wfaming    时间: 2023-2-9 07:24
感谢分享
作者: mmymq    时间: 2023-2-9 07:30
谢谢分享
作者: lx5815    时间: 2023-2-9 08:25
感谢楼主分享
作者: lovewangziqiang    时间: 2023-2-9 08:48
菜鸟一枚 留脚印
作者: 2011miyahanni    时间: 2023-2-9 09:02
clover又要起来了?
作者: smalldimple    时间: 2023-2-9 09:06
这个可以支持UOS和KOS吗?
作者: artour    时间: 2023-2-9 10:00
smalldimple 发表于 2023-2-9 09:06
这个可以支持UOS和KOS吗?

是LiunX,在EFI分区安装了引导文件,理论上都可以支持
作者: 2012andyle113    时间: 2023-2-9 11:15
感谢分享吧,一直没有使用过这个引导器
作者: 9527sss    时间: 2023-2-9 11:46
感谢分享
作者: chinaren12    时间: 2023-2-9 13:17
感谢楼主分享,这个启动器还是挺牛逼的,就是参数配置相当麻烦,如果要是有一个智能参数配置的工具出现就好了。
作者: liujun2000    时间: 2023-2-9 14:15
谢谢分享
作者: leitian72853    时间: 2024-6-15 09:23
谢谢分享




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net./) Powered by Discuz! X3.3