Создание операционной системы на ассемблере

         

Загрузка с диска файла сценария (конфигурации) загрузки.


Из-за сложности VFAT (FAT с длинными именами) он не реализован. Все имена на диске FAT должна иметь формат 8.3
В файловой системе FAT я не оперирую принятыми в MS системах именами дисков и при указании пути использую путь относительно корневой директории диска (как это делается в юникс системах).

Файл конфигурации у нас пока называется boot.rc и находится в каталоге /etc. Формат у этого файла достаточно нестрогий. Из-за нехватки места в boot секторе там сделана реакция только на ключевые слова, которыми являются:

  • kern[el] - файл ядра;
  • modu[le] - файл модуля;
  • #end - конец файла конфигурации.
  • Использование этих слов в другом контексте недопустимо.

    Предварительно проинициализировав файловую систему

    call fs_init

    Мы загружаем этот файл с диска.

    mov si, boot_config call fs_load_file

    ...

    boot_config: db '/etc/boot.rc', 0

    Содержимое файла конфигурации такое:

    kernel /boot/kernel
    #end

    Модулей у нас пока никаких нет, да и ядро еще в зачаточном состоянии. Но речь сейчас не об этом.



    Содержание раздела