OpenCore引导配置说明第五版

一、 OC配置的基本条件与工具软件

1.1、 准备Mac平台,包括实体机平台和虚拟机平台。
1.2、 下载最新镜像并核对MD5,制作安装U盘。
1.3、 工具软件:
OpenCore Configurator(持续更新中),
Hackintool(综合工具),
PlistEdit Pro(Plist文件工具),
IORegistryExplorer(路径工具),
BetterZip(解压软件)。
1.4、基本流程:
A208C1FB
1.6、OpenCore基本架构
20FA323E

二、 配置准备:

2.0、 Mac平台准备

没有Mac平台的,可以参阅Windows10下Vmware15.5虚拟机安装苹果macOS Catalina 10.15.4,建立Mac平台,已有Mac平台可以跳过此步。

2.1、 下载最新镜像,核对MD5

利用下载的最新镜像,制作安装U盘。(用磁盘工具抹掉U盘,扩展日志式/GUID)

2.2、OC-EFI包

下载最新0.5.7/0.5.8/0.5.9-OC包

放到桌面。里面包含Docs与Utilities后面将会用到。并改名为OC-EFI,便于识别。

2.3、ACPI文件(SSDT)

将下载的SSDT包里面的DSDT/SSDT拷贝到OC-EFI-OC-ACPI`里面。注意,除非你清楚这些DSDT/SSDT的明确作用,否则,能不用就不要用!

2.4、驱动转移

将下载的Kext包里面所有驱动全部拷贝到OC-EFI-OC-Kexts`里面。同样道理,除非你清楚这些驱动的用途,否则删除不明用途的驱动

2.6、config.plist文件

将OC包/Docs里面的范例Sample.plist或SampleFull.plist之一拷贝到OC-EFI-OC里面,并改名为config.plist。

2.7、config.plist文件处理

分别用相应的配置工具打开OC-config.plist。

三、 开始配置OC-config.plist

3.1、Config-ACPI设置:
3.1.1、config-ACPI-添加(Add):

先删除范例里面所有DSDT/SSDT,点浏览,到OC-EFI/OC/ACPI,选取所有你使用的DSDT/SSDT。(再次建议:,特别是台式机,能不用DSDT/SSDT的,就不要用,除非你精通且清楚了解DSDT/SSDT的作用!)参阅面向小白的OC快速无脑配置-基于OpenCore-0.5.8-04-23编译版

3.1.2、config-ACPI-阻止(Block)Delete(05-17改名):

除非你明白确切意义,一般不用。

3.1.3、config-ACPI-补丁(Patch):

建议,逐个调试删除,保留最少的、必要的热补丁。我已经遇到不止一个例子,由于乱用热补丁且不明白这些热补丁的明确作用,导致无法正常引导。特别是笔记本。
下面是10.15.x常用的2个补丁:
更改控制器EC0名称

Comment:EC0 to EC
Find:4543305F 
Replace:45435F5F 

解决RTC问题:

Comment:Fix AsRock Z390 BIOS DSDT Device(RTC) bug
Find:A00A9353 54415301 
Replace:A00A910A FF0BFFFF 
EC8261FE
3.1.4、config-ACPI-Quirks:
  • FadtEnableReset:主要用于老旧主板的开关机功能,如果你关机变重启,可以勾选,一般情况下不勾选
  • ReseHwSig:与休眠有关的选项,台式机一般不用,不勾选
  • NormalizeHeaders:清理ACPI头,一般勾选,如果有相应的热补丁,可以不勾选
  • RebaseRegions:更换硬件或升级BIOS可能对ACPI产生影响,一般不勾选。如果遇到卡PCI Configuration Begin,就勾选试试。
  • Resetlogstatus:重置日志,一般不勾选
D6777DE0
3.2、Config-Booter设置
3.2.1、config-Booter-MmioWhitelist(内存映射IO白名单)

默认第一项是为Haswell芯片提供内存寻址修复,此类芯片如果遇到内存相关问题,就勾选启用。 默认第二项是开机卡PCI Configuration。ACPI、PCI device同时释放到内存时发生0x1000内存地址被占用而卡在PCI Configuration,则勾选,否则无视!

3.2.2、config-Booter-Quirks:

此设置与OpenRuntime.efi有密切关系,OpenRuntime.efi将一些功能与OC合并、模块化。对于300系列等无法原生nvram的主板来说,此处的选项需要格外关注!

  • AvoidRuntimeDefrag:绝大部分UEFI都会写入时间、电源管理等信息,只要是苹果,此项必须勾选
  • DevirtualiseMmio:一般情况下,采用slide=1的方式进行连续性内存注入,故一般不勾选,除非你的机器用了KASLR方式。(台式机基本没有)。
  • DisableSingleUser:是否开启单用户模式(-s)。一般不勾选
  • DisableVariableWrite:非原生nvram主板需要模拟nvram.plist写入variable值,所以非原生nvram主板必须勾选原生nvram主板不勾选经过测试非原生nvram主板(主要是300系列主板)使用SSDT-PMC以后,就可以当原生nvram主板使用,不用勾选此项。
  • DiscardHibernateMap:这个选项帮助我们解决下面的冲突:当电脑从休眠中唤醒时,硬盘里面的资料会恢复到内存中去,此时OC内核以及内核缓存也要写入,二者可能产生冲突。就目前而言,台式机无视休眠功能,故,不勾选
  • EnableSafeModeSlide:安全模式下(-x)是否用连续性的内存注入方式,一般勾选
  • EnableWriteUnprotector:允许对UEFI服务代码的写入,该选项通过删除写保护(WP)来绕过UEFI运行时服务的代码页中的RX权限。一般是勾选
  • ForceExitBootServices:为让老旧主板也能使用内存寻址,正常情况下,不勾选,除非你的额主板很老很旧。至于何为老旧主板,自己根据实践摸索试验。
  • ProtectMemoryRegions:确保CSM内存区域标记为ACPI NVS,以防止boot.efi或XNU重新定位或使用它们。但是由于AvoidRuntimeDefrag解决了类似的问题。默认不勾选(false)除非一些老旧主板可能需要勾选,需要测试。
  • ProtectSecureBoot:保护UEFI安全引导变量写入参数时不被干扰而引起冲突,默
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

独行秀才

你的鼓励是我创作的最大动力!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值