Операционная система (название Cordell OS) разрабатывается на языке C и языке Assembler. Так имеется код на языке оболочки Линукс (Fedora Workstation), код Linker для статического менеджмента памяти в итоговой сборке и код на языке Python для самой сборки.
Была использована библиотека Scons для сборки проекта и сборки тестовых приложений предполагаемо запускаемых в самой операционной системе.
Основные характеристики данной операционной системы:
- Загрузчик GRUB2: Операционная система обеспечивает надежный и эффективный процесс загрузки, предоставляя стабильный фундамент для работы операционной системы. Так же благодаря загрузчику GRUB2, данная операционная система не будет конфликтовать с другими операционными системами
- Файловая система FAT32: Операционная система использует файловую систему FAT32, оптимизированную для эффективного управления файлами и структурирования данных. Так же поддерживается работы с разными дисками и имеется задел на использование других файловых систем (EXT2, EXT3, EXT4, ExFAT32)
- Компилятор Ассемблера: В составе операционной системы встроен компилятор ассемблера, обеспечивающий возможность написания и оптимизации низкоуровневого кода.
- Простой Язык Оболочки: Корделл ОС предоставляет простой язык оболочки для взаимодействия с операционной системой.
- Поддержка ELF приложений: В составе операционной системы имеется функционал обработки ELF файлов что позволяет запускать приложения написанные из вне в среде операционной системе. Запускаемые программы могут использовать функционал стандартных библиотек для данной операционной системы.
- Поддержка VBE режимов: Операционная система работает в VBE режиме вывода изображения что позволяет выводить на экран как BMP изображения, так и окна.
- Поддержка многозадачности: Операционная система поддерживает многозадачность.
- Физический и виртуальный менеджер памяти: В операционной системе работает страницирование и физический менеджмент памяти что позволяет защитить критические области адресного пространства от несанкционированного доступа пользователя.
- Поддержка интернет-протоколов и сетевой карты: Операционная система на данный момент имеет драйвер сетевой карты RLT3189 и функционал для работы с TCP, UDP, DHCP, ARP и IP протоколами.
- Поддержка клавиатурного ввода и ввода мышкой: Операционная система имеет драйвера для устройств ввода-вывода в виде мыши и клавиатуры. Имеется функционал отрисовки курсора мыши.
- Наличие системных вызовов: Операционная система имеет стандартные библиотеки основа которых лежит в наличие обработчика системных вызовов.
- Разделение на ядро и пространство пользователя: Операционная система явно разделяет программы пользовательского пространства и пространства ядра.
- Хеширование: Стандартная оболочка операционной систему поддерживает хеширование, сохранение и сверка паролей пользователей.
- Переменные окружения: Ядро операционной системы имеет реализованный менеджер переменных окружения
- Исходный код
Исходный код (архив)