SL/ru

From KolibriOS wiki
Revision as of 21:32, 27 July 2010 by Asper (talk | contribs) (Orho corrections; deleted from "Coding" category)
Jump to navigation Jump to search

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 кб.