Notebookcheck Logo

Представляем Banan-OS: совершенно новая ОС, написанная с нуля на C++

Терминал внутри Banan-OS (Источник изображения Bananymous на Github)
Терминал внутри Banan-OS (Источник изображения Bananymous на Github)
В течение последних двух лет разработчик Banaymous медленно собирал UNIX-подобную ОС, написанную почти полностью на C++. ОС даже поддерживает архитектуры x86_64 и i686.

Разработчик Banaymous только что выпустил новую ОС, написанную с нуля, которая уже поддерживает многие функции современных операционных систем. Banan-OS отражает двухлетние усилия разработчика и написана почти полностью на C++, с некоторым количеством 16-битного ассемблера реального режима, используемого для загрузчика BIOS. В проекте даже используется собственная библиотека Banaymous на C++. В настоящее время ОС поддерживает архитектуры x86_64 и i686. Однако нет необходимости устанавливать ее локально, так как разработчик размещает живой пример, с помощью которого пользователи могут посмотреть, что она может предложить.

Несмотря на то, что Banon-OS все еще находится в зачаточном состоянии, у нее есть несколько общих функций, которые демонстрируют, насколько далеко она продвинулась как полноценная ОС. К этим функциям относятся:

  • Пользовательское пространство Ring3
  • SMP (мультипроцессинг)
  • Линейный фреймбуфер (VESA и GOP)
  • Сетевой стек
  • Загрузка исполняемых файлов ELF
  • Интерпретатор AML (частичный)
  • Базовая графическая среда

Графический интерфейс особенно впечатляет, поскольку в нем есть терминал и базовая строка состояния. В настоящее время нет ни приложений, ни программы запуска, но эти функции будут реализованы в будущем.

Banon-OS также поддерживает множество различных драйверов, сетевых опций, файловых систем и загрузчиков, что, несомненно, привлечет к сотрудничеству других разработчиков. Ниже приведено несколько основных моментов из каждой из этих категорий:

  • Драйверы: NVMe-диски, клавиатуры и мыши PS2, USB-клавиатуры, USB-мыши и USB-накопители
  • Сети: ARP, ICMP, IPv4, UDP, доменные сокеты UNIX
  • Файловые системы: Виртуальная файловая система, Ext2, FAT12/16/32, Dev, Ram, Proc
  • Загрузчики: GRUB и пользовательский загрузчик BIOS

Для тех, кто хочет узнать больше о структуре кода Banan-OS или внести свой вклад в проект, пользователи могут заглянуть на страницу проекта на GitHub. Там Банаймус предоставляет подробную информацию о проекте и конкретные инструкции по внесению вклада.

Источник(и)

Этот важный материал точно понравится твоим друзьям в социальных сетях!
Mail Logo
'
Stephen Pereyra, 2024-12- 6 (Update: 2024-12- 6)