Mendemonstrasikan peluncuran lingkungan Linux dengan GNOME pada perangkat dengan chip Apple M1

Inisiatif untuk mengimplementasikan dukungan Linux untuk chip Apple M1, yang dipromosikan oleh proyek Asahi Linux dan Corellium, telah mencapai titik di mana desktop GNOME dapat dijalankan di lingkungan Linux yang berjalan pada sistem dengan chip Apple M1. Output layar diatur menggunakan framebuffer, dan dukungan OpenGL disediakan menggunakan rasterizer perangkat lunak LLVMPipe. Langkah selanjutnya adalah mengaktifkan koprosesor tampilan untuk menghasilkan resolusi hingga 4K, yang drivernya telah direkayasa balik.

Project Asahi telah mendapatkan dukungan awal untuk komponen non-GPU SoC M1 di kernel Linux utama. Dalam lingkungan Linux yang didemonstrasikan, selain kemampuan kernel standar, beberapa patch tambahan terkait PCIe, driver pinctrl untuk bus internal, dan driver tampilan juga digunakan. Penambahan ini memungkinkan untuk memberikan keluaran layar dan mencapai fungsionalitas USB dan Ethernet. Akselerasi grafis belum digunakan.

Menariknya, untuk merekayasa balik SoC M1, proyek Asahi, alih-alih mencoba membongkar driver macOS, malah menerapkan hypervisor yang berjalan pada tingkat antara macOS dan chip M1 dan secara transparan mencegat dan mencatat semua operasi pada chip tersebut. Salah satu fitur SoC M1 yang menyulitkan penerapan dukungan chip di sistem operasi pihak ketiga adalah penambahan koprosesor ke pengontrol tampilan (DCP). Setengah dari fungsionalitas driver tampilan macOS ditransfer ke sisi koprosesor yang ditentukan, yang memanggil fungsi koprosesor yang sudah jadi melalui antarmuka RPC khusus.

Penggemar telah menguraikan cukup banyak panggilan ke antarmuka RPC ini untuk menggunakan koprosesor untuk keluaran layar, serta untuk mengontrol kursor perangkat keras dan melakukan operasi pengomposisian dan penskalaan. Masalahnya adalah antarmuka RPC bergantung pada firmware dan berubah pada setiap versi macOS, jadi Asahi Linux berencana untuk hanya mendukung versi firmware tertentu. Pertama-tama, dukungan akan diberikan untuk firmware yang dikirimkan bersama macOS 12 β€œMonterey”. Tidak mungkin mengunduh versi firmware yang diperlukan, karena firmware diinstal oleh iBoot pada tahap sebelum mentransfer kontrol ke sistem operasi dan dengan verifikasi menggunakan tanda tangan digital.

Mendemonstrasikan peluncuran lingkungan Linux dengan GNOME pada perangkat dengan chip Apple M1
Mendemonstrasikan peluncuran lingkungan Linux dengan GNOME pada perangkat dengan chip Apple M1


Sumber: opennet.ru

Tambah komentar