Google опублікував оновлення операційної системи Fuchsia 14

Компанія Google опублікувала випуск операційної системи Fuchsia 14, на базі якого сформовані попередні оновлення прошивок для фоторамок Google Nest Hub та Nest Hub Max. ОС Fuchsia розвивається компаній Google з 2016 року з урахуванням недоліків у галузі масштабування та забезпечення безпеки, наявних у платформі Android.

Основні зміни в Fuchsia 14:

  • Розширено можливості прошарку Starnix, що забезпечує запуск немодифікованих Linux-програм через трансляцію системних інтерфейсів ядра Linux у звернення до відповідних підсистем Fuchsia. У новій версії додана підтримка монтування віддалених ФС, до fxfs додані xattrs для символічних посилань, до системного виклику mmap() додані точки трасування, розширена інформація в /proc/pid/stat, включена підтримка fuchsia_sync::Mutex, реалізована підтримка O_TMPFI sys_reboot(), timer_create, timer_delete, times() і ptrace(), у реалізації ext4 задіяний системний файловий кеш.
  • Поліпшено стек Bluetooth. Додано підтримку звуку в Bluetooth-профілі HSP (HandSet Profile) та скорочено затримки при мовленні звуку через профіль A2DP.
  • У Matter, реалізацію стандарту для підключення пристроїв у розумному будинку, додано підтримку груп оновлення та можливість обробки перехідних станів при керуванні підсвічуванням.
  • У мережевому стеку для всіх платформ включено підтримку сокетів FastUDP.
  • Додано підтримку багатоядерних систем (SMP) на базі архітектури RISC-V.
  • Доданий API для взаємодії з планувальником завдань.
  • Додано підтримку DeviceTree.
  • Драйвер для звукових пристроїв з інтерфейсом USB переведено на використання фреймворку DFv2.

Fuchsia базується на мікроядрі Zircon, заснованому на доробках проекту LK, розширеного для застосування на різних класах пристроїв, включаючи смартфони та персональні комп'ютери. Zircon розширює LK підтримкою процесів і бібліотек, що розділяються, рівнем користувача, системою обробки об'єктів і моделлю забезпечення безпеки на основі capability. Драйвери реалізуються у вигляді динамічних бібліотек, що працюють в просторі користувача, завантажуються процесом devhost і керуються менеджером пристроїв (devmg, Device Manager).

Для Fuchsia підготовлений власний графічний інтерфейс, написаний мовою Dart із використанням фреймворку Flutter. Проектом також розвиваються фреймворк для побудови інтерфейсів користувача Peridot, пакетний менеджер Fargo, стандартна бібліотека libc, система рендерингу Escher, Vulkan-драйвер Magma, композитний менеджер Scenic, файлові системи MinFS, MemFS, ThinFS (FAT мовою Go) та Blobfs, а також менеджер розділів FVM. Для розробки додатків надається підтримка мов C/C++, Dart, у системних компонентах також допускається використання Rust, у мережевому стеку Go, а в системі збирання мови Python.

У процесі завантаження використовується системний менеджер, що включає appmgr для створення початкового програмного оточення, sysmgr для формування завантажувального оточення та basemgr для налаштування користувача оточення та організації входу в систему. Для забезпечення безпеки пропонується просунута система sandbox-ізоляції, в якій нові процеси не мають доступу до об'єктів ядра, не можуть виділяти пам'ять і не можуть запускати код, а для доступу до ресурсів застосовується система просторів імен, що визначає доступні повноваження. Платформа надає фреймворк для створення компонентів, що являють собою програми, що запускаються у своєму sandbox, які можуть взаємодіяти з іншими компонентами через IPC.

Джерело: opennet.ru

Додати коментар або відгук