Резюме на разработката на GNU Hurd за 4-ти триместър на 2023 година

Резюме на разработката на GNU Hurd за 4-ти триместър на 2023 година

На 9 януари в официалния новинарски раздел на проекта GNU Hurd бяха публикувани заключителни новини за третото тримесечие на 2023 година:

  • Самюел Тибо (Samuel Thibault) е коригирал по подразбиране default PIE Hurd за gcc и добавил е подкрепа за static PIE.Той също така е добавил командата whatis в отладкира на ядрото GNU Mach, която може да определи на какво сочи адресът (стек? порт? kalloc?…). Добавена е подкрепа hurd-amd64 в GCC..
  • Освен това, Самюел помоли екипа на Hurd да организира непрекъсната интеграция (непрекъсната интеграция) — за да може, когато разработчиците правят промени в кода, те да могат да бъдат сигурни, че нищо не е счупено.

    „Оказва се, че Hurd поддържа няколко различни среди: 32 бита, 64 бита, 32 на 64 бита, ACPI, не-ACPI, SMP, не-SMP, Xen и т.н. Изглежда, че един от разработчиците на Hurd Флавио (Flavio) има личен CI,но е настроен по начин, независим от Debian. Ако се интересувате да помогнете на проекта Hurd в изграждането на CI, свържете се с нас!”

  • Лука Дарис (Luca Dariz) работеше над добавянето на няколко основни теста на потребителското пространство на GNU Mach. С работещ MiG, GNU/Linux машината може да стартира командата make check на изходния код на GNU Mach, която ще стартира qemu, за да потвърди, че 32-битовият (PAE и не-PAE), 32-битовият на 64-битен и пълният 64-битов GNU Mach работи. В момента провеждаме тестове на GNU/Linux, тъй като qemu в Hurd не функционира.
  • Много хора работиха над новата подкрепа за x86_64 бит в Hurd. Самюел съобщи казва, че 64-битният порт на GNU Hurd вече има достатъчно пакети в архива debian-ports, за да може да се стартира chroot. Демонът за изграждане на 64-битовата версия на Debian + GNU Hurd е в процес на настройка, както и други работи по инфраструктурата. Тибо отбеляза:

    „Изграждането на пакети не е особено стабилно. Опитвам се да изградя gcc-13 вече няколко седмици, но все още безуспешно. Има различни сривове, най-често странни грешки в скрипта libtool, които са признак, че самата система се държи неправилно. Начинът да се възпроизведе проблемът е просто да се преизгради пакет, който използва libtool, и рано или късно това ще доведе до много странен срив.
    Това означава, че, въпреки че buildd вече е готов, наистина ми е неудобно да го стартирам, знаейки, че може да се държи безпорядъчно. Когато събрах първоначалния набор от пакети за debian-портовете (~100 пакета), имах около 5-10 такива сривове, което е доста висок показател: /»

  • Флавио Крус (Flavio Cruz) подобри IPC GNU Mach, променяйки реда на полетата mach_msg_type_t за подравняване на байтовете msgt_name и msgt_size. Той също така създаде серия от пачове, които позволяват да се избегне смяната на размера на съобщенията за x86_64. Той премахна нетипизирания код Mach RPC:

    "GNU Mach използва типизирано IPC. Hurd може да поддържа както типизирани, така и нетипизирани извиквания, но изглежда, че Hurd използва само типизирано RPC. Затова е най-добре да се премахне всякакъв нетипизиран код RPC."

  • Сергей Бугаев (Sergey Bugaev) добави поддръжка на повторно събиране на записи за GNU Mach. Mach не винаги е могъл да обедини две записи на виртуална машина, направени една до друга, което забавяше работата на ext2, bash и т.н. Сергей позволи на GNU Mach да обединява записи в обичайни случаи, което много помогна, например, в ext2fs.
  • Освен това, Сергей работи върху портването на уеб браузъра Ladybird под Hurd. Авторът на този пост (очевидно, става дума за оригиналния пост на gnu.org — бел. ред.) използва уеб браузер netsurf под Hurd, който работи на прости уеб сайтове (като Wikipedia), но слабо визуализира страници с много JavaScript, което прави много уеб сайтове неприложими за използване. Ако Сергей успее да портне Ladybird, потребителите на Hurd ще могат да започнат да използват такива онлайн ресурси, като Github! Струва си да се отбележи, че някой трябва да актуализира и порт FireFox.
  • Освен това Бугаев започна портването на Hurd за AArch64! И докато портът за RISC-V може да изглежда по-интригуващ, все пак е важно да се отбележи, че AArch64 е по-известен. Интересното е, че Сергей вече умее да компилира сървъри на Hurd за AArch64! Обикновено за стартиране на бинарни файлове е необходимо да се портне GNU Mach на AArch64, но за щастие за нас, той се обърна към GDB и директно стартира бинарния файл Hurd AArch64 "Hello World" в Linux! Това му помогна да поправи някои грешки. Все още остава да се определи ABI и да се завърши портът на GNU Mach, но в момента това са невероятни новини!
  • Тобиас Платен (Tobias Platen) започна да портва GNU Mach на платформата Power9.

Ако някой иска да провери работата на любимите си пакети под Hurd и тяхната роля в използването на цялата система GNU за по-широк кръг хора — моля, проверете страницата за участие.

За справка: GNU Hurd (или просто Hurd) — това е проект за разработка на свободен софтуер, чиято цел е да замени ядрото Unix за Unix-подобни операционни системи. Развитието на Hurd започва през 1990 година от проекта GNU и Фонда за свободен софтуер. Прогресът е бавен поради наличието на Linux — вече готова свободна алтернатива на ядрото на Unix системите. Подробности можете да намерите както в Уикипедия, така и на официалната страница на проекта GNU Hurd.

От своя страна GNU Mach — това е реализация на микроядро Mach, което по подразбиране е включено в състава на GNU Hurd.

Източник: linux.org.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster