Google opublikowało aktualizację systemu operacyjnego Fuchsia 14

Firma Google opublikowała wydanie systemu operacyjnego Fuchsia 14, który zapewnia wstępne aktualizacje oprogramowania sprzętowego dla ramek fotograficznych Google Nest Hub i Nest Hub Max. Fuchsia OS jest rozwijany przez Google od 2016 roku, biorąc pod uwagę skalowalność i niedociągnięcia w zakresie bezpieczeństwa platformy Android.

Główne zmiany w Fuchsia 14:

  • Rozszerzono możliwości warstwy Starnix, zapewniając uruchomienie niezmodyfikowanych programów Linux poprzez tłumaczenie interfejsów systemowych jądra Linuksa na wywołania odpowiednich podsystemów Fuchsia. Nowa wersja dodaje obsługę montowania zdalnych systemów plików, dodała xattrs dla dowiązań symbolicznych do fxfs, dodała punkty śledzenia do wywołania systemowego mmap(), rozszerzyła informacje w /proc/pid/stat, włączyła obsługę fuchsia_sync::Mutex, zaimplementowała obsługę dla O_TMPFILE, pidfd_getfd, sys_reboot(), timer_create, timer_delete, times() i ptrace(), implementacja ext4 wykorzystuje pamięć podręczną plików systemowych.
  • Ulepszony stos Bluetooth. Dodano obsługę dźwięku w profilu Bluetooth HSP (HandSet Profile) i zmniejszono opóźnienia podczas transmisji dźwięku za pośrednictwem profilu A2DP.
  • Matter, czyli implementacja standardu łączenia urządzeń w inteligentnym domu, dodaje obsługę grup aktualizacji oraz możliwość obsługi stanów przejściowych przy sterowaniu podświetleniem.
  • Stos sieciowy dla wszystkich platform obejmuje obsługę gniazd FastUDP.
  • Dodano obsługę systemów wielordzeniowych (SMP) opartych na architekturze RISC-V.
  • Dodano interfejs API do interakcji z harmonogramem zadań.
  • Dodano obsługę DeviceTree.
  • Sterownik urządzeń audio z interfejsem USB został przekonwertowany do obsługi środowiska DFv2.

Fuchsia opiera się na mikrojądrze Zircon, bazującym na opracowaniach projektu LK, rozszerzonym do użytku na różnych klasach urządzeń, w tym smartfonach i komputerach osobistych. Zircon rozszerza LK o obsługę procesów i bibliotek współdzielonych, poziom użytkownika, system obsługi obiektów i model bezpieczeństwa oparty na możliwościach. Sterowniki są implementowane jako biblioteki dynamiczne działające w przestrzeni użytkownika, ładowane przez proces devhost i zarządzane przez menedżera urządzeń (devmg, Device Manager).

Fuchsia posiada własny interfejs graficzny napisany w Dart z wykorzystaniem frameworka Flutter. W ramach projektu opracowano także framework interfejsu użytkownika Peridot, menedżer pakietów Fargo, standardową bibliotekę libc, system renderowania Escher, sterownik Magma Vulkan, menedżer kompozytów Scenic, MinFS, MemFS, ThinFS (FAT w języku Go) i plik Blobfs systemów, a także partycje FVM. Do tworzenia aplikacji zapewniona jest obsługa C / C ++, Dart, Rust jest również dozwolony w komponentach systemu, w stosie sieciowym Go oraz w systemie kompilacji języka Python.

Proces rozruchu wykorzystuje menedżera systemu, który obejmuje appmgr do utworzenia początkowego środowiska oprogramowania, sysmgr do zbudowania środowiska rozruchowego i basemgr do skonfigurowania środowiska użytkownika i organizacji logowania. Aby zapewnić bezpieczeństwo, zaproponowano zaawansowany system izolacji sandbox, w którym nowe procesy nie mają dostępu do obiektów jądra, nie mogą przydzielać pamięci i nie mogą uruchamiać kodu, a do dostępu do zasobów wykorzystywany jest system przestrzeni nazw, który określa dostępne uprawnienia. Platforma zapewnia platformę do tworzenia komponentów, czyli programów działających w piaskownicy, które mogą wchodzić w interakcje z innymi komponentami za pośrednictwem IPC.

Źródło: opennet.ru

Dodaj komentarz