Ergebnisse der Initiative zur vollstĂ€ndigen UnterstĂŒtzung von ARM64 in Ubuntu

Ravi Sharma vom Ubuntu Foundations Team hat die Ergebnisse der Arbeit zusammengefasst, die im letzten Jahr fĂŒr die vollstĂ€ndige UnterstĂŒtzung der ARM64-Architektur in Ubuntu unternommen wurde. Es wird angemerkt, dass durch die Verbesserung der Werkzeuge und Infrastruktur sowie die Umsetzung von Änderungen im Kern von Linux spezifische Probleme fĂŒr ARM64 gelöst werden konnten, wie die Verbreitung von Paketen ĂŒber ein separates Repository, das Fehlen der UnterstĂŒtzung von Live-Patches fĂŒr den Kernel, eingeschrĂ€nkte Möglichkeiten fĂŒr Computerspieler und die Nichterreichbarkeit von Secure Boot auf Laptops mit Qualcomm Snapdragon-Chips.

Wesentliche Errungenschaften:

  • Pakete fĂŒr die ARM64-Architektur wurden aus den Ports (ports.ubuntu.com) in das Hauptarchiv von Ubuntu (archive.ubuntu.com) ĂŒbertragen, was die Nutzung der gleichen Infrastruktur fĂŒr ihre Verbreitung ermöglichte, die auch fĂŒr die x86_64-Architektur verwendet wird. Pakete fĂŒr ARM64 werden jetzt ĂŒber das primĂ€re Spiegelserversystem bereitgestellt, was die Geschwindigkeit und ZuverlĂ€ssigkeit beim Herunterladen erhöht hat. Die Migration erforderte Änderungen an den Paketen cloud-init, live-build, livecd-rootfs und ubuntu-release-upgrader. Diese Änderungen sind Bestandteil von Ubuntu 26.04 und werden fĂŒr Ubuntu 24.04 LTS zurĂŒckportiert.
  • Der Livepatch-Dienst, der es ermöglicht, Korrekturen im Linux-Kernel auf einem laufenden System ohne Neustart einzufĂŒhren, wurde auf Systeme mit ARM64-Architektur ausgeweitet. Zuvor wurden Live-Patches nur fĂŒr die x86_64-Architektur angeboten, da im Linux-Kernel fĂŒr ARM64 keine UnterstĂŒtzung fĂŒr zuverlĂ€ssige Stack-Traces (CONFIG_HAVE_RELIABLE_STACKTRACE) zur Identifizierung von AktivitĂ€ten im Zusammenhang mit der Unterbrechungsverarbeitung vorhanden war, und die Werkzeuge objtool und kpatch keine vollstĂ€ndigen Möglichkeiten zur Bewertung des Zustands vor und nach der Anwendung eines Patches boten. Die UnterstĂŒtzung fĂŒr Live-Patches fĂŒr ARM64 steht fĂŒr Ubuntu 26.04 LTS und Ubuntu Core 26 zur VerfĂŒgung.
  • Ein stabiler Snap-Paket mit dem Steam-Client wurde fĂŒr die ARM64-Architektur erstellt. Da der Steam-Client fĂŒr Linux nur fĂŒr die x86-Architektur verfĂŒgbar ist, wird zur AusfĂŒhrung auf ARM64-Systemen eine Emulationsschicht auf Basis des FEX-Pakets verwendet. Bei der Emulation wird die Durchleitung von GPU und die Nutzung von Wine, Proton, DXVK und vkd3d unterstĂŒtzt, um Computerspiele auszufĂŒhren, die fĂŒr die x86_64-Architektur erstellt und ĂŒber das Steam-Katalog verbreitet werden. Die FunktionalitĂ€t des Snap-Pakets wurde auf Laptops mit Qualcomm Snapdragon X Elite, NVIDIA DGX Spark und Radxa Orion O6 getestet.
  • Die UnterstĂŒtzung von Laptops auf Basis der Qualcomm Snapdragon X Elite-Chips, wie dem Lenovo Thinkpad X13s/T14s und dem Dell XPS 9345, wurde hinzugefĂŒgt. ZunĂ€chst wurde die UnterstĂŒtzung fĂŒr diese GerĂ€te in das Basis-ISO-Image fĂŒr ARM64-Systeme aufgenommen, es war jedoch nicht möglich, im Secure Boot-Modus zu laden, da separate Device Tree-Konfigurationen verwendet wurden, die die Firmware der Laptops nicht an den Linux-Kernel ĂŒbermittelte. Die erforderlichen Device Tree-Einstellungen wurden vom GRUB-Bootloader aus einer separaten Datei geladen, die nicht von der digitalen Signatur abgedeckt war.

    Um das Problem zu lösen, wurden der Kernel und die Device Tree-Datenbank in einer einzigen monolithischen EFI-Datei zusammengefĂŒhrt, die einer digitalen Signatur der Distribution Ă€hnelt (UKI – Unified Kernel Image). FĂŒr das Laden dieser Datei wurde eine neue EFI-Schicht namens „stubble“ erstellt, die beim Booten das GerĂ€t ĂŒber SMBIOS identifiziert, die benötigten Device Tree-Daten auswĂ€hlt und diese in den Kernel einfĂŒgt, ohne die Vertrauenskette des Secure Boot zu gefĂ€hrden. Es wird an der Implementierung der UnterstĂŒtzung fĂŒr Laptops mit Snapdragon X2 Elite-Chips gearbeitet.

  • Ein Prototyp eines Boot-Images auf Basis von Ubuntu 26.04 fĂŒr Laptops mit ARM64 SoC CIX P1 wurde vorbereitet, der im Gegensatz zu Snapdragon die Konfiguration ĂŒber ACPI-Tabellen ohne Verwendung von Device Tree bestimmen kann.
  • Google hat die Veröffentlichung offizieller Chrome-Builds fĂŒr Linux-Systeme auf ARM64-Architektur angekĂŒndigt, was es ermöglicht, in ARM64-Builds von Ubuntu den Chrome-Browser zu betreiben, der das Content Decryption Module (CDM) Widevine enthĂ€lt, welches in Chromium nicht verfĂŒgbar ist. Die Bereitstellung von Widevine ermöglicht es, urheberrechtlich geschĂŒtzte (DRM) Medieninhalte, die auf Diensten wie Netflix, Spotify und Disney+ veröffentlicht werden, ohne externe Patches anzusehen. DarĂŒber hinaus wird die UnterstĂŒtzung von Widevine in Snap-Pakete mit Firefox und Spotify integriert.
  • Neue Anwendungsbuilds im Snap-Format fĂŒr die ARM64-Architektur wurden hinzugefĂŒgt. Unter anderem wurde die Veröffentlichung von Snap-Paketen mit OnlyOffice, FreeCAD und Teams fĂŒr Linux fĂŒr ARM64 gestartet.

Quelle: opennet.ru

ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server đŸ”„ ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster