fbpx
27.1 C
София

Излезе Linux ядрото версия 5.19: нововъведения и промени

Най-четени

Даниел Десподов
Даниел Десподовhttps://www.kaldata.com/
Ежедневен автор на новини. Увличам се от съвременни технологии, оръжие, информационна безопасност, спорт, наука и концепцията Internet of Things.

След два месеца разработка Линус Торвалдс представи ядрото Linux 5.19. Сред най-големите промени можем да изброим поддръжката на процесорната архитектура LoongArch, интегрирането на „BIG TCP“ пачовете, on-demand във fscache, премахването на кода за поддръжка на a.out формата, възможността за използване на ZSTD за компресиране на фърмуера, интерфейса за управление на изместването на паметта от потребителското пространство, подобрената надеждност и производителност на генератора на псевдослучайни числа, поддръжката на Intel IFS (In-Field Scan), AMD SEV-SNP (Secure Nested Paging), Intel TDX (Trusted Domain Extensions) и ARM SME (Scalable Matrix Extension).

В своето изявление Торвалдс заяви, че следващата версия на Linux ядрото вероятно ще бъде 6.0, тъй като има достатъчно версии в клона 5.x и е време вече да се промени първото число в номера на версията. Смяната на номерацията се извършва от естетически съображения и е формална стъпка, която облекчава дискомфорта от натрупването на голям брой версии с един и същ начален номер.

Торвалдс добавя, че е използвал лаптоп на Apple, базиран на архитектурата ARM64 (Apple Silicon) с Linux десктоп среда, базирана на дистрибуцията Asahi Linux, за да компилира този Linux Kernel. Това не е основната работна станция на Линус, но той е използвал платформата, за да тества нейната пригодност за работа с Linux ядрото, както и да се увери, че може да компилира новите версии на ядрото в движение с лек лаптоп под ръка. Преди това, преди много години, Линус натрупа опит с използването на хардуера на Apple за разработка – веднъж той използва компютър с процесор ppc970, на който се базира лаптопа Macbook Air.

Основни нововъведения и промени в Linux Kernel 5.19

Дискова подсистема, вход/изход и файлови системи

  • Файловата система EROFS – Enhanced Read-Only File System (Подобрена файлова система само за четене), предназначена за използване на дялове само за четене, е прехвърлена към използване на подсистемата fscache, която осигурява кеширане на данни. Промяната значително подобрява производителността на системите, в които от образа н а базата на EROFS се стартират голям брой контейнери
  • В подсистемата fscache е добавен режим на четене при поискване (on-demand), който се използва за оптимизиране на EROFS. Новият режим дава възможност за кеширане на четенето на данни от файловата система, която е част от локалната система. За разлика от първоначалния режим на работа, при който се извършва кеширане на данните, прехвърляни чрез мрежовите файлови системи, режимът on-demand делегира извличането на данните и техния запис в кеша на отделен фонов процес, който работи в потребителското пространство
  • В XFS е осигурена възможността за записа на милиарди разширени атрибути в i-node. Максималният брой екстенти за един файл е увеличен от 4 милиарда на 247.  Реализиран е режим за едновременно атомарно обновяване на няколко разширени атрибути на файл
  • Във файловата система Btrfs е оптимизирана работата със блокиранията, благодарение на което нейната производителност е повишен с около 7%. Производителността на в режим NOCOW (без copy-on-write е повишена приблизително с 3%. Максималният размер на подстраницитре  е намален от 64К на 4К. Намалено е натоварването на кеша за страниците памет при използване на командата send
Памет и системни процеси

  • Добавена е началната поддръжка на процесорните команди на архитектурата LoongArch, която се използва в процесорите Loongson 3 5000 и която реализира нов RISC ISA, подобен на RISC ISA. Архитектурата LoongArch е достъпна в три варианта: орязан 32-битов (LA32R), стандартен 32-битов (LA32S) и 64-битов (LA64)
  • Премахнат е кода за поддръжка на изпълнимите файлове a.out, който сега официално се счита за остарял. Форматът a.out отдавна не се използва в Linux системите и вече не е необходим
  • Отпаднала е поддръжката на опциите за зареждане, специфични за х86: nosp, nosmap, nosmep, noexec и noclflush)
  • Прекратена е поддръжката на остарялата архитектура CPU h8300 (Renesas H8/300)
  • Добавена е поддръжката на реализирания в процесорите на Intel механизъм IFS (In-Field Scan), който дава възможност за стартирането на CPU тестове от най-ниско ниво , които могат да откриват проблеми, които не могат да се определят с помощта на стандартните средства, базирани на кодовете за корекция на грешките (ECC) и битовете за четност. Самите тестове се зареждат като допълнения за фърмуера на процесорите, аналогично на обновяването на микрокода. Резултатите от тестовете са достъпни чрез sysfs
  • Добавена е възможност за вграждането в ядрото на файла bootconfig, който дава възможност освен чрез опциите от командния ред, параметрите за работа на Linux ядрото да се задават чрез външен файл. Добавянето на файла става с помощта на опцията CONFIG_BOOT_CONFIG_EMBED_FILE=“/PATH/TO/BOOTCONFIG/FILE
  • Реализирана е възможност за зареждане на фърмуери, компресирани с помощта на алгоритъма Zstandard
  • За архитектурата Xtensa е осигурена поддръжката на софтуерния инструмент за настройка KCSAN (Kernel Concurrency Sanitizer)
  • За архитектурата m68k (Motorola 68000) е реализирана виртуална машина (емулатор на платформата), базирана на емулатора Android Goldfish
  • За архитектурата AArch64 е реализирана поддръжката на разширенията Armv9-A SME (Scalable Matrix Extension).
Виртуализация и безопасност

  • В режима на защита Lockdown, който ограничава достъпа на root потребителя до ядрото е отстранен проблема с възможността за нейното заобикаляне чрез манипулация с дебъгера на ядрото
  • Добавени са пачовете за повишаване надеждността и производителността на генератора на псевдослучайни числа
  • Добавена е поддръжката на разширението AMD SEV-SNP (Secure Nested Paging), осигуряваща безопасна работа с таблиците на страниците памет, като по този начин се осигурява защитата от AMD SEV (Secure Encrypted Virtualization)
Мрежова работа
  • В новото Linux ядро е включен пакета пачове BIG TCP, който дава възможност за увеличаване максималния размер на мрежовия TCP пакет до 4 GB за оптимизация работата на вътрешните локални мрежи на дата центровете. При тестовете за производителност бе постигнато 50% увеличение на пропускателната способност и значително намаляване латентностите при обмена на данни
  • Добавена възможност за отказ от MPTCP (MultiPath TCP) при изпозлване на стандартния TCP

Хардуер

  • Добавени са над 420 000 реда код, свързани с драйвера amdgpu, от които около 400 000 реда са автоматично генерирани заглавни файлове с данни за ASIC регистрите в драйвера на AMD GPU, а другите 22 500 реда осигуряват първоначалната реализация на поддръжката на AMD SoC21. Общият размер на драйвера за GPU на AMD надхвърли 4 милиона реда код. В допълнение към SoC21, драйверът на AMD включва поддръжка за SMU 13.x (System Management Unit), актуализираната поддръжка за USB-C и GPUVM, и е готов да поддържа следващите поколения платформи RDNA3 (RX 7000) и CDNA (AMD Instinct).
  • Драйверът i915 (Intel) вече има подобрени възможности за управление на захранването. Добавени са идентификатори за графичните процесори Intel DG2 (Arc Alchemist), използвани в лаптопите, предоставена е първоначалната поддръжка за платформата Intel Raptor Lake-P (RPL-P), добавена е информация за графичните карти Arctic Sound-M, внедрен е ABI за изчислителни енджини, добавен за картите DG2 е добавена поддръжката на формата формата, а за компютърните системи с архитектура Haswell е реализирана поддръжката на DisplayPort HDR
  • Драйверът Nouveau е преминал към използване на манипулатора drm_gem_plane_helper_prepare_fb, а някои структури и променливи са статично разпределени
  • Добавен е драйвер за NVMe контролера, който се използва в компютрите на Apple, базирани на системата върху чипа M1

Едновременно с това латиноамериканският фонд за отворен софтуер компилира версия на изцяло свободното Linux ядро. Това е ядрото Linux-libre 5.19-gnu, което е изцяло изчистено от елементи на фърмуери и драйвери, включващи фирмени блокове сорс код, използването на които по някакъв начин е ограничено от производителя. В новата версия са прочистени драйверите за pureLiFi X/XL/XC и TI AMx3 Wkup-M3 IPC. Премахнати са блобовете от драйверите и подсистемите на Silicon Labs WFX, AMD amdgpu, Qualcomm WCNSS Peripheral Image Loader, Realtek Bluetooth, Mellanox Spectrum, Marvell WiFi-Ex, Intel AVS, IFS, pu3-imgu drivers. Реализирана е самостоятелната обработка на devicetree файловете на Qualcomm AArch64.


Коментирайте статията в нашите Форуми. За да научите първи най-важното, харесайте страницата ни във Facebook, и ни последвайте в Telegram и Viber или изтеглете приложението на Kaldata.com за Android, iOS и Huawei!

Абонирай се
Извести ме за
guest

4 Коментара
стари
нови
Отзиви
Всички коментари

Нови ревюта

Asus Zenfone 9: Малкият голям смартфон

Преди седмица Asus представи новия си флагман Zenfone 9. С него компанията продължава традицията за компактен форм-фактор като флагмана от предишното си поколение. Исторически погледнато,...

Подобни новини