○ はじめに LECTURE 2 単純なキャラクタデバイスドライバ で説明した chardev.c では、同時に open できるユーザプロセス数を 1 に制限していました。 今回は、この制限を無くして複数ユーザプロセスが同時にデバイスドライバにアクセスできる様にします。この場合は、複数プロセスが read / write に同時にアクセスすることで内部バッファの内容に不整合が生じない様にするため、内部バッファ操作の前後でロックを取得 / 解放する必要があります。 ここでは、この様な競合状態を防ぐためのロックのうち、セマフォと呼ばれるロックを使用する方法について説明します。 サンプルプログラム サンプルプログラムの説明 ○ サンプルプログラム 複数プロセスからのアクセスに対応したサンプルプログラム multiproc.c です。 はじめに のページから、 全てのサンプルプログラムを 固めた