Логотип

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

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

Студент создал целую операционную систему с нуля на 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

 

Читать  AlmaLinux добавляет новую программу сертификации оборудования

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

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

 

Мотивация

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

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

 

Проблемы

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

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

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

 

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

Читать  Руководство по операционной системе Tails. Особенности, установка, плюсы, минусы

 

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

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

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

 

Вклад в Banan OS

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

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

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

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

 

Заключение

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

Читать  6 Способов открытия приложения "Диспетчер задач" в Windows 10/11

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

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

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

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

Редактор: AndreyEx

Рейтинг: 5 (1 голос)
Если статья понравилась, то поделитесь ей в социальных сетях:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

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

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


Загрузка...

Спасибо!

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

Прокрутить страницу до начала