Conan Kudo, członek komitetu technicznego projektu Fedora, podczas odbywającego się kilka dni temu spotkania online członków grupy ELN (Enterprise Linux Next) wspomniał o zamiarze firmy Microsoft, aby częściowo przenieść dystrybucję Azure Linux na bazę pakietów Fedora Linux. W celu osiągnięcia lepszej wydajności w Azure Linux wymagane są wersje pakietów dla architektury x86_64-v3, a programiści Microsoftu planowali stworzyć fork bazy pakietów Fedora, przebudowany dla architektury x86_64-v3.
Obecnie pakiety w Fedora są kompilowane dla architektury x86_64-v1, ale w trakcie dyskusji jest plan dostarczenia w Fedora Linux 45 wersji pakietów dla architektury x86_64-v3, oprócz wersji x86_64-v1. Jednym z trzech autorów inicjatywy jest Kyle Gospodnetich, inżynier z Microsoftu. Plan ten nie został jeszcze zatwierdzony przez komitet FESCo (Fedora Engineering Steering Committee), odpowiedzialny za część techniczną rozwoju Fedora Linux. Zakłada się, że w przypadku zatwierdzenia planu możliwe będzie połączenie interesów obu projektów i zorganizowanie współpracy z Microsoftem w zakresie wsparcia architektury x86_64-v3 w Fedorze. W 2023 roku firma Amazon przeniosła dystrybucję Amazon Linux na bazę pakietów Fedora.
Wersje x86-64-v* określają nieformalny sposób identyfikacji stanów mikroarchitektury, obejmujących określone zestawy rozszerzeń. Trzecia wersja mikroarchitektury x86-64 (x86-64-v3) stosowana jest w procesorach Intel od około 2015 roku (począwszy od Intel Haswell) i wyróżnia się obecnością rozszerzeń AVX, AVX2, BMI2, FMA, LZCNT, MOVBE i SXSAVE. Wersja x86-64-v2 obejmuje rozszerzenia SSE3, SSE4_2, SSSE3, POPCNT, LAHF-SAHF i CMPXCHG16B, a wersja x86-64-v4 — AVX512F, AVX512BW, AVX512CD, AVX512DQ i AVX512VL. W większości przypadków przyrost wydajności podczas kompilacji z optymalizacjami dla architektury x86-64-v3 wynosi około 1%, ale w niektórych sytuacjach w aplikacjach wykonujących duże obliczenia można zaobserwować bardziej zauważalny wzrost wydajności.
Dystybucja Azure Linux dostarcza niewielki zestaw podstawowych pakietów, stanowiących uniwersalną podstawę do tworzenia zawartości kontenerów, środowisk hostujących i usług uruchamianych w infrastrukturze chmurowej oraz na urządzeniach edge. Azure Linux stosowany jest jako baza mini-dystrybucji WSLg, która dostarcza komponenty stosu graficznego do uruchamiania aplikacji GUI Linux w środowiskach opartych na subsystemie WSL2 (Windows Subsystem for Linux). Do zarządzania usługami i startem wykorzystuje się menedżera systemowego systemd, a do zarządzania pakietami dostarczane są menedżery pakietów RPM i DNF.
System budowy Azure Linux pozwala na generowanie zarówno pojedynczych pakietów RPM na podstawie plików SPEC i tekstów źródłowych, jak i monolitycznych obrazów systemowych, tworzonych za pomocą narzędzi rpm-ostree, które są aktualizowane atomowo, bez rozdzielania na pojedyncze pakiety. W związku z tym, wspierane są dwa modele dostarczania aktualizacji: poprzez aktualizację pojedynczych pakietów oraz poprzez przebudowę i aktualizację całego obrazu systemowego. Dostępne jest repozytorium, które zawiera około 3000 już skompilowanych pakietów RPM, które można wykorzystać do budowy własnych obrazów na podstawie pliku konfiguracyjnego. Podstawowa platforma obejmuje tylko najpotrzebniejsze komponenty i jest zoptymalizowana pod kątem minimalnego zużycia pamięci i przestrzeni dyskowej, a także szybkiego uruchamiania.
Źródło: opennet.ru
