W weekend wprowadzono Google KataOS, system operacyjny dla urządzeń osadzonych, skupiający się na środowisku uruchomieniowym z naciskiem na obciążenia uczenia maszynowego.
KataOS jest zbudowany na mikrojądrze seL4 i ma na celu zapewnienie bezpieczeństwa. Wykorzystuje całkowicie język programowania Rust.
Czy wiesz, że plan obsługi reklam Netflix pojawi się 1 listopada?
Co to jest Google KataOS?
Google ogłosiło system operacyjny KataOS. Celem tego systemu jest oferowanie rozwiązania zabezpieczającego dla urządzeń wbudowanych. Istnieje więcej inteligentnych gadżetów, które zbierają i analizują dane z otoczenia. Według Google gadżety te są bardziej podatne na zagrożenia bezpieczeństwa. W rezultacie wymagane jest proste rozwiązanie, które jest weryfikowalnym systemem dla wbudowanego sprzętu. Pojawia się problem, jeśli nie da się wykazać matematycznie otaczającej nas technologii, która zapewnia bezpieczeństwo danych. Dzieje się tak, ponieważ gromadzone przez nich dane mogą być podatne na ataki z zewnątrz. Oznacza to, że wirusy mogą kraść zdjęcia, nagrania audio, filmy i inne dane. Dlatego Google został zmuszony do wprowadzenia KataOS.
Podstawowym przypadkiem użycia Google KataOS jest rosnąca liczba inteligentnych urządzeń, w szczególności wbudowanego sprzętu z aplikacjami do uczenia maszynowego. Branża poświęca obecnie coraz większą uwagę RISC-V, a obsługa architektury procesora jest głównym priorytetem Google KataOS.
Google ogłosił na blogu o otwartym kodzie źródłowym:
„Jako podstawę dla tego nowego systemu operacyjnego wybraliśmy seL4 jako mikrojądro, ponieważ stawia on bezpieczeństwo na pierwszym planie; matematycznie udowodniono, że jest bezpieczny z gwarantowaną tajemnicą, integralnością i dostępnością. Dzięki frameworkowi seL4 CAmkES jesteśmy również w stanie dostarczyć statycznie zdefiniowane i analizowalne komponenty systemu. Google KataOS zapewnia weryfikowalną platformę bezpieczeństwa, która chroni prywatność użytkownika, ponieważ logicznie niemożliwe jest, aby aplikacja naruszyła sprzętowe zabezpieczenia jądra, a składniki systemu są weryfikowalne. KataOS jest również zaimplementowany prawie w całości w Rust, co stanowi silny punkt wyjścia dla bezpieczeństwa oprogramowania, ponieważ eliminuje całe klasy błędów, takie jak błędy jeden po drugim i przepełnienia bufora.”
Obecna wersja GitHub zawiera większość podstawowych części Google KataOS, w tym nasze frameworki dla Rust (takie jak skrzynka sel4-sys, która zapewnia API wywołań systemowych seL4), alternatywny serwer główny napisany w Rust (wymaga dynamicznej pamięci RAM dla całego systemu zarządzanie) oraz modyfikacja jądra seL4 w celu odzyskania pamięci RAM używanej przez serwery root. “
Kasy Blog Google o otwartym kodzie źródłowym po więcej szczegółów. Możesz również zobaczyć postępy powiązane projekty na GitHubie. Jeśli z zadowoleniem przyjąłeś tę wiadomość o kolejnym projekcie Google, sprawdź tę niesamowitą wiadomość Google: Google rozmawia z Tottenhamem w sprawie umowy dotyczącej praw do nazwy stadionu o wartości 1 miliarda funtów.
KataOS uruchamia aplikację innej firmy
Google współpracuje również z Antmicro. Partnerstwo umożliwi emulację i debugowanie GDB na docelowych urządzeniach za pomocą Renode. Wewnętrznie KataOS ma możliwość dynamicznego ładowania i uruchamiania programów innych firm. Mogą na nim wykonywać się nawet programy stworzone poza strukturą CAmkES. Komponenty wymagane do uruchomienia tych aplikacji nie są jeszcze obecne w źródle Github. Google zamierza jednak wkrótce udostępnić te operacje.
Dodatkowo Google stworzył Sparrow, referencyjną implementację dla KataOS. Sparrow został stworzony, aby całkowicie zademonstrować system bezpiecznego środowiska. Ma bezpieczną platformę sprzętową i działa w systemie KataOS. W architekturze RISC-V Sparrow posiada rdzeń zaufania, który okazał się bezpieczny. Wraz z bezpiecznym jądrem systemu operacyjnego istnieje. Mimo to Google planuje zastosować emulację QEMU do początkowego wydania KataOS. Ten emulator będzie używany do obsługi 64-bitowego systemu ARM, który jest powszechnie używany.