1

NASM でコンパイルされる単純なカーネルを作成するための標準的な方法は何ですか?

より明確にするために、次のすべての方法でコードブロックを定義できました。

[segment code]
[segment .code]
segment code
segment .code

[section code]
[section .code]
section code
section .code

それを行うための標準的な方法は何か、そしてそれらの違いは何なのかを知る必要があります...

ありがとう

4

1 に答える 1

3

上記のように、あなたの質問はNASMドキュメントの回答です。

真実は..コードをロードするとき、セクションはあまり意味がありません。カーネルをロードするには、完全なブートローダーが必要です。ブートローダーには、GDTr をロードするための 512b があり、A20 を有効にし、保護モードに入り、_kmain にジャンプします。他の例や情報については、OSDev.org をチェックしてください。

于 2011-04-13T14:47:31.650 に答える