Demonstroitu Linux-ympäristön käynnistäminen GNOMElla laitteissa, joissa on Apple M1 -siru

Asahi Linux- ja Corellium -projektien edistämä aloite Linux-tuen toteuttamisesta Apple M1 -sirulle on saavuttanut pisteen, jossa GNOME-työpöytää on mahdollista ajaa Linux-ympäristössä, jossa on Apple M1 -siru. Näytön tulosteet järjestetään kehyspuskurin avulla, ja OpenGL-tuki tarjotaan LLVMPipe-ohjelmiston rasterointityökalulla. Seuraava askel on mahdollistaa näytön apuprosessorin tulostaminen jopa 4K-resoluutiolla, jonka ajurit on jo käännetty.

Project Asahi on saavuttanut alustavan tuen Linuxin pääytimen M1 SoC:n ei-GPU-komponenteille. Esitetyssä Linux-ympäristössä käytettiin tavallisen ytimen ominaisuuksien lisäksi useita PCIe:hen liittyviä lisäkorjauksia, sisäisen väylän pinctrl-ohjainta ja näytönohjainta. Nämä lisäykset mahdollistivat näytön ulostulon ja USB- ja Ethernet-toiminnallisuuden. Grafiikkakiihdytystä ei vielä käytetä.

Mielenkiintoista on, että M1 SoC:n käänteissuunnittelua varten Asahi-projekti otti käyttöön hypervisorin, joka toimii macOS:n ja M1-sirun välisellä tasolla ja sieppaa ja kirjaa läpinäkyvästi kaikki sirun toiminnot, sen sijaan, että se yritti purkaa macOS-ajureita. Yksi SoC M1:n ominaisuuksista, joka vaikeuttaa sirun tuen toteuttamista kolmannen osapuolen käyttöjärjestelmissä, on apuprosessorin lisääminen näytönohjaimeen (DCP). Puolet macOS-näytönohjaimen toiminnallisuudesta siirretään määritellyn apuprosessorin puolelle, joka kutsuu apuprosessorin valmiita toimintoja erityisen RPC-rajapinnan kautta.

Harrastajat ovat jo jäsentäneet tarpeeksi kutsuja tälle RPC-rajapinnalle käyttääkseen apuprosessoria näytön ulostuloon, sekä ohjatakseen laitteistokohdistinta ja suorittaakseen kompositio- ja skaalaustoimintoja. Ongelmana on, että RPC-liitäntä on laiteohjelmistoriippuvainen ja muuttuu jokaisen macOS-version myötä, joten Asahi Linux aikoo tukea vain tiettyjä laiteohjelmistoversioita. Ensinnäkin tukea tarjotaan laiteohjelmistolle, joka toimitetaan macOS 12 "Monterey" kanssa. Vaadittua laiteohjelmistoversiota ei ole mahdollista ladata, koska iBoot asentaa laiteohjelmiston vaiheessa ennen ohjauksen siirtämistä käyttöjärjestelmään ja digitaalisella allekirjoituksella varmennuksella.

Demonstroitu Linux-ympäristön käynnistäminen GNOMElla laitteissa, joissa on Apple M1 -siru
Demonstroitu Linux-ympäristön käynnistäminen GNOMElla laitteissa, joissa on Apple M1 -siru


Lähde: opennet.ru

Lisää kommentti