Czwarta wersja beta systemu operacyjnego Haiku R1

Po półtorarocznym okresie prac opublikowano czwartą wersję beta systemu operacyjnego Haiku R1. Początkowo projekt powstał jako reakcja na zamknięcie BeOS OS i rozwijał się pod nazwą OpenBeOS, ale w 2004 roku zmieniono jego nazwę ze względu na roszczenia związane z używaniem w nazwie znaku towarowego BeOS. Przygotowano kilka rozruchowych obrazów Live (x86, x86-64) w celu oceny wydajności nowej wersji. Kod źródłowy większości systemu operacyjnego Haiku jest rozpowszechniany na wolnej licencji MIT, z wyjątkiem niektórych bibliotek, kodeków multimedialnych i komponentów zapożyczonych z innych projektów.

Haiku OS koncentruje się na komputerach osobistych, wykorzystuje własny rdzeń, zbudowany w oparciu o architekturę modułową, zoptymalizowaną pod kątem wysokiej responsywności na działania użytkownika i wydajnego wykonywania aplikacji wielowątkowych. Dla programistów prezentowany jest obiektowy interfejs API. System jest bezpośrednio oparty na technologiach BeOS 5 i ma na celu kompatybilność binarną z aplikacjami dla tego systemu operacyjnego. Minimalne wymagania sprzętowe: Procesor Pentium II i 384 MB RAM (zalecane Intel Core i3 i 2 GB RAM).

OpenBFS jest używany jako system plików, który obsługuje rozszerzone atrybuty plików, kronikowanie, 64-bitowe wskaźniki, obsługę przechowywania metatagów (dla każdego pliku można przechowywać atrybuty w postaci klucz=wartość, co sprawia, że ​​system plików wygląda jak bazy danych) oraz specjalne indeksy przyspieszające ich wyszukiwanie. Drzewa B+ służą do organizowania struktury katalogów. Z kodu BeOS, Haiku zawiera menedżera plików Tracker i Deskbar, które zostały otwarte po tym, jak BeOS opuścił scenę.

Główne innowacje:

  • Poprawiona wydajność na ekranach o dużej gęstości pikseli (HiDPI). Zaimplementowano poprawne skalowanie interfejsu, nie ograniczając się do zmiany rozmiaru czcionek. Przy pierwszym uruchomieniu Haiku próbuje teraz automatycznie wykryć, czy ma ekran HiDPI i wybrać odpowiednie wymiary do skalowania. Wybrane opcje można zmienić w ustawieniach, ale nadal wymagają one ponownego uruchomienia. Opcje powiększenia są obsługiwane w większości aplikacji natywnych i niektórych portach, ale nie we wszystkich.
  • Zapewniono możliwość użycia wyglądu z płaskim dekoratorem okien i stylem płaskich przycisków, zamiast projektu mocno wykorzystującego gradienty. Płaski projekt jest dostarczany z pakietem Haiku Extras i jest włączony w sekcji ustawień wyglądu.
    Czwarta wersja beta systemu operacyjnego Haiku R1
  • Dodano warstwę zapewniającą kompatybilność z biblioteką Xlib, umożliwiając uruchamianie aplikacji X11 w Haiku bez uruchamiania serwera X. Warstwa jest implementowana poprzez emulację funkcji Xlib poprzez tłumaczenie wywołań na graficzny interfejs API wysokiego poziomu Haiku.
  • Przygotowana została warstwa zapewniająca kompatybilność z Waylandem, która umożliwia uruchamianie zestawów narzędzi i aplikacji wykorzystujących ten protokół, w tym aplikacji opartych o bibliotekę GTK. Warstwa udostępnia bibliotekę libwayland-client.so, opartą na kodzie libwayland i kompatybilną na poziomie API i ABI, która pozwala na uruchamianie aplikacji Wayland bez modyfikacji. W przeciwieństwie do typowych serwerów kompozytowych Wayland, warstwa nie działa jako oddzielny proces serwera, ale jest ładowana jako wtyczka do procesów klienta. Zamiast gniazd serwer wykorzystuje natywną pętlę komunikatów opartą na BLooperze.
  • Dzięki warstwom kompatybilności z X11 i Waylandem mogliśmy przygotować działający port biblioteki GTK3. Spośród aplikacji, które można uruchomić za pomocą portu, odnotowano GIMP, Inkscape, Epiphany (GNOME Web), Claws-mail, AbiWord i HandBrake.
    Czwarta wersja beta systemu operacyjnego Haiku R1
  • Dodano działający port z Wine, który może być używany do uruchamiania aplikacji Windows w Haiku. Spośród ograniczeń odnotowano możliwość uruchamiania tylko w 64-bitowych wersjach Haiku oraz możliwość uruchamiania tylko 64-bitowych aplikacji Windows.
    Czwarta wersja beta systemu operacyjnego Haiku R1
  • Dodano port edytora tekstu GNU Emacs, który działa w trybie graficznym. Pakiety są hostowane w repozytorium HaikuDepot.
    Czwarta wersja beta systemu operacyjnego Haiku R1
  • Do menedżera plików Tracker dodano obsługę generowania i wyświetlania miniatur obrazów. Miniatury są przechowywane w rozszerzonych atrybutach plików.
    Czwarta wersja beta systemu operacyjnego Haiku R1
  • Zaimplementowana warstwa zapewniająca kompatybilność ze sterownikami FreeBSD. Przeniesione sterowniki z FreeBSD do obsługi bezprzewodowych adapterów USB Realtek (RTL) i Ralink (RA). Spośród ograniczeń zauważono potrzebę podłączenia urządzenia przed uruchomieniem (po uruchomieniu urządzenie nie jest wykrywane).
  • Przeniesiony stos bezprzewodowy 802.11 z OpenBSD z obsługą 802.11ac oraz sterownikami iwm i iwx z obsługą kart bezprzewodowych Intel „Dual Band” i „AX”.
  • Dodano sterownik USB-RNDIS, który umożliwia zorganizowanie działania punktu dostępowego przez USB (tethering przez USB) do wykorzystania jako wirtualna karta sieciowa.
  • Dodano nowy sterownik NTFS oparty na bibliotece z projektu NTFS-3G. Nowa implementacja jest bardziej stabilna, obsługuje integrację warstwy buforowania plików i zapewnia dobrą wydajność.
  • Dodano tłumacz do odczytu i zapisu obrazów w formacie AVIF.
  • Silnik przeglądarki HaikuWebKit jest synchronizowany z aktualną wersją WebKit i przesyłany do backendu sieciowego opartego na bibliotece cURL.
  • Do bootloadera dodano obsługę 32-bitowych systemów z EFI oraz zapewniono możliwość instalacji 64-bitowego środowiska Haiku z 32-bitowego bootloadera EFI.
  • Poprawiona kompatybilność ze standardami POSIX. Kontynuacja zastępowania wywołań standardowej biblioteki C, przeniesionej wcześniej z glibc, na warianty z musl. Dodano obsługę strumieni C11 i metod locale_t.
  • Ulepszony sterownik dla dysków NVMe, dodano obsługę operacji TRIM informującej dysk o uwolnionych blokach.
  • Zapewniona jest możliwość budowania jądra i sterowników z nowymi wersjami GCC (w tym GCC 11), aby zbudować system ze względu na powiązania ze starym kodem, GCC 2.95 jest nadal wymagane do kompatybilności z BeOS.
  • Wykonano ogólne prace mające na celu poprawę stabilności całego systemu.

Źródło: opennet.ru

Dodaj komentarz