Kernel Linux akan segera mendapatkan dukungan awal untuk chipset M1 Apple

click fraud protection

Kernel Linux versi 5.13 akan menambahkan dukungan awal untuk chip Apple M1, SoC kelas desktop pertama di bawah desain Apple Silicon.

Apple mengungkapkan desain System-on-a-Chip kelas desktop pertamanya tahun lalu, Apple M1, berdasarkan arsitektur ARM yang sama seperti kebanyakan ponsel cerdas dan tablet. Meskipun Linux telah bekerja dengan baik pada perangkat ARM (seperti Raspberry Pi) selama bertahun-tahun, perangkat keras Apple sangat disesuaikan dan memerlukan dukungan perangkat lunak khusus. Untungnya, kini kami selangkah lebih dekat untuk menjalankan Linux di Apple Silicon.

Asahi Linux telah berupaya menghadirkan "pengalaman Linux yang sempurna" ke Apple Silicon Mac dan telah mengirimkan kodenya ke proyek Linux untuk dimasukkan ke dalam kernel Linux resmi. Karya awal grup ini telah digabungkan ke dalam basis kode SoC Linux, dan kemungkinan akan hadir sebagai bagian dari pembaruan Linux 5.13 mendatang.

Sangat menyenangkan melihat dukungan awal untuk perangkat keras baru Apple hadir di kernel Linux hanya beberapa bulan setelah perangkat keras pertama mulai dikirimkan, namun kata kuncinya adalah 'awal'. Sedangkan Linux

secara teknis boot pada M1, kita masih jauh dari menyambungkan drive USB Langsung dan mengklik tombol instal. Kode saat ini mencakup dukungan untuk fungsionalitas dasar tingkat rendah, seperti multiprosesor simetris melalui meja putar, penanganan IRQ, koneksi serial, dan framebuffer. Linux dapat melakukan booting melalui command prompt, namun tidak banyak lagi yang lain — bahkan belum ada dukungan grafis penuh.

Linux di Apple M1 Mac Mini (Kredit: Asahi Linux)

Meskipun dukungan kernel resmi untuk perangkat keras M1 berkembang dengan kecepatan yang stabil, beberapa orang telah berhasil mendekati pengalaman desktop sebenarnya dengan berbagai peretasan. Corellium, sebuah perusahaan pengembangan yang berspesialisasi dalam virtualisasi ARM, mampu menciptakan desktop Ubuntu yang dapat digunakan di M1 Mac Mini. Namun, sebagian besar pekerjaan Corellium tidak di-upstream ke kernel Linux.

Corellium menulis tentang perbedaan arsitektur M1 dari desain ARM lainnya dalam postingan blog. Bootloader, yang secara tradisional disebut iBoot, memuat file objek yang dapat dieksekusi dalam format yang disebut Mach-O, secara opsional dikompresi dan dibungkus dalam format pembungkus berbasis ASN.1 bertanda tangan yang disebut IMG4. Sebagai perbandingan, Linux normal pada ARM 64-bit dimulai sebagai gambar biner datar." Kelompok tersebut melanjutkan dengan mengatakan, "jika itu belum cukup, Apple merancang pengontrol interupsi mereka sendiri, Apple Interrupt Controller (AIC), tidak kompatibel dengan salah satu ARM GIC utama standar. Dan tidak hanya itu: interupsi pengatur waktu - biasanya terhubung ke interupsi per CPU biasa di ARM - juga ada alih-alih dialihkan ke FIQ, fitur arsitektur yang sulit dipahami, lebih sering terlihat di ARM 32-bit lama hari."

Apel chipset M1 saat ini dikirimkan di MacBook Air, MacBook Pro, dan Mac Mini. Ini adalah chip 5nm dengan total delapan inti: empat inti berkinerja tinggi, dan empat inti hemat daya. Ada juga Neural Engine untuk tugas pembelajaran mesin, serta GPU delapan inti. Apple berjanji bahwa M1 akan memberikan kinerja yang lebih baik daripada CPU Intel yang digunakan sebelumnya dengan hanya menggunakan sekitar seperempat daya, dan kemudian pengujian dunia nyata mendukung klaim tersebut. Untungnya, M1 sepenuhnya mendukung booting kernel yang tidak ditandatangani/disesuaikan, jadi menjalankan Linux tidak memerlukan eksploitasi keamanan apa pun yang dapat ditambal nanti.

MacOS milik Apple sudah menjadi sistem operasi yang hebat, tetapi menjadikan Linux desktop sebagai pilihan bisa menjadi nilai jual yang kuat bagi beberapa calon pembeli MacBook dan Mac Mini. Apple telah menghadapi kritik selama bertahun-tahun karena mengunci beberapa aspek macOS atau mengabaikan standar lintas platform demi alternatif kepemilikan. Misalnya, macOS masih belum mendukung Vulkan API lintas platform untuk grafis, hanya API Logam milik perusahaan.