close

Asahi Linux 項目團隊在博客文章中寫道,他們嘗試瞭在 Apple Silicon 系統上設置備用啟動內核。雖然已實現大多數功能,但還是缺乏對安裝非蘋果內核的命令支持。

Apple Insider 指出,主要障礙在於 Apple Silicon 的啟動方式與 PC 存在很大的不同。與常見的計算機相比,它更像是一個嵌入式平臺(類似 Android / iOS)。

深入分析發現,蘋果有努力讓 Apple Silicon 平臺的啟動過程更接近於 Intel Mac,但兩者仍存在著一些差異、尤其是某些量身定制的運行機制。

這些差異會導致某些意外的行為,比如對於從外部存儲進行啟動的處理方式、引導加載程序未能呈現圖形用戶界面(GUI)。

此外啟動項選擇器(Boot Picker)隻是一款全屏顯示的 macOS 應用程序,而不是引導加載程序的一部分。

基於此,開發者認為 Apple Silicon Mac 的啟動過程不基於任何現有標準,而是沿用瞭自 iOS 早期逐漸發展起來的蘋果定制運行機制。

(來自:Asahi Linux 進度報告)

作為引導過程的一部分,蘋果設備樹(Apple Device Tree)也基於開放固件標準,且該規范曾用於引導早期的 PowerPC Mac 。

遺憾的是,由於缺乏有關數據表示的高級詳情,第三方無法輕易地實現二進制格式的自動化差異轉換。

Asahi Linux 項目團隊聲稱:“試圖統一蘋果和 Linux 關於設備樹應該如何工作的想法,將會是一場難以克服的噩夢”。

為瞭攻克這方面的難題,項目團隊已經開發瞭用於 Apple Silicon Mac 的 m1n1 引導程序。

據悉,這項工作源於早期用於檢查任天堂 Wii 的最小環境。經過相應的修改,項目團隊得以開始記錄蘋果的自定義 ARM 指令、系統寄存器、以及中斷控制器等硬件。

同時 Asahi Linux 團隊與 Corellium 攜手努力,以期將 Linux 順利移植到 M1 平臺。

1 月份的時候,Corellium 曾提及類似的非傳統啟動過程、並且使用瞭非標準的控制器,從而設法啟動瞭 Linux 。

然而與基於 Intel 芯片的 macOS 應用程序遷移工作相比,Apple Silicon 的第三方系統移植工作還是要困難得多。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Ken641228 的頭像
    Ken641228

    Ken641228的部落格

    Ken641228 發表在 痞客邦 留言(0) 人氣()