Linux su Apple M1: ecco il secondo progress report di Asahi Linux

Ultimo aggiornamento:19 Agosto 2021

A gennaio vi ho parlato del progetto Asahi Linux, portato avanti dallo sviluppatore giapponese Hector Martin, noto anche come “marcan”. Martin ambisce a creare un port Linux per Apple Silicon. Ha promesso di aggiornare periodicamente la community circa le novità e i passi avanti fatti… dopo 5 mesi dal primo progress report in questi giorni ha pubblicato sul blog ufficiale il secondo aggiornamento sullo stato dei lavori.

Posso dirvi subito che il sistema ora funziona, è possibile utilizzare Asahi Linux come macchina di sviluppo, seppur con diverse limitazioni importanti come l’assenza di accelerazione grafica. Martin fa capire ancora una volta le difficoltà nel creare un porting di una piattaforma creata da Apple al solo scopo di eseguire un sistema proprietario. Eseguire il reverse engineering del SoC ARM M1, usato nel Mac Mini e nel nuovo iPad Pro, è una sfida molto ardua.

Un hypervisor per Asahi Linux

Non potendo effettuare il reverse engineering dei driver (per motivi legali e di copyright) Martin e il suo team hanno creato un hypervisor, parzialmente scritto in Python, da frapporre tra macOS e il processore M1 per intercettare (e capire) lo scambio che avviene tra hardware e software. L’hypervisor si appoggia al bootloader m1n1 del quale vi ho già dato diversi dettagli nell’articolo di marzo. Per chi fosse interessato ulteriori dettagli implementativi sono stati spiegati da Martin in un video pubblicato su Youtube.

Oltre all’hypervisor, gli sviluppatori hanno creato un framework di tracciamento I/O, che consente di capire come funziona ogni singolo componente hardware. Ad esempio, sono in grado di capire come e quando macOS decide di testare o cambiare la configurazione di ciascun pin GPIO.

DCP

Il framework di cui sopra si è rivelato fondamentale per effettuare il reverse engineering del DCP. Una delle sfide più complesse è far funzionare la GPU dell’M1. La GPU si compone di due parti:

  • la GPU vera e propria che esegue il rendering dei frame in memoria
  • il display controller, che manda i frame dalla memoria al display

Proprio sul display controller hanno incontrato delle difficoltà in quanto Apple ha complicato le cose aggiungendo un coprocessore al display engine (o DCP) che usa un firmware proprietario. Il DCP comunica poi con il processore ed è stato quindi necessario approfondire la natura di questo componente al fine di creare un apposito driver. Attualmente è ancora tutto Work in progress.

Installer

Martin e Co. si sono impegnati a sviluppare un installer che guidi l’utente al completamento dell’installazione di m1n1. Il lancio dell’installer avviene mediante uno script shell. Ad oggi si tratta di una versione pensata per gli sviluppatori, in futuro sarà resa maggiormente user friendly, in modo da consentire anche il partizionamento del disco.

asahi bootpicker

Triple booting?

Altri driver

Sven, collega di Martin, si è dedicato al driver per DART, ovvero l’IOMMU (I/O Memory Management Unit) di M1. Questo driver è necessario per far funzionare PCIe, USB e DCP. Altri stanno lavorando ai driver per GPIO, I²C, SPI e NVMe.

sharing-caring-1

Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.

Fonte: https://www.lffl.org/2021/08/linux-apple-m1-secondo-progress-report-asahi-linux.html

Visited 1 times, 1 visit(s) today
Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!

Hai dubbi o problemi? Ti aiutiamo noi!

Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.
Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.
Amazon Music
Scopri le ultime offerte per dischi ssd su Acquista su Amazon
Scopri le ultime offerte per memorie RAM DDR su Acquista su Amazon
Scopri le ultime offerte per Chromebook su Acquista su Amazon
Scopri le ultime offerte per Raspberry su Acquista su Amazon

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.