А я начал с ядра, вернее с распределения виртуальной памяти, определил что где хранится, создал списки, примитивы взаимоисключения и т.п. функции реализация которых даже на асме занимает не более десятка строк. Однажды настал момент тестирования, и к этому моменту я уже знал что и куда надо грузить. Изначально я хотел грузить это все из под доса но Креотон, а вслед за ним и ДинамитЕ посоветовали Груб. После его прикрутки мне понадобились функции типа printf и так далее пошло поехало.
Если бы я начал с загрузчика, я бы напоролся на ту же проблему на которую напоролись мои предшественники, которые на этом и заканчивали...
Ну допустим все шаги до
Цитата:
потом напишу вторичный загрузчик.
потом сделаю, чтоб были хоть простейшие команды (уже DOSKernel).
к тому времени уже буду твёрдо знать нужные мне команды асма.
потом сделаю ядро(GUI+SOLKernel). причём ядро не простое, а SOLKernel.
понятны и неоспоримы
но вот в момент этого и начинается самое интересное, то есть мы уже можем загрузить ядро, но даже не догадываемся что оно будет из себя представлять
поэтому возникеют вопросы
-что будет делать вторичный загрузчик и как он это будет делать
-какие комманды кроме хелп мы можем реализовать и нужны ли они, если тут будет прикрутка клавы, то дальше будет её открутка и прикрутка к ядру, делаю бесполезными эти начинания
-тут понятно
-какое будет ядро, монолитное или микроядро, как будут храниться описатели и тп данные ядра, драйвера, межпроцессное взаимодействие, распределение памяти и тп... и до этого момента будет всего лиш программа которая может работать без системы, и до этого нужно будет дожить, а с такими темпами дожить будет реально сложно...
Я за то чтоб кто нить обьяснил патцану что в жизни любого проекта есть стадия проектирования, на которой должны решиться все вопросы касающиеся программирования данного проекта.... иначе время завершения стремится к бесконечности...