Resultados da iniciativa para fornecer suporte completo ao ARM64 no Ubuntu

Ravi Sharma da equipe Ubuntu Foundations apresentou um resumo do trabalho realizado no último ano para garantir suporte completo à arquitetura ARM64 no Ubuntu. Observa-se que, graças à melhoria das ferramentas e infraestrutura, bem como à promoção de mudanças no núcleo principal do Linux, foi possível resolver problemas específicos do ARM64 ao longo do ano, como a distribuição de pacotes através de um repositório separado, a falta de suporte a live patches no núcleo, as limitações para entusiastas de jogos de computador e a ausência do Secure Boot em laptops com chips Qualcomm Snapdragon.

Principais conquistas:

  • Pacotes para a arquitetura ARM64 foram transferidos de ports (ports.ubuntu.com) para o repositório principal do Ubuntu (archive.ubuntu.com), o que permitiu utilizar a mesma infraestrutura que é usada para a arquitetura x86_64. Agora, os pacotes para ARM64 são entregues através do sistema principal de espelhos, o que aumentou a velocidade e a confiabilidade ao serem baixados. A migração exigiu alterações nos pacotes cloud-init, live-build, livecd-rootfs e ubuntu-release-upgrader. As mudanças foram incluídas no Ubuntu 26.04 e estão em processo de retroportação para o Ubuntu 24.04 LTS.
  • O serviço Livepatch, que permite aplicar correções ao núcleo do Linux em sistemas em execução sem reiniciar, foi expandido para sistemas baseados na arquitetura ARM64. Anteriormente, os live patches eram distribuídos apenas para a arquitetura x86_64, pois o núcleo do Linux não suportava rastreamento de pilha confiável (CONFIG_HAVE_RELIABLE_STACKTRACE) para identificar atividades relacionadas ao tratamento de interrupções, e as ferramentas objtool e kpatch não possuíam recursos completos para avaliar o estado antes e depois da aplicação do patch. O suporte a live patches para ARM64 está disponível para o Ubuntu 26.04 LTS e o Ubuntu Core 26.
  • Foi formado um pacote snap estável com o cliente Steam, compilado para a arquitetura ARM64. Como o cliente Steam para Linux está disponível apenas para a arquitetura x86, uma camada de emulação baseada no pacote FEX foi usada para executar o cliente em sistemas ARM64. A emulação suporta a passagem de GPU e uso de Wine, Proton, DXVK e vkd3d para executar jogos de computador compilados para a arquitetura x86_64 e distribuídos através do catálogo Steam. O funcionamento do pacote snap foi testado em laptops com chips Qualcomm Snapdragon X Elite, NVIDIA DGX Spark e Radxa Orion O6.
  • Adicionada suporte para laptops com chips Qualcomm Snapdragon X Elite, como Lenovo Thinkpad X13s/T14s e Dell XPS 9345. Inicialmente, o suporte para esses dispositivos foi incluído na imagem ISO básica para sistemas ARM64, mas não era possível utilizá-la para inicializar no modo Secure Boot devido ao uso de configurações separadas do Device Tree, que o firmware dos laptops não transmitia ao kernel Linux. As configurações necessárias do Device Tree eram carregadas pelo carregador GRUB de um arquivo separado, que não era coberto pela assinatura digital.

    Para resolver o problema, o kernel e a base de dados do Device Tree foram unidos em um único arquivo EFI monolítico, semelhante ao UKI (Unified Kernel Image), assinado pela assinatura digital da distribuição. Para inicializar esse arquivo foi criada uma nova camada EFI chamada 'stubble', que durante o carregamento identifica o modelo do dispositivo via SMBIOS, selecionando os dados corretos do Device Tree e inserindo-os no kernel, sem comprometer a cadeia de confiança do Secure Boot. Estão sendo feitos esforços para implementar o suporte para laptops com chips Snapdragon X2 Elite.

  • Um protótipo de imagem de inicialização baseado no Ubuntu 26.04 para laptops com SoC ARM64 CIX P1 foi preparado, o qual, ao contrário do Snapdragon, permite identificar a configuração através de tabelas ACPI sem o uso do Device Tree.
  • A Google anunciou a publicação de builds oficiais do Chrome para sistemas Linux baseados na arquitetura ARM64, permitindo que o navegador Chrome, que contém o módulo CDM (Content Decryption Module) Widevine, seja executado em builds ARM64 do Ubuntu, módulo que não está disponível no Chromium. A entrega do Widevine possibilitará visualizar conteúdo de mídia protegido por direitos autorais (DRM) em serviços como Netflix, Spotify e Disney+ sem a necessidade de patches de terceiros. Além disso, o suporte ao Widevine está sendo integrado em pacotes snap para o Firefox e Spotify.
  • Novos builds de aplicativos estão disponíveis no formato snap para a arquitetura ARM64. Entre outras coisas, começaram a ser publicadas pacotes snap com OnlyOffice, FreeCAD e Teams for Linux para ARM64.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster