Google hat ein Update für das Betriebssystem Fuchsia 14 veröffentlicht.

Das Unternehmen Google hat die Version 14 des Betriebssystems Fuchsia veröffentlicht, auf dessen Basis vorläufige Firmware-Updates für die Google Nest Hub und Nest Hub Max Fotorahmen erstellt wurden. Das OS Fuchsia wird von Google seit 2016 unter Berücksichtigung der Schwächen in den Bereichen Skalierbarkeit und Sicherheit, die in der Android-Plattform bestehen, weiterentwickelt.

Die wichtigsten Änderungen in Fuchsia 14:

  • Die Möglichkeiten der Starnix-Schicht, die den Start von unveränderten Linux-Programmen durch die Übersetzung von Systemaufrufen des Linux-Kernels in Aufrufe der entsprechenden Fuchsia-Subsysteme ermöglicht, wurden erweitert. In der neuen Version wurde die Unterstützung für das Mounten von entfernten Dateisystemen hinzugefügt, xattrs für symbolische Links wurden zu fxfs hinzugefügt, der Systemaufruf mmap() erhielt Tracepoints, die Informationen in /proc/pid/stat wurden erweitert, Unterstützung für fuchsia_sync::Mutex wurde aktiviert, Unterstützung für O_TMPFILE, pidfd_getfd, sys_reboot(), timer_create, timer_delete, times() und ptrace() wurde implementiert, und in der ext4-Implementierung wurde der Systemdateicache genutzt.
  • Der Bluetooth-Stack wurde verbessert. Unterstützung für Audio im Bluetooth-Profil HSP (HandSet Profile) wurde hinzugefügt, und die Latenzzeiten bei der Audioübertragung über das A2DP-Profil wurden reduziert.
  • In Matter, der Implementierung des Standards für die Verbindung von Geräten im Smart Home, wurde die Unterstützung für Aktualisierungsgruppen und die Möglichkeit zur Verarbeitung von Übergangszuständen bei der Steuerung der Beleuchtung hinzugefügt.
  • Im Netzwerkstack für alle Plattformen wurde die Unterstützung für FastUDP-Sockets hinzugefügt.
  • Die Unterstützung für Mehrkernsysteme (SMP) auf der Basis der RISC-V-Architektur wurde hinzugefügt.
  • Eine API für die Interaktion mit dem Task-Scheduler wurde hinzugefügt.
  • Unterstützung für DeviceTree wurde hinzugefügt.
  • Der Treiber für Audiogeräte mit USB-Interface wurde auf die Verwendung des DFv2-Frameworks umgestellt.

Fuchsia basiert auf dem Mikrokernel Zircon, der auf den Ergebnissen des LK-Projekts basiert und für verschiedene Gerätekategorien, einschließlich Smartphones und PCs, erweitert wurde. Zircon erweitert LK um Unterstützung für Prozesse und gemeinsam genutzte Bibliotheken, eine Benutzerebene, ein Objekthandhabungssystem und ein Sicherheitsmodell auf Basis von Berechtigungen. Treiber werden als in Benutzerraum laufende dynamische Bibliotheken implementiert, die vom devhost-Prozess geladen und vom Geräte-Manager (devmg, Device Manager) verwaltet werden.

Für Fuchsia wurde eine eigene grafische Benutzeroberfläche entwickelt, die in der Programmiersprache Dart unter Verwendung des Frameworks Flutter geschrieben ist. Das Projekt entwickelt auch das Framework zur Erstellung von Benutzeroberflächen Peridot, den Paketmanager Fargo, die Standardbibliothek libc, das Rendering-System Escher, den Vulkan-Treiber Magma, den Compositor Scenic, die Dateisysteme MinFS, MemFS, ThinFS (FAT in Go) und Blobfs sowie den Partitionsmanager FVM. Für die Anwendungsentwicklung wird Unterstützung für die Sprachen C/C++, Dart bereitgestellt, in den Systemkomponenten ist auch die Verwendung von Rust zulässig, im Netzwerk-Stack wird Go verwendet, und im Build-System wird die Programmiersprache Python eingesetzt.

Während des Bootvorgangs wird ein Systemmanager verwendet, der appmgr zur Erstellung der anfänglichen Programmumgebung, sysmgr zur Bildung der Bootumgebung und basemgr zur Konfiguration der Benutzerumgebung und zur Organisation des Systemzugriffs umfasst. Zur Gewährleistung der Sicherheit wird ein fortschrittliches System zur Sandbox-Isolierung angeboten, bei dem neue Prozesse keinen Zugriff auf Kernelobjekte haben, keine Speicherzuweisungen durchführen können und keinen Code ausführen können. Der Zugriff auf Ressourcen erfolgt über ein Namensraum-System, das die verfügbaren Berechtigungen definiert. Die Plattform bietet ein Framework zur Erstellung von Komponenten, die Programme darstellen, die in ihrer eigenen Sandbox ausgeführt werden und über IPC mit anderen Komponenten interagieren können.

Quelle: opennet.ru

60GB SSD 8Gb DDR4