x86.h static inline void cli(void)

トップページ
jupiteroak.hatenablog.com


x86.h
https://github.com/mit-pdos/xv6-public/blob/master/x86.h#L108

static inline void
cli(void)
{
  asm volatile("cli");
}

cli関数は、アセンブリ言語cli命令を実行し、ハードウェア割り込みを禁止(マスク)します。


処理の内容

インラインアセンブラ

asm volatile("cli");

関数内のインラインアセンブラを解釈すると以下のようになります。

cli

cli命令により、ハードウェア割り込みを無効にします。