Привет, Хабр!
Я хотел бы рассказать о моем главном проекте - операционная система. Заранее прошу сильно не судить, это моя первая статья на хабаре :)
Операционной системе я дал название FuturaOS. Она является проприетарной ос с собственной файловой системой, оконным менеджером и бесконечным холстом. Несмотря на то, что проект базируется на коде ToaruOS (которая, в свою очередь, черпает вдохновение из идей UNIX), ядро, графический стек и уникальные подсистемы FuturaOS разработаны с нуля и закрыты.
Одна из главных фич - это Infinite Mode, бесконечный холст в духе Figma, который работает на собственном языке разметки IDSL (возможно в будущем я смогу рассказать подробнее про этот простой язык разметки). Вместо статичных обоев у нас живая солнечная система: планеты с пиксельными текстурами, орбитами, системами освещения. Причем это не просто картинка - объекты масштабируются с при зуме и двигаются вокруг Солнца на своих орбитах. На данный момент ядро поддерживает три режима работы с окнами: классический, тайлинг для продуктивности и упомянутый Infinite. Композитор построен на собственной реализации Yutani, а оконный менеджер позволяет переключаться между режимами прямо на лету, без перезагрузки сессии.
Отдельного упоминания заслуживает проделанный огромный путь по поддержке железа. Мы смогли запустить Doom и Quake через аппаратный рендеринг (DRM/KMS), хотя в самом стеке еще много работы. Порты USB 3.0 работают стабильно, а USB 2.0 находятся в разработке (как бы странно это не звучало - спустя месяцы работы у меня заработали порты SS, однако порт 2.0 на данный момент не получает питание на моем устройстве). Звуковая подсистема построена на HDA и работает. Также реализован свой загрузчик, работающий напрямую с UEFI, без GRUB и без VESA-заглушек, что дает четкий и быстрый вывод изображения без ошибок.
Ключевая особенность системы — это собственная файловая система FFS (Futura File System), которая поддерживает шифрование, Copy-on-Write и снапшоты. Это не просто абстракция над ext4, а самостоятельный проект с уникальными свойствами, как у ZFS или Btrfs, но заточенный под небольшие и быстрые устройства.
Для разработчиков у нас есть SDK, позволяющий собирать сторонние приложения, а пакеты распространяются в формате .fos. Программа установки пакетов и магазин приложений уже присутствуют, хотя ещё является незаконченной.
Сейчас самым острым вопросом остается поддержка полноценных Wi-Fi и Bluetooth адаптеров. На данный момент Wi-Fi стек работает в бета-режиме с поддержкой ряда чипсетов и уже умеет сканировать сети, но полноценное подключение к WPA2-сетям требует доработки.
Впереди у нас ещё много работы: планируется расширить поддержку ACPI, сделать мониторинг температуры и заряда батареи, а также включить кроссплатформенные жесты для тачпада и нативной поддержки USB-адаптеров







