вторник, 9 июля 2013 г.

PhantomEx: Набор инструментальных средств

Сразу скажу что написание ОС в среде операционной системы Windows - это достаточно сложное знанятие, в виду разнородности средств и трудности их сопряжения между собой.

В качестве основной платформы для начала разработки автором выбран дистрибутив Arch Linux. Почему арч - да просто потому что он установлен на моем домашнем компьютере. В Вашем случае подойдет любой другой дистрибутив.


Естественно необходимы средства для компиляции и сборки: компилятор gcc, компоновщик ld, имеющийся в любом дистрибутиве ассемблер - gas, а так же утилита make для управления сборкой.

Кроме того понадобится отладчик - в Linux отладчику gdb сложно отыскать конкурентов.

Далее - разрабатываемое ядро где-то необходимо запускать. В древние времена приходилось выполнять отладочные запуски на настоящем компьютере, либо на том же на котором велась разработка, и тогда необходимо было перезагружаться, либо для этих целей имелась дополнительная машина, однако на неё испытуемый код тоже каким-то образом необходимо было переносить.

В эпоху виртуализации на помощь приходят эмуляторы. Для разработки ОС предпочтительнее использовать такие эмуляторы как Bochs и QEMU. Обе виртуальные машины имеют интерфейс к отладчику gdb. QEMU кроме всего прочего имеет возможность использовать средства аппаратной виртуализации, что позволяет существенно ускорить исполнение испытуемого кода.

Ещё может понадобится шестнадцатиричный редактор. Можно посоветовать такой редактор как HT-editor , доступный в большинстве дистрибутивов, обладающий неплохим встроенным дизассемблером, позволяющий просматривать символьную информацию и секции в сгенерированном коде.