Как кто-то уже предложил OS Dev - это то, что нужно. Я также хотел бы убедиться, что вы знаете, как заставить ядро работать с другим языком, который имеет большую структуру и более широко используется, чтобы у вас было больше ресурсов для этого. Заставить C / ++ работать со сборкой не так сложно, как кажется, хотя писать стандартные библиотеки с нуля - дело сложное. Так что, когда у вас все работает, я могу даже не переписывать стандартные библиотеки, но сначала определенно получу работу, а затем добавлю функциональность для вашего собственного языка.
Обязательно посмотрите книгу драконов. В значительной степени требуется чтение для любого, кто пишет свой собственный компилятор. Это Библия компиляторов и тому подобное.
Что касается написания вашего ядра в сборке / с нуля, обратите внимание на себя:
- Планирую ли я включить в сборку / первый раз вещи, которые были бы далеко не на начальном уровне для разработки / сборки ядра / ОС? (графика, сложные системы меню, игры и т. д.)
- Есть ли альтернативы ЛЮБЫМ (если не всем) вещам, которые я планирую реализовать?
- Вам не всегда нужно делать это в одиночку или кодировать что-то с нуля. хотя часто такое бывает, когда тебе нравится делать что-то с нуля или чувствовать, что ты единственный создатель чего-то.
Если вы подумали заранее или полностью делаете это как учебный опыт, в котором нет абсолютно никаких амбиций, вы, вероятно, готовы приступить к написанию кода. Ссылка на сайт, которую я разместил, поможет на неопределенный срок. Следует также отметить, что существует множество диалектов или реализаций ассемблера, мои любимые - FASM и NASM. Я определенно рекомендую NASM, потому что он построен практически под любой системой, достойной упоминания, и на данный момент содержит наиболее переносимый код, с которым мне приходилось сталкиваться. НИКОГДА НИКОГДА НЕ полагайтесь на портативность сборки! Обычно, даже если и задумано, это не так.
РЕДАКТИРОВАТЬ: Обратите внимание, что большая часть этого - просто мнения, я не собирался указывать правильный или неправильный способ кодирования. Тем не менее, я настоятельно рекомендую никогда не полагаться на портативную сборку.