一部のオペレーティングシステムのイベント処理がcの代わりにasmで書かれたのはなぜですか?

一部のオペレーティングシステムのイベント処理がcの代わりにasmで書かれたのはなぜですか?

私の質問は、最近、いくつかのオペレーティングシステムのイベント処理はまだCのような高度な言語ではなくアセンブリ言語で書かれていますが、カーネル自体はほとんどCで書かれている理由です。

ベストアンサー1

言語はCPUレジスタへのアクセスを抽象化し、オペレーティングシステムはイベントを処理するときにコンテキストを保存する必要があるため、イベントが発生したときにレジスタにアクセスする必要があるため、C仕様に違反します。

おすすめ記事