Menunjukkan pelancaran persekitaran Linux dengan GNOME pada peranti dengan cip Apple M1

Inisiatif untuk melaksanakan sokongan Linux untuk cip Apple M1, yang dipromosikan oleh projek Asahi Linux dan Corellium, telah mencapai tahap yang memungkinkan untuk menjalankan desktop GNOME dalam persekitaran Linux yang dijalankan pada sistem dengan cip Apple M1. Output skrin disusun menggunakan framebuffer, dan sokongan OpenGL disediakan menggunakan rasterizer perisian LLVMPipe. Langkah seterusnya adalah untuk membolehkan coprocessor paparan mengeluarkan sehingga resolusi 4K, pemacu yang telah direkayasa terbalik.

Projek Asahi telah mencapai sokongan awal untuk komponen bukan GPU SoC M1 dalam kernel Linux utama. Dalam persekitaran Linux yang ditunjukkan, sebagai tambahan kepada keupayaan kernel standard, beberapa patch tambahan yang berkaitan dengan PCIe, pemacu pinctrl untuk bas dalaman dan pemacu paparan telah digunakan. Penambahan ini memungkinkan untuk menyediakan output skrin dan mencapai fungsi USB dan Ethernet. Pecutan grafik belum digunakan.

Menariknya, untuk membuat kejuruteraan terbalik SoC M1, projek Asahi, bukannya cuba membuka pemacu macOS, melaksanakan hypervisor yang berjalan pada tahap antara macOS dan cip M1 dan secara telus memintas dan mencatat semua operasi pada cip. Salah satu ciri SoC M1 yang menyukarkan untuk melaksanakan sokongan untuk cip dalam sistem pengendalian pihak ketiga ialah penambahan coprocessor pada pengawal paparan (DCP). Separuh daripada fungsi pemacu paparan macOS dipindahkan ke sisi coprocessor yang ditentukan, yang memanggil fungsi siap coprocessor melalui antara muka RPC khas.

Peminat telah menghuraikan panggilan yang mencukupi ke antara muka RPC ini untuk menggunakan coprocessor untuk output skrin, serta untuk mengawal kursor perkakasan dan melaksanakan operasi penggubahan dan penskalaan. Masalahnya ialah antara muka RPC bergantung kepada perisian tegar dan berubah dengan setiap versi macOS, jadi Asahi Linux merancang untuk menyokong hanya versi perisian tegar tertentu. Pertama sekali, sokongan akan disediakan untuk perisian tegar yang dihantar dengan macOS 12 "Monterey". Tidak boleh memuat turun versi perisian tegar yang diperlukan, kerana perisian tegar dipasang oleh iBoot pada peringkat sebelum memindahkan kawalan ke sistem pengendalian dan dengan pengesahan menggunakan tandatangan digital.

Menunjukkan pelancaran persekitaran Linux dengan GNOME pada peranti dengan cip Apple M1
Menunjukkan pelancaran persekitaran Linux dengan GNOME pada peranti dengan cip Apple M1


Sumber: opennet.ru

Tambah komen