Wydanie systemu operacyjnego DragonFly BSD 6.2

Po siedmiu miesiącach prac ukazała się wersja DragonFlyBSD 6.2, systemu operacyjnego z jądrem hybrydowym stworzonego w 2003 roku na potrzeby alternatywnego rozwoju gałęzi FreeBSD 4.x. Wśród funkcji DragonFly BSD możemy wyróżnić rozproszony wersjonowany system plików HAMMER, obsługę ładowania „wirtualnych” jąder systemu jako procesów użytkownika, możliwość buforowania danych i metadanych FS na dyskach SSD, kontekstowe warianty dowiązań symbolicznych, możliwość do zamrażania procesów z jednoczesnym zapisem ich stanu na dysku, jądro hybrydowe wykorzystujące lekkie wątki (LWKT).

Główne ulepszenia dodane w DragonFlyBSD 6.2:

  • Hiperwizor NVMM został przeniesiony z NetBSD, obsługując mechanizmy wirtualizacji sprzętu SVM dla procesorów AMD i VMX dla procesorów Intel. W NVMM na poziomie jądra wykonywany jest tylko minimalny niezbędny zestaw powiązań wokół mechanizmów wirtualizacji sprzętu, a cały kod emulacji sprzętu działa w przestrzeni użytkownika. Narzędzia oparte na bibliotece libnvmm służą do wykonywania zadań takich jak tworzenie maszyn wirtualnych, alokacja pamięci i alokacja VCPU, a pakiet qemu-nvmm służy do uruchamiania systemów-gości.
  • Kontynuowano prace nad systemem plików HAMMER2, który wyróżnia się takimi funkcjami, jak oddzielne montowanie migawek, zapisywalne migawki, limity na poziomie katalogów, przyrostowe tworzenie kopii lustrzanych, obsługa różnych algorytmów kompresji danych, kopiowanie wielu wzorców z dystrybucją danych do kilku hostów. W nowej wersji wprowadzono obsługę polecenia Growfs, które umożliwia zmianę rozmiaru istniejącej partycji HAMMER2. Zawiera eksperymentalną obsługę komponentu xdisk, który umożliwia montowanie partycji HAMMER2 z systemów zdalnych.
  • Komponenty interfejsu DRM (Direct Rendering Manager), menedżer pamięci wideo TTM i sterownik amdgpu są zsynchronizowane z jądrem Linux 4.19, co umożliwiło obsługę układów AMD do APU 3400G. Zaktualizowano sterownik drm/i915 dla procesorów graficznych Intel, dodając obsługę procesorów graficznych Whiskey Lake i rozwiązując problem z awariami podczas uruchamiania. Sterownik Radeon został przekonwertowany do obsługi menedżera pamięci wideo TTM.
  • Wywołanie ankiety zapewnia obsługę zdarzenia POLLHUP zwracanego, gdy drugi koniec nienazwanego potoku lub FIFO jest zamknięty.
  • Jądro znacznie poprawiło algorytmy obsługi stron pamięci, zwiększyło wydajność podczas wybierania stron do przeniesienia do partycji wymiany i znacznie poprawiło zachowanie aplikacji wymagających dużych zasobów, takich jak przeglądarki, w systemach z małą ilością pamięci.
  • Zmieniono obliczenia maxvnodes, aby zmniejszyć zużycie pamięci jądra, ponieważ buforowanie zbyt wielu vnodes może zmniejszyć wydajność, na przykład jeśli bloki danych są dodatkowo buforowane na poziomie urządzenia blokowego.
  • Do narzędzia fstyp dodano obsługę systemu plików BeFS. Obsługa systemu plików FAT została przeniesiona do makefs z FreeBSD. Poprawiona wydajność narzędzi fsck i fdisk. Naprawiono błędy w kodzie ext2fs i msdosfs.
  • Dodano ioctl SIOCGHWADDR w celu uzyskania adresu sprzętowego interfejsu sieciowego.
  • ipfw3nat dodaje obsługę NAT dla pakietów ICMP, zaimplementowaną poprzez ponowne wykorzystanie icmp idport.
  • Sterownik ichsmb dodał obsługę kontrolerów Intel ICH SMBus dla chipów Cannonlake, Cometlake, Tigerlake i Geminilake.
  • Generowanie plików initrd zostało zmienione z używania vn na makefs.
  • Funkcje getentropy(), clearenv() i mkdirat() zostały dodane do standardowej biblioteki libc. Poprawiona kompatybilność implementacji shm_open() i /var/run/shm z innymi systemami. Dodano specyficzne dla platformy typy __double_t i __float_t. Funkcje związane z szyfrowaniem zostały zwrócone do libdmsg. Poprawiona wydajność pthreads.
  • W narzędziu dsynth, przeznaczonym do lokalnego montażu i konserwacji repozytoriów binarnych DPort, dodano opcję „-M” i zmienną PKG_COMPRESSION_FORMAT. Zapewniono obsługę menedżera pakietów pkg 1.17 i drugiej wersji metadanych pkg.
  • Do pakietu zaimportowano bibliotekę OpenPAM Tabebuia PAM, narzędzie do sprawdzania haseł passwdqc 2.0.2, mandoc 1.14.6, OpenSSH 8.8p1, dhcpcd 9.4.1 i plik 5.40.
  • Naprawiono lokalnie wykorzystywaną lukę w jądrze, która mogła pozwolić użytkownikowi na zwiększenie jego uprawnień w systemie (CVE nie zostało zgłoszone).
  • Usunięto sterownik ndis, który umożliwiał korzystanie z binarnych sterowników NDIS z systemu Windows.
  • Zakończono obsługę formatu pliku wykonywalnego a.out.

Źródło: opennet.ru

Dodaj komentarz