SL/ru
Secondary Loader - Вторичный загрузчик
Начало разработки - 13 февраля 2008 года. Сейчас имеет версию 0.10.
Теплов Алексей nickname <Lrz>
Гречников Евгений nickname diamond
Введение
SL(Secondary Loader), это программный продукт, предназначенный для загрузки ОС (Операционна Система). SL - это загрузчик второго уровня, представляет собой промежуточный код, который позволяет запускать и конфигурировать загрузку ОС на этапе запуска. Для разрабатываемого микроядра, как в прочем и для самой ОС Колибри, данный код позволит более гибко настраивать среду, как для организации различных сервисов, так и использовать для встраиваемых решений.
Основная цель разработки SL, является создание универсального загрузчика ОС для платформы х86. При создании кода основными критериями были выбраны:
Универсальность Возможность использования загрузчика при организации загрузки различных ОС на платформе х86. Гибкость и функциональная расширяемость за счет модулей.
Областью применения для данного загрузчика является загрузка OS на базе ядра Kx64, как и любой другой ОС на платформе х86 или х86-64. Основная задача загрузчика это загрузка ОС, и настройка ее окружения. Под этим понимается загрузка драйверов, утилит и конфигурирование в зависимости от последовательности в указанном ini файле. Вторичный загрузчик не использует простые методы решения проблем, скорее тут соблюдена концепция эффективного подхода к разработке продукта, сочетается эффективность логического подхода с эффективностью реализации кода на аппаратном уровне. Применен принцип разделения, т.е. вся задача выстраивается в общий легко понимаемый алгоритм, который состоит из основных блоков. Каждый блок разбивается на функции и процедуры, специфичные для различных целей, в зависимости от внутренней логической работы, в свою очередь, и те программые единицы могут быть разбиты до составляющих, которые просто решаемы с применением команд х86 процессора. В качестве отладки и контроля корретности процедур используется вывод отладочной информации на дисплей, или СОМ порт.
Системные требования
Разработка SL ведется только под платформу x86 (х86-64), SL платформенно зависим, т.к. в своей работе использует сервис BIOS и другие особенности платформы х86 (x86-64):
1. Процессор i586 или выше. 2. Поддержка 0x87 функции 0x15 прерывания (перемещение блока до 64 кб за 1 мб). 3. Поддержка 0х88 функции 0х15 прерывания. 4. Поддержка 0х3 функции 0х10 прерывания. 5. Поддержка 0х0 функции 0х16 прерывания. 6. Первичный загрузчик с поддержкой callback сервиса.
Модули вторичного загрзучика:
1. Размер вторичного загрузчика не превышает 64 кб. 2. Размер startos.ini файла конфигурации не превышает 64 кб.