Вопросы о написании операционной системы

У меня есть некоторые очень специфические вопросы о написании операционных систем, на которые я надеялся получить ответ:

  • Сколько кода сборки мне нужно будет писать для загрузки минимального ядра C, если я использую GRUB в качестве загрузчика?

  • Мое ядро ​​будет записано на C, оно загрузит оболочку командной строки, которую я написал в С++, она не делает никаких вызовов API только стандартными вызовами библиотеки, мне нужно будет переписать всю библиотеку С++ Standard для сделать это?

  • Могу ли я писать видео, клавиатуру и драйверы флоппи-дисков в С++?

  • Получают ли GCC и g++ 16-битный код реального режима?

  • Могу ли я написать все это с помощью Mingw в Windows или мне придется писать его в Linux?

  • Нужно ли находиться в реальном режиме, чтобы напрямую записывать видеопамять?

Если кто-то может ответить на мои вопросы, я буду очень благодарен

+2
источник поделиться
1 ответ

1: вам потребуется только небольшая сборка для обработки процесса загрузки и загрузки кода C. Думаю, не должно быть больше, чем 20-30 строк.

2-4: Я на самом деле не использовал С++ с ОС dev, но я думаю, что помню, что читал, что требуется больше работы, чтобы заставить его работать где-то. Извините, я не могу больше помочь.

5: вы можете "делать" это с помощью MinGW, но по моему опыту это в основном усложняет ситуацию. Я никогда не мог заставить рабочую среду Windows работать, но я тоже отказался от лишних усилий.

EDIT: Вот ссылка на пример сборки. Это все, что мне когда-либо приходилось использовать: http://www.jamesmolloy.co.uk/tutorial_html/2.-Genesis.html

Остальная часть этого сайта - довольно хороший учебник, если вы вообще заинтересованы в этом.

+3
источник

Посмотрите другие вопросы по меткам или Задайте вопрос