Skip to content

CodeLibraty/XKernel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XKernel

Обзор проекта

XKernel - это современное ядро спосбоное работать без root каталога - поскольку весь функционал вшит в ядро, разрабатываемая с нуля. Проект направлен на создание легковесного, но функционального и гибкого Ядра, которая сочетает в себе простоту классических систем Dos, Unix но с возможностями современных технологий.

Особенности

  • Минималистичное ядро: Написано на C с ассемблерными вставками для критических компонентов
  • Модульная архитектура: Возможность динамической загрузки и выгрузки компонентов системы
  • Файловые системы: Поддержка только собственной XFS65
  • Командная оболочка: Простой, но функциональный интерфейс командной строки
  • Драйверы устройств: Базовая поддержка ATA-дисков, клавиатуры и VGA-дисплея

Цели проекта

XKernel является ядром проекта UMixOS, который стремится создать:

  • Полноценную альтернативу Apple MacOS и Microsoft Windows с открытым исходным кодом
  • Систему без искусственных ограничений, где пользователь имеет полный контроль
  • Универсальную ОС, одинаково удобную как для обычных пользователей, так и для продвинутых
  • Гибкую и модифицируемую систему, которую можно настраивать, исследовать и модифицировать без ограничений

Важно: Данный репозиторий содержит только ядро (XKernel) и минимальный образ для его запуска с базовым Shell. Графический интерфейс, пользовательские приложения и дополнительный функционал разрабатываются в рамках проекта UMixOS и находятся в отдельном репозитории. // разработка UMix ещё не начата ввиду не законченного ядра

Текущее состояние

На данный момент реализованы:

  • Загрузчик на основе GRUB2 с поддержкой Multiboot2
  • Базовая инициализация 64-битного режима процессора
  • Система прерываний и обработка клавиатуры
  • Файловые системы XFS65
  • Простая командная оболочка с базовыми командами
  • Система управления памятью
  • Модульная система для расширения функциональности

Планы развития

  • Сетевой стек: Добавление поддержки TCP/IP и базовых сетевых протоколов
  • Графический интерфейс: Разработка простого оконного менеджера
  • Многозадачность: Реализация планировщика задач и многопроцессорной поддержки
  • Расширенная файловая система: Улучшение существующих и добавление новых файловых систем
  • Поддержка USB: Драйверы для работы с USB-устройствами
  • Пользовательские приложения: Разработка базового набора утилит и приложений

Требования для сборки

  • GCC (кросс-компилятор для x86_64)
  • NASM
  • GRUB2
  • Bash
  • Make

Запуск

  • Стабильно на Qemu, но может запускатся и на других

Как собрать и запустить

  1. Клонируйте репозиторий
  2. Запустите скрипт сборки: ./build.sh
  3. Запустите в эмуляторе: qemu-system-x86_64 -cdrom os.iso -drive file=disk.img,format=raw,if=ide -m 256 -boot d

Структура проекта

  • src/kernel/Boot/: Загрузчик и инициализация системы
  • src/kernel/Core/: Основные компоненты ядра
  • src/kernel/Drivers/: Драйверы устройств
  • src/kernel/FS/: Файловые системы
  • src/kernel/Utils/: Вспомогательные функции и утилиты
  • src/kernel/Xenial/: Основной файл и код ядра

Участие в проекте

Мы приветствуем вклад в развитие XKernel! Если вы хотите принять участие:

  1. Форкните репозиторий
  2. Создайте ветку для вашей функциональности
  3. Внесите изменения
  4. Отправьте pull request

Лицензия

Проект распространяется под лицензией MIT.

Контакты

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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published