Skip to content

04. boot hello

Kirill Krinkin edited this page Oct 29, 2016 · 9 revisions

Идентификатор задачи: 04

Дедлайн: 14/11/2016

Цель: Создание загрузочного сектора

Описание:

Требуеется разработать программу, которая будет загружаться BIOS-ом и выводить на экран “Hello, World!”. Программа будет записана в MBR диска (первые 512 байт). Чтобы BIOS воспринял сектор как загрузочный и загрузил его содержимое в память, он должен содержать в последних двух байтах специальную сигнатуру - число 0xAA55 (511 байт 0x55, 512 байт 0xAA).

Для вывода строки “Hello, World!” на экран необходимо воспользоваться прямым доступом в видеопамять. После вывода строки нужно войти в бесконечный цикл.

Компиляция:

Все операции по сборке приложения поместить в Makefile, содержащий 2 цели "build", "clean". Первая собирает приложение с именем boot, вторая удаляет все артифакты, кроме исходных текстов.

Требования к коду:

исходный код должен быть оформлен единообразно в соответствии с выбранным (самостоятельно) стилем и содержать адекватное количество комментриев.

Проверка и отладка:

Проверить и отладить задание можно с использорванием QEMU, с помощью следующей команды:

$ qemu-system-i386 -hda boot

Справочные материалы

Clone this wiki locally