データアクセスを制御するための明示的手順をドライバで実行する必要があるかどうかは、データのストレージクラスによって決まります。データストレージクラスには次の 3 種類があります。
自動 (スタック) データ。すべてのスレッドはプライベートスタックを備えているため、ドライバで自動変数のロックが必要になることはありません。
グローバル静的データ。グローバル静的データは、ドライバ内の任意の数のスレッドによって共有できます。ドライバでこの種類のデータをロックすることが必要になる場合があります。
カーネルヒープデータ。kmem_alloc(9F) によって割り当てられるデータなど、カーネルヒープデータは、ドライバ内の任意の数のスレッドによって共有できます。ドライバはこのような共有データを常に保護する必要があります。