Ergebnisse der Initiative zur umfassenden Unterstützung von ARM64 in Ubuntu

Ravi Sharma vom Ubuntu Foundations Team hat die im letzten Jahr geleistete Arbeit zusammengefasst, um die vollständige Unterstützung der ARM64-Architektur in Ubuntu sicherzustellen. Es wird hervorgehoben, dass durch die Verbesserung der Tools und Infrastruktur sowie die Förderung von Änderungen im Kernel von Linux spezifische Probleme für ARM64 gelöst werden konnten, wie beispielsweise die Bereitstellung von Paketen über ein separates Repository, die fehlende Unterstützung von Live-Patches für den Kernel, begrenzte Möglichkeiten für Computer-Spieler und die Nichtverfügbarkeit von Secure Boot auf Laptops mit Qualcomm Snapdragon-Chips.

Hauptleistungen:

  • Pakete für die ARM64-Architektur wurden von den Ports (ports.ubuntu.com) in das Hauptarchiv von Ubuntu (archive.ubuntu.com) übertragen, was es ermöglicht hat, die gleiche Infrastruktur für deren Verteilung zu nutzen, die auch für die x86_64-Architektur verwendet wird. Pakete für ARM64 werden jetzt über das primäre Spiegelgebiet bereitgestellt, was die Geschwindigkeit und Zuverlässigkeit bei deren Download erhöht hat. Die Migration erforderte Änderungen an den Paketen cloud-init, live-build, livecd-rootfs und ubuntu-release-upgrader. Diese Änderungen sind Teil von Ubuntu 26.04 und werden derzeit nachträglich für Ubuntu 24.04 LTS implementiert.
  • Der Livepatch-Service ermöglicht es, Korrekturen am Linux-Kernel in einem aktiven System ohne Neustart vorzunehmen. Er ist nun auch für Systeme auf der ARM64-Architektur verfügbar. Zuvor wurden Live-Patches nur für die Architektur x86_64 angeboten, da im Linux-Kernel für die ARM64-Architektur die Unterstützung für zuverlässige Stack-Traces (CONFIG_HAVE_RELIABLE_STACKTRACE) zur Identifizierung von Aktivitäten, die mit der Interrupt-Verarbeitung verbunden sind, fehlte. Außerdem boten die Werkzeuge objtool und kpatch keine umfassenden Funktionen zur Bewertung des Zustands vor und nach der Anwendung eines Patches. Die Unterstützung von Live-Patches für ARM64 ist nun für Ubuntu 26.04 LTS und Ubuntu Core 26 verfügbar.
  • Ein stabiler Snap-Paket mit dem Steam-Client wurde für die Architektur ARM64 erstellt. Da der Steam-Client für Linux nur für die Architektur x86 verfügbar ist, wird für seine Ausführung auf ARM64-Systemen eine Emulationsschicht basierend auf dem FEX-Paket verwendet. Bei der Emulation werden GPU-Passthrough und die Verwendung von Wine, Proton, DXVK und vkd3d unterstützt, um Computer- spiele auszuführen, die für die Architektur x86_64 kompiliert und über das Steam-Katalogsystem vertrieben werden. Die Funktionalität des Snap-Pakets wurde auf Laptops mit Qualcomm Snapdragon X Elite-, NVIDIA DGX Spark- und Radxa Orion O6-Chips getestet.
  • Die Unterstützung für Laptops mit 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-Abbild für ARM64-Systeme integriert, jedoch konnte es wegen der Verwendung separater Device Tree-Konfigurationen nicht im Secure Boot-Modus verwendet werden, da die Firmware der Laptops diese Konfigurationen nicht an den Linux-Kernel übergab. Die erforderlichen Device Tree-Einstellungen wurden vom GRUB-Bootloader aus einer separaten Datei geladen, die nicht durch die digitale Signatur abgedeckt war.

    Um das Problem zu lösen, wurden der Kernel und die Device Tree-Datenbank in einer monolithischen EFI-Datei zusammengefasst, ähnlich dem UKI (Unified Kernel Image), das mit der digitalen Signatur der Distribution signiert wurde. Für das Laden dieser Datei wurde eine neue EFI-Schicht mit dem Namen „stubble“ erstellt, die beim Booten das Modell des Geräts über SMBIOS bestimmt, die erforderlichen Device Tree-Daten auswählt und sie 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 des bootfähigen Abbilds auf Basis von Ubuntu 26.04 für Laptops mit ARM64 SoC CIX P1 wurde vorbereitet. Im Gegensatz zum Snapdragon ermöglicht es die Konfiguration über ACPI-Tabellen, ohne dass ein Device Tree benötigt wird.
  • Google hat die Veröffentlichung offizieller Chrome-Builds für Linux-Systeme auf ARM64-Architektur angekündigt. Dies ermöglicht es, in ARM64-Builds von Ubuntu den Chrome-Browser mit dem Content Decryption Module (CDM) Widevine auszuführen, das in Chromium nicht verfügbar ist. Die Bereitstellung von Widevine erlaubt das Ansehen von urheberrechtlich geschütztem (DRM) Medieninhalt auf Diensten wie Netflix, Spotify und Disney+ ohne externe Patches. Darüber hinaus wird die Widevine-Unterstützung in Snap-Pakete für Firefox und Spotify integriert.
  • Neue Anwendungs-Builds sind im Snap-Format für die ARM64-Architektur verfügbar. Unter anderem werden Snap-Pakete für OnlyOffice, FreeCAD und Teams für Linux veröffentlicht.

Quelle: opennet.ru

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster