|
@@ -1,79 +0,0 @@
|
|
|
-# Snowy OS: Легковесная Экспериментальная Операционная Система
|
|
|
|
|
-
|
|
|
|
|
-## Введение
|
|
|
|
|
-
|
|
|
|
|
-**Snowy OS** представляет собой **легковесную экспериментальную операционную систему**, разрабатываемую с акцентом на **минимализм**, **простоту кода** и **образовательные цели**. Проект ориентирован на демонстрацию базовых принципов построения операционных систем.
|
|
|
|
|
-
|
|
|
|
|
-**Основной целью Snowy OS** является создание **понятной и доступной** платформы для изучения системного программирования. Согласно данным репозитория проекта на **GitHub (2024)**, система разрабатывается с фокусом на **чистоту архитектуры** и **документированность кода**.
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-## Философия проекта
|
|
|
|
|
-
|
|
|
|
|
-**Snowy OS** следует принципу **"меньше — значит больше"**, избегая избыточной сложности в пользу **ясности** и **понятности**. Каждый компонент системы спроектирован с учётом образовательной ценности.
|
|
|
|
|
-
|
|
|
|
|
-**Ключевые принципы разработки**:
|
|
|
|
|
-- **Минимализм** — только необходимая функциональность
|
|
|
|
|
-- **Читаемость** — код как документация
|
|
|
|
|
-- **Модульность** — независимые компоненты системы
|
|
|
|
|
-- **Доступность** — низкий порог входа для изучения
|
|
|
|
|
-
|
|
|
|
|
-**Название "Snowy"** отражает концепцию **чистоты и простоты**, подобно свежевыпавшему снегу. Разработчики стремятся создать систему, свободную от **технического долга** и **избыточных абстракций**.
|
|
|
|
|
-
|
|
|
|
|
-## Архитектура системы
|
|
|
|
|
-
|
|
|
|
|
-**Snowy OS** использует **монолитную архитектуру ядра**, оптимизированную для простоты понимания. Компоненты системы тесно интегрированы, что упрощает изучение взаимодействия между ними.
|
|
|
|
|
-
|
|
|
|
|
-**Структура системы** включает:
|
|
|
|
|
-- **Загрузочный сектор** — начальная инициализация оборудования
|
|
|
|
|
-- **Ядро** — управление процессами и памятью
|
|
|
|
|
-- **Драйверы** — базовая поддержка устройств
|
|
|
|
|
-- **Shell** — командный интерфейс пользователя
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-## Технические характеристики
|
|
|
|
|
-
|
|
|
|
|
-**Snowy OS** ориентирована на архитектуру **x86** с возможностью расширения на **x86_64**. Система демонстрирует базовые механизмы работы операционных систем.
|
|
|
|
|
-
|
|
|
|
|
-| Компонент | Реализация | Особенности |
|
|
|
|
|
-|-----------|------------|-------------|
|
|
|
|
|
-| Язык разработки | C, Assembly | Низкоуровневый контроль |
|
|
|
|
|
-| Архитектура ядра | Монолитная | Простота понимания |
|
|
|
|
|
-| Целевая платформа | x86/x86_64 | Широкая совместимость |
|
|
|
|
|
-| Загрузчик | Собственный/GRUB | Гибкость запуска |
|
|
|
|
|
-| Файловая система | Базовая FAT | Минималистичная реализация |
|
|
|
|
|
-| Графика | Текстовый режим VGA | Простой вывод |
|
|
|
|
|
-
|
|
|
|
|
-## Реализованная функциональность
|
|
|
|
|
-
|
|
|
|
|
-**Snowy OS** включает **базовый набор возможностей**, достаточный для демонстрации ключевых концепций операционных систем.
|
|
|
|
|
-
|
|
|
|
|
-**Основные возможности**:
|
|
|
|
|
-- **Загрузка системы** — переход из реального режима в защищённый
|
|
|
|
|
-- **Управление памятью** — базовая аллокация и страничная организация
|
|
|
|
|
-- **Обработка прерываний** — IDT и обработчики исключений
|
|
|
|
|
-- **Клавиатурный ввод** — драйвер PS/2 клавиатуры
|
|
|
|
|
-- **Текстовый вывод** — VGA-буфер для отображения информации
|
|
|
|
|
-
|
|
|
|
|
-**Командная оболочка** Snowy OS предоставляет **базовые команды** для взаимодействия с системой, демонстрируя принципы работы пользовательского интерфейса.
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-## Образовательная ценность
|
|
|
|
|
-
|
|
|
|
|
-**Snowy OS** представляет значительный интерес для **студентов** и **начинающих системных программистов**. Проект позволяет изучить фундаментальные концепции без погружения в сложность production-систем.
|
|
|
|
|
-
|
|
|
|
|
-**Образовательные аспекты**:
|
|
|
|
|
-- **Процесс загрузки** — от BIOS до ядра
|
|
|
|
|
-- **Защищённый режим** — переключение режимов процессора
|
|
|
|
|
-- **Прерывания** — механизмы взаимодействия с оборудованием
|
|
|
|
|
-- **Память** — физическая и виртуальная адресация
|
|
|
|
|
-
|
|
|
|
|
-**Документация проекта** содержит подробные объяснения каждого компонента, что делает Snowy OS **отличной отправной точкой** для изучения разработки операционных систем.
|
|
|
|
|
-
|
|
|
|
|
-## Перспективы развития
|
|
|
|
|
-
|
|
|
|
|
-**Проект Snowy OS** продолжает развиваться в направлении расширения функциональности при сохранении **простоты** и **понятности**. Планируется добавление поддержки **многозадачности**, улучшение **файловой системы** и развитие **документации**.
|
|
|
|
|
-
|
|
|
|
|
-**Открытый исходный код** позволяет сообществу вносить вклад в развитие проекта и использовать его как основу для собственных экспериментов в области системного программирования.
|
|
|