Поиск по сайту:
Еврей — это тот, кого другие считают евреем (Жан Поль Сартр).

Banan OS: Полностью функциональная ОС Linux, созданная с нуля на C ++

09.12.2024

Студент создал целую операционную систему с нуля на C++. Да, вы не ослышались! Познакомьтесь с Banan OS, любительской операционной системой для архитектур x86_64 и i686, полностью написанной на C++ студентом Оскари Аларантой. Проект полностью независим, весь код написан исключительно Аларантой, за исключением портированного программного обеспечения.

В этой статье блога мы рассмотрим технические детали Banan OS. Мы также обсудим, что побудило её создателя разработать целую операционную систему с нуля. Наконец, мы поговорим о трудностях, с которыми он столкнулся в процессе.

 

Что такое Banan OS?

Banan OS — это Unix-подобная операционная система, разработанная для архитектур x86 и x86_64. Хотите верьте, хотите нет, но Оскари Аларанта, программист-самоучка и студент, разработал всю Banan OS с нуля на C++. Это действительно впечатляющая работа!

Banan OS имеет монолитное ядро и ряд основных компонентов, включая загрузчик, ядро и библиотеки пользовательского пространства. Отличительной особенностью Banan OS является использование пользовательской стандартной библиотеки C++, частично вдохновлённой stdc++, а также надёжная поддержка современного оборудования и программного обеспечения.

Система уже предоставляет функциональную среду TTY и графического интерфейса, а также ключевые утилиты UNIX, такие как cpls, и stat. Она поддерживает USB-устройства, диски NVMe и AHCI и даже включает собственный сетевой стек с поддержкой TCP и UDP.

Banan OS

Banan OS

 

Banan OS с файловой системой, похожей на UNIX, с функциями /dev/tmp, и /proc — это не просто учебный проект, а шаг к полноценной автономной операционной системе.

Читать  Разрешения в Linux

Аларанта отметил, что он регулярно тестирует Banan OS как на виртуальных машинах, так и на реальном оборудовании.

 

Мотивация

Оскари Аларанта посвятил разработке Banan OS более двух лет. Судя по всему, его основной мотивацией был интерес к низкоуровневому программированию, в частности к разработке операционных систем.

Эта страсть отразилась в его решении написать всю операционную систему с нуля на C++, исключив портированное программное обеспечение.

 

Проблемы

Аларанта отмечает, что самые серьёзные трудности, с которыми он столкнулся при разработке Banan OS, заключались в понимании обширных технических спецификаций, с чем он раньше не сталкивался.

Тем не менее, в ходе проекта также были приятные моменты, когда казалось, что «всё работает». Аларанта считает особенно приятным видеть, как новые функции безупречно работают на реальном оборудовании, и отмечает такие важные моменты, как:

  • Обеспечение ввода с клавиатуры
  • Реализация USB-входа для мыши
  • Успешно запущенный DOOM
  • Считывание данных с дисков
  • Установление сетевого подключения
  • Запуск компилятора в работу

 

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

 

Оскари Аларанта: Разработчик Banan OS

На момент написания этой статьи Оскари Аларанта — 22-летний программист-самоучка и студент из Тампере, Финляндия. Он интересуется низкоуровневым программированием, особенно разработкой операционных систем.

Читать  Почему Alpine Linux - лучший облегченный серверный дистрибутив

Страсть Аларанты к разработке операционных систем привела его к созданию Banan OS — проекта, над которым он работал более двух лет. Он выразил желание построить карьеру в этой отрасли, возможно, используя свой опыт работы с Banan OS в качестве портфолио.

 

Вклад в Banan OS

Banan OS — это совсем новый проект, и Оскари Аларанта приглашает всех желающих внести свой вклад в его улучшение.

Поскольку Banan OS — это обучающий проект для Аларанты, он просит участников заранее связываться с ним (по электронной почте, в Discord или путём создания проблемы) перед началом работы над новыми функциями. Исправления ошибок всегда приветствуются.

Banan OS в основном размещается на персональном сервере Alaranta. Хотя вносить свой вклад не так просто, как на таких платформах, как GitHub, вы можете отправлять запросы на добавление функций через зеркало GitHub, и Alaranta будет применять их вручную.

Если вам нужен прямой доступ к серверу Alaranta, вы можете связаться с ним по электронной почте или в Discord.

 

Заключение

Banan OS — доказательство того, что при должном усердии даже один студент может создать что-то выдающееся. Оскари Аларанта вложил много времени и сил в разработку Banan OS.

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

Читать  Разница между подкачкой и сегментацией

Стремление Аларанты создавать всё с нуля распространяется и на такие важные компоненты, как интерпретатор AML, который он решил разработать самостоятельно, а не использовать существующие решения. Этот выбор свидетельствует о его стремлении понять и контролировать все аспекты ОС.

Banan OS всё ещё находится в разработке. Ознакомьтесь с последними обновлениями и изменениями в репозитории проекта на GitHub.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Поделиться в соц. сетях:


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Рекомендуемое
Сегодня фонд Raspberry Pi объявил о выпуске компьютера Raspberry Pi 500 на…

Спасибо!

Теперь редакторы в курсе.