OcQuirks 引導程序

Spread the love

OcQuirks

OcQuirks是Clover的替代EFI驅動程序的替代品,它替代了AptioMemoryFix和所有OsxAptioFix變體。它是針對OpenCore源代碼樹構建的,並支持OpenCore的怪癖模型。

先決條件

OcQuirks EFI驅動程序依賴於FwRuntimeServices.efi,並且必須將它們一起安裝在CLOVER EFI驅動程序目錄中。可以在AppleSupportPkg中找到FwRuntimeServices.efi。

從項目的發行頁面下載AppleSupportPkg 。

安裝

要安裝OcQuirks,請下載最新版本或按照以下說明進行構建,然後將其安裝到EFI中,以替換任何現有的內存修復驅動程序。

  • 掛載您的EFI音量。
  • 將您的EFI卷備份到可啟動的USB驅動器,並驗證它是否可以工作。
  • 從EFI卷上的Clover驅動程序文件夾中刪除AptioMemoryFix和所有OsxAptioFix變體。
  • 將OcQuirks.efi和FwRuntimeServices.efi添加到EFI卷上的Clover drivers文件夾中。
  • 重啟。

如果您的系統無法啟動,請使用USB記憶棒啟動回macOS,然後通過相反的過程進行還原。檢查以下參數,並使用與您的系統更匹配的參數構建OcQuirks。

默認參數

Quirk默認值描述
AvoidRuntimeDefragYes修復了許多固件上的UEFI運行時服務支持。
DevirtualiseMmio減少內存映射中被盜的內存佔用,與某些系統不兼容
DisableSingleUser忽略單用戶模式參數的安全選項。
DisableVariableWrite一種安全選項,用於保護macOS NVRAM寫入訪問。
放棄休眠地圖用於解決有問題的內存映射的舊參數。從S4睡眠喚醒後,保留運行時內存的大小和位置。
EnableSafeModeSlide真正修補引導加載程序以在安全模式下啟用KASLR。
EnableWriteUnprotector真正允許對UEFI運行時服務代碼進行寫訪問。
ForceExitBootServices真正確保即使使用了過期的MemoryMap密鑰,對ExitBootServices的調用也會成功。
ProtectCsmRegion防止CSM內存區域重定位或使用。
ProvideCustomSlide真正強制macOS在可用的幻燈片值中使用偽隨機值。
SetupVirtualMap真正在SetVirtualAddress調用之後訪問內存的某些固件中的解決方法問題通常會導致啟動崩潰。
ShrinkMemoryMap在Haswell或更高版本上很少需要嘗試統一相似類型的連續插槽以防止引導失敗。
QuirksProvideConsoleGopEnable真正如果控制台手柄中缺少圖形輸出協議,請安裝。

有關怪癖的更詳細說明,請查閱《OpenCore配置手冊》

建造

構建OcQuirks很簡單,您只需要macOS和時間。查看上表以確定在構建之前是否需要對OcQuirks進行任何修改,然後按照以下過程進行操作。

克隆存儲庫

$ git clone https://github.com/ReddestDream/OcQuirks.git
$ cd OcQuirks

配置OcQuirks

運行ConfigureQuirks實用程序,然後使用菜單系統對源進行任何必要的更改。

$ ./ConfigureQuirks.command

建立OcQuirks

現在,使用macbuild工具構建OcQuirks。編譯開始之前,系統可能會提示您安裝其他工具。

$ ./macbuild.tool

安裝

使用OcQuirks / Binaries / RELEASE文件夾中的新編譯版本的OcQuirks,按照文檔前面的安裝過程進行操作。

學分

OcQuirks

OcQuirks是Clover的替代EFI驅動程序的替代品,它替代了AptioMemoryFix和所有OsxAptioFix變體。它是針對OpenCore源代碼樹構建的,並支持OpenCore的 OCQuirks 模型。

先決條件

OcQuirks EFI驅動程序依賴於FwRuntimeServices.efi,並且必須將它們一起安裝在CLOVER EFI驅動程序目錄中。可以在AppleSupportPkg中找到FwRuntimeServices.efi。

從項目的發行頁面下載AppleSupportPkg 。

安裝

要安裝OcQuirks,請下載最新版本或按照以下說明進行構建,然後將其安裝到EFI中,以替換任何現有的內存修復驅動程序。

  • 掛載您的EFI音量。
  • 將您的EFI卷備份到可啟動的USB驅動器,並驗證它是否可以工作。
  • 從EFI卷上的Clover驅動程序文件夾中刪除AptioMemoryFix和所有OsxAptioFix變體。
  • 將OcQuirks.efi和FwRuntimeServices.efi添加到EFI卷上的Clover drivers文件夾中。
  • 重啟。

如果您的系統無法啟動,請使用USB記憶棒啟動回macOS,然後通過相反的過程進行還原。檢查以下參數,並使用與您的系統更匹配的參數構建OcQuirks。

默認參數

Quirk默認值描述
AvoidRuntimeDefrag真正修復了許多固件上的UEFI運行時服務支持。
DevirtualiseMmio減少內存映射中被盜的內存佔用,與某些系統不兼容
DisableSingleUser忽略單用戶模式參數的安全選項。
DisableVariableWrite一種安全選項,用於保護macOS NVRAM寫入訪問。
DiscardHibernateMap用於解決有問題的內存映射的舊參數。從S4睡眠喚醒後,保留運行時內存的大小和位置。
EnableSafeModeSlide真正修補引導加載程序以在安全模式下啟用KASLR。
EnableWriteUnprotector真正允許對UEFI運行時服務代碼進行寫訪問。
ForceExitBootServices真正確保即使使用了過期的MemoryMap密鑰,對ExitBootServices的調用也會成功。
ProtectCsmRegion防止CSM內存區域重定位或使用。
ProvideCustomSlide真正強制macOS在可用的幻燈片值中使用偽隨機值。
SetupVirtualMap真正在SetVirtualAddress調用之後訪問內存的某些固件中的解決方法問題通常會導致啟動崩潰。
ShrinkMemoryMap在Haswell或更高版本上很少需要嘗試統一相似類型的連續插槽以防止引導失敗。
QuirksProvideConsoleGopEnable真正如果控制台手柄中缺少圖形輸出協議,請安裝。

有關怪癖的更詳細說明,請查閱《OpenCore配置手冊》

建造

構建OcQuirks很簡單,您只需要macOS和時間。查看上表以確定在構建之前是否需要對OcQuirks進行任何修改,然後按照以下過程進行操作。

克隆存儲庫

$ git clone https://github.com/ReddestDream/OcQuirks.git
$ cd OcQuirks

配置OcQuirks

運行ConfigureQuirks實用程序,然後使用菜單系統對源進行任何必要的更改。

$ ./ConfigureQuirks.command

建立OcQuirks

現在,使用macbuild工具構建OcQuirks。編譯開始之前,系統可能會提示您安裝其他工具。

$ ./macbuild.tool

安裝

使用OcQuirks / Binaries / RELEASE文件夾中的新編譯版本的OcQuirks,按照文檔前面的安裝過程進行操作。

學分