Читаешь много книг про работу процессора в защищенном режиме, про организацию памяти, про многозадачность. Потом читаешь много книг про работу с внешними устройствами, прерывания, DMA, шины, про организщацию работы всего этого паралельно и без затупов. Потом пытаешься написать ядро, которое будет хотя бы просто запускаться на голом железе и инициализировать минимально необходимый набор оборудования, чтобы сказать "Hello world!" в текстовом режиме.
Теперь у тебя есть минимально работающее ядро. Можешь пробовать начать обвешивать его функционалом, чтобы оно могло запускать другие процессы, распределять память между ними, транслировать физические адреса в виртуальные, обеспечивать конкурентный доступ к оборудованию через интерфейсы ядра. Корректно эти процессы запускать, завершать и следить, чтобы один не мог испортить память другого.
Ну вот и получилось что-то похожее на минимальную ОС.
4 комментариев
Добавить комментарий