Так и есть, по большому счёту. Однако ядро само по себе не имеет никакого смысла, так что, ИМХО, нужно начинать именно с определения того, какие сервисы ядро будет предоставлять прикладным программам и как будет осуществляться взаимодействие. Фактически нужно описать API, однако голых заголовков функций здесь недостаточно. Так, следует описать методы управления памятью, которые ОС предоставляет в распоряжение прикладных программ (например, поддерживается ли совместное использование одной области памяти несколькими программами и если да, то как это дело разруливается).
Понятно, что сходу создать достаточно полное описание не удастся: для этого нужен приличный опыт, а его надо нарабатывать на практике. Но, тем не менее, бросаться в кодирование очертя голову не следует даже начинающим, всегда полезно сначала подумать, порисовать схемки на бумаге, почитать умные книжки (не зубрить, а ознакомиться с темой, так сказать -- всё равно без практики многие вещи останутся недопонятыми, даже если в теории всё вроде бы ясно).
|