[ON] Представлены X-сервер Frame и рабочий стол CHasm, написанные на ассемблере

Обсуждение новостей, соответствующих тематике форума

Модератор: Модераторы разделов

Аватара пользователя
rssbot
Бот
Сообщения: 6000
ОС: gnu/linux

[ON] Представлены X-сервер Frame и рабочий стол CHasm, написанные на ассемблере

Сообщение rssbot »

Проект Frame развивает новый X-сервер, написанный целиком на ассемблере NASM для архитектуры x86_64 и предназначенный для работы в Linux без внешних зависимостей. Взаимодействие с ядром Linux, включая интерфейсы DRM/KMS и evdev, осуществляется напрямую через системные вызовы, без привлечения библиотек, таких как libc, Mesa и FreeType. Код Frame распространяется как общественное достояние. Разработка ведётся с привлечением AI-ассистента Claude Code.


Целью проекта является реализация расширений протокола X11, достаточных для функционирования рабочего стола CHasm, развиваемого тем же автором и также написанного на ассемблере. В качестве необходимого минимума заявлена поддержка запуска типовых X11-приложений, среди которых Firefox, VS Code, GIMP и Inkscape. Из намеченных к реализации X11-расширений упомянуты SHAPE, RENDER, XKB, COMPOSITE, DAMAGE, RANDR, MIT-SHM, XInput2 и XVideo.


Разработка разделена на 14 стадий. В настоящее время проект находится на 7 стадии, на которой уже реализованы базовые возможности для запуска терминала и некоторых X11 приложений. 14 стадия будет достигнута, когда будут реализованы все возможности для полноценной работы с Firefox. На текущем этапе заявлено о возможности запуска базового рабочего стола CHasm, GIMP и Firefox (с ограничениями).



Среди уже реализованных возможностей: приём X11-запросов через Unix-сокет, программная отрисовка через подсистему ядра DRM/KMS, обработка ввода через evdev, API для управления вводом, поддержка подключения нескольких X11-клиентов, функции для создания и работы с окнами, операции с пиксельными картами, атомарные операции, выделение текста для буфера обмена, X11-расширения SHAPE, RANDR, XKB, XInput2 и MIT-SHM. Ещё не реализованы примитивы векторной отрисовки, атомарное переключение видеорежима, буфер обмена, переключение раскладки клавиатуры, управление курсором, X11-расширения RENDER, DAMAGE и COMPOSITE.


Среда рабочего стола CHasm насчитывает около 100 тысяч строк кода и включает написанные на ассемблере компоненты: мозаичный оконный менеджер Tile, панель состояния Strip,
блокировщик экрана Bolt, интерактивная оболочка Bare и эмулятор терминала Glass. Разработанные компоненты заменяются собой связку из gdm, X11 Server, i3, conky, wezterm и zsh.


Разработка ведётся с оглядкой на минимальное потребление энергии при использовании на ноутбуке. В режиме ожидания оконный менеджер Tile и терминал Glass совсем не потребляют ресурсы и активируются только при действии пользователя. Frame в режиме простоя расходует почти в три раза меньше ресурсов CPU, чем X.Org Server.


Утверждается, что окружение на базе Frame и CHasm уже достаточно стабильно для использования в повседневной работе автора проекта. Когда возникают проблемы или чего-то не хватает, автор по мере необходимости привлекает Claude и устраняет недоработки. Автор также развивает набор консольных утилит fe2o3, написанных на Rust и покрывающих все его потребности, кроме web-браузера. В состав fe2o3 входит двухпанельный файловый менеджер Pointer, командный интерпретатор rush, vim-подобный текстовый редактор Scribe, RSS-ридер Gazette, почтовый клиент и мессенджер Kastrup, календарь-планировщик Tock, конфигуратор Crush, просмотрщик документов Viewer.



Изображение
Изображение



Источник: https://www.opennet.ru/opennews/art.shtml?num=65922
(opennet.ru, основная лента)
Последний раз редактировалось rssbot 17.07.2026 15:10, всего редактировалось 1 раз.
Причина: Updated upstream
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 3100
ОС: gentoo fluxbox

Re: [ON] Представлены X-сервер Frame и рабочий стол CHasm, написанные на ассемблере

Сообщение yoricI »

Ядро бы кто на ассемблере даже не переписал, а оптимизировал. Можно ведь выкинуть бесполезные инструкции, сгенерированные компилятором. Не всё так просто, но легче, чем с нуля. А если с нуля, так вообще замечательно!
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 3272
ОС: Gentoo

Re: [ON] Представлены X-сервер Frame и рабочий стол CHasm, написанные на ассемблере

Сообщение ormorph »

Лучше бы сказали как использовать. Попробовал так:

Shell

./frame &
sleep 1s
DISPLAY=":7" ./repos/tile/tile
И балалайка. С их примером с xdpyinfo это конечно работает. А вот из графики, кроме ./frame --modeset, ни чего.
Что то у меня ощущение, что все эти фото экрана сделаны на Xorg.
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 3272
ОС: Gentoo

Re: [ON] Представлены X-сервер Frame и рабочий стол CHasm, написанные на ассемблере

Сообщение ormorph »

Уже нашёл как запускать:

Shell

./frame 7 --display &
sleep 1s
DISPLAY=":7" konsole
Вот только konsole нормально отображаются шрифты, а в их glass вместо шрифтов квадраты. Ну и конечно ни каких 3d тут нет. По нормальному тут конечно нужно ещё kill $PID добавить.
Спасибо сказали: