コードの一部をクリティカルセクションとして指定する要因
私が理解しているように、コードへの同時アクセスを防ぐために、process synchronization
などのカーネルデータ構造を使用して採用されています。一般に、定義は「クリティカルセクションは共有データ(または)共有リソースにアクセスする可能性のあるコードの一部」であると考えています。したがって、質問は次のとおりです。semaphores
critical section
- 共有データはユーザースペースエンティティです。したがって、アクセスの一貫性を確保するのはユーザープロセスの責任です。
- 複数のプロセスによるリソースへの同時アクセスは、カーネルが注意を払う必要があるものだと思います。そこではどのようなユーザーレベルの同期が必要ですか?
- ユーザースペースプログラムのコードがクリティカルセクションであると判断される要因は何ですか。