Вот читаю я форумы, мануалы, и не понимаю одной вещи:
Народ, а откуда столько желания писать загрузчики? Свои собственные, со своими багами и своими недоработками?
Взять ту же Малинку Станислава (чувак, не в обиду). В инструкции - "запишите бинарник на флешку". У меня флешка всего одна, на 32 гигабайта, данных на ней - довольно много, и терять всё это ради одного теста - это как-то... ну, нелогично что ли? А потестить хочется, скриншоты сочные.
Так о чём это я... Загружаемый образ можно сделать очень легко - написать несколько строк на ассемблере:
Код:
format binary
org 0x200000
public _start
section '.text'
_start:
jmp _multiboot_entrypoint
align 4
_multiboot_header:
dd 0x1BADB002
dd 0x00010003
dd -(0x1BADB002 + 0x00010003)
dd _multiboot_header
dd _start
dd _end
dd _end
dd _multiboot_entrypoint
align 4
_multiboot_entrypoint:
; Код операционки
_end:
И ваша операционка будет спокойно загружаться любым multiboot-совместимым загрузчиком (будь то lilo, grub, syslinux), а управление вы будете получать уже в защищённом режиме на _multiboot_entrypoint. Причём установка любого такого загрузчика не ломает текущую файловую систему, и флешка сохраняет своё прямое назначение. Если немного подумать, то можно и разбить код операционки на много-много файлов, и собирать линковщиком (как сделал я).
Так вопрос... Нафига создавать свои загрузчики?