1

私はデバイス ドライバーを持っており、正確に 1 つのプロセスだけで開くようにしたいと考えています。このプロパティを実際に設定するには、どのような構造を使用する必要がありますか? Freebsd OS、C 言語、カーネル デバイス ドライバ ヒントはありますか?

4

1 に答える 1

2

これは、デバイス ドライバー内で追跡できます。オープンを拒否します。つまり、簿記を行います (オープン時に is_open=true、クローズ/ロス時に is_open=false)。

または、排他モードや fcntl/flock と組み合わせて必要な場合は、open() 自体の通常のロック セマンティクスを使用することもできます。

于 2012-07-25T16:40:56.623 に答える