Дрю ДеВолт (Drew DeVault), автор пользовательского окружения Sway, почтового клиента Aerc, платформы совместной разработки SourceHut и языка программирования Hare, сообщил, что он смог написать собственную реализацию клона UNIX всего за 27 дней. Автор назвал свою операционную систему Bunnix.
Система является монолитной Unix-like операционной системой, написанной на Hare с небольшими включениями языка C.
В юзерспейсе сделана сборка следующих инструментов:
- dash (/bin/sh)
- gzip
- less (pager)
- lok (/bin/awk)
- lolcat
- mandoc (man pages)
- sbase (core utils)1
- tcc (C compiler)
- Vim 5.7
Также для демонстрации возможностей системы были собраны игры Doom и Colossal Cave Adventure.
Систему можно запустить с помощью QEMU или записать на USB-флешку. Работа с самим USB не поддерживается, поэтому на реальном железе надо использовать PS2/клавиатуру. В ядре поддерживаются драйверы:
- PCI,
- устройства AHCI,
- таблицы разделов GPT и MBR,
- клавиатура PS/2,
- последовательные порты платформы,
- КМОП-часы,
- фреймбуфер,
- файловая система ext4 и memfs (через lwext4).
Функции ядра включают в себя:
- виртуальную файловую систему,
- /dev, /dev/kbd и /dev/fb0,
- последовательные и VideoTTY,
- управляющий терминал /dev/tty,
- эмулятор терминала,
- termios,
- около 40 системных вызовов (clock_gettime, poll, openat, fork, exec, Pipe, dup, dup2, ioctl и т. д.).
Автор сделал этот проект для собственного интереса и не собирается его развивать дальше. Его интересовало насколько просто можно написать ядро и портировать стороннее программное обеспечение с использованием современного инструментария. Как говорит разработчик, стороннее программное обеспечение было относительно легко портировать благодаря тому, что его libc была основана на musl libc, вследствие чего механизмы libc были легко адаптированы для работы на Bunnix.
>>> Подробности