Google przenosi Chrome na Fuchsia OS

Google pracuje nad udostępnieniem kompletnych wersji przeglądarki Chrome dla systemu operacyjnego Fuchsia. Fuchsia zapewnia już silnik przeglądarki oparty na kodzie Chromium do uruchamiania samodzielnych aplikacji internetowych, ale przeglądarka jako samodzielny produkt nie była dostępna dla Fuchsii, a sama platforma została opracowana głównie dla IoT i urządzeń konsumenckich, takich jak Nest Hub. Ostatnio sytuacja się zmieniła i rozpoczął się rozwój możliwości Fuchsii mającej na celu wykorzystanie jej jako platformy desktopowej.

Obejmuje to zestaw zmian, które umożliwią dostarczenie pełnoprawnego Chrome do Fuchsii. Planuje się, że wstępna wersja przeglądarki Chrome dla Fuchsia będzie gotowa wraz z wydaniem przeglądarki Chrome 94 zaplanowanej na 21 września. Prace nad portowaniem przebiegają stopniowo – na początku możliwe jest zbudowanie uproszczonej wersji, w której niektóre funkcje zostaną zastąpione kodami pośredniczącymi, które w miarę przenoszenia są zastępowane działającymi implementacjami kodu uwzględniającymi specyfikę z Fuksji. Trwają na przykład adaptacje dla zasobnika systemowego Fuchsia, przesyłania plików, Click To Call, pracy z nośnikami wymiennymi, synchronizacji, katalogów użytkowników, aplikacji PWA, wyświetlania informacji o obciążeniu pamięci i procesora oraz importowania ustawień z innych przeglądarek.

Przypomnijmy, że Fuchsia OS jest rozwijany przez Google od 2016 roku, biorąc pod uwagę brak skalowania i bezpieczeństwa dostępnego na platformie Android. System oparty jest 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 dynamiczne biblioteki 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.

Google przenosi Chrome na Fuchsia OS

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