Ravi Sharma Ubuntu Foundation Team'ist, viimase aasta jooksul tehtud tööd ARM64 arhitektuuri täie toetuse tagamiseks Ubuntu. Tõdetakse, et tööriistade ja infrastruktuuri parendamine ning muudatuste edendamine Linuxi põhituumikus on võimaldanud aasta jooksul lahendada ARM64-ga seotud spetsiifilisi probleeme, nagu pakettide levitamine eraldi hoidlast, live-patchide toe puudumine tuumas, piiratud võimalused arvutimängude entusiastidele ja Secure Boot'i kättesaamatus Qualcomm Snapdragon'i kiipidega sülearvutites.
Peamised saavutused:
- Pakettide arhitektuur ARM64 on viidud ports.ubuntu.com'ist Ubuntu põhihoidlasse (archive.ubuntu.com), võimaldades kasutada levitamiseks sama infrastruktuuri, mida kasutatakse x86_64 arhitektuuri puhul. ARM64 pakette toimetatakse nüüd esmase peegeldussüsteemi kaudu, mis on suurendanud nende allalaadimise kiirus ja usaldusväärsus. Migratsioon nõudis muudatusi cloud-init, live-build, livecd-rootfs ja ubuntu-release-upgrader paketides. Muudatused on lisatud Ubuntu 26.04 ja on tagaülekanne Ubuntu 24.04 LTS jaoks.
- Livepatch teenus, mis võimaldab teha parandusi Linuxi tuumas töötavas süsteemis ilma taaskäivitamiseta, on levinud ARM64 arhitektuuriga süsteemidesse. Varem levisid live-patchid ainult x86_64 arhitektuuri jaoks, kuna ARM64 tuumas puudus usaldusväärse virnastuse jälgimise (CONFIG_HAVE_RELIABLE_STACKTRACE) tugi katkestuste töötlemisega seotud tegevuse tuvastamiseks, ja objtool ning kpatch tööriistade komplektis ei olnud piisavaid funktsioone patchi rakendamise eelsete ja järgsete seisundite hindamiseks. Live-patchi tugi ARM64 jaoks on saadaval Ubuntu 26.04 LTS ja Ubuntu Core 26 jaoks.
- Stabiilne snap-pakett Steam'i kliendiga, mis on kogutud ARM64 arhitektuuri jaoks, on loodud. Kuna Steam'i klient Linuxi jaoks on saadaval ainult x86 arhitektuuri jaoks, on tema käitamiseks ARM64 süsteemides kasutusel FEX paketi põhine emulatsioonikiht. Emulatsiooni käigus on toetatud GPU edastamist ja Wine'i, Proton'i, DXVK-i ja vkd3d kasutamist arvutimängude täitmiseks, mis on koostatud x86_64 arhitektuuri jaoks ja levitatud Steam'i katalooge. Snap-paketi töö on testitud Qualcomm Snapdragon X Elite, NVIDIA DGX Spark ja Radxa Orion O6 kiibiga sülearvutites.
- Lisatud tugi Qualcomm Snapdragon X Elite kiipide põhiste sülearvutite, nagu Lenovo Thinkpad X13s/T14s ja Dell XPS 9345, jaoks. Alguses lisati tugiteenus nende seadmete jaoks põhiversioonis ARM64 süsteemide ISO-pildiks, kuid seda ei saanud kasutada Secure Boot režiimis, kuna need kasutasid erinevaid seadmekuju konfiguratsioone, mida sülearvutite püsivara ei edastanud Linuxi kerneli. Vajalikud seadmekuju seadistused laaditi GRUB laadijast eraldi failist, mis ei olnud katetud digitaalse allkirjaga.
Probleemi lahendamiseks ühendati kernel ja seadmekuju andmebaas ühte monoliidse EFI-faili, mis sarnaneb UKI (Unified Kernel Image) lähenemisega ning mille elektromagnetiline allkiri on jagatud distributsiooniga. Selle faili laadimiseks loodi uus EFI-kihistumine 'stubble', mis laadimise ajal määrab seadme mudeli SMBIOS-i kaudu, valib õiged seadmekuju andmed ja edastab need kernelile, katkestamata Secure Booti usaldusahelat. Tööd tehakse Snapdragon X2 Elite kiipide põhiste sülearvutite toe rakendamise kallal.
- Valmistatud prototüüp alglaadimisfailist Ubuntu 26.04 põhjal ARM64 SoC CIX P1 sülearvutitele, mis erinevalt Snapdragonist võimaldab konfigureerimist ACPI tabelite kaudu ilma seadmekuju kasutamiseta.
- Google kuulutas välja ametlike Chrome'i kogude väljaandmise Linuxi süsteemidele, mis põhinevad ARM64 arhitektuuril, mis võimaldab ARM64 versioonides Ubuntu's kasutada Chrome'i brauserit, mis sisaldab Widevine CDM (Content Decryption Module) moodulit, mis ei ole saadaval Chromiumis. Widevine'i kohaletoimetamine võimaldab õiguskaitsega kaitstud (DRM) multimeedia sisu vaatamist ilma kolmandate osade paigaldusteta, mis on saadaval sellistes teenustes nagu Netflix, Spotify ja Disney+. Lisaks plaanib Widevine'i toe integreerida snap-packidesse koos Firefoxi ja Spotifyga.
- Lisatud uusi rakenduse kogusid, mis on saadaval snap-vormingus ARM64 arhitektuuri jaoks. Muuhulgas on ARM64 jaoks alustatud snap-pakkide avaldamist OnlyOffice'i, FreeCADi ja Teams for Linux jaoks.
Allikas: opennet.ru
