第1章が計算の理論、第2章がプログラミング言語と、基本的なおさらいから入っている。
3-2で同期メカニズムを説明している。
DijkstraのCo-operatingSequentialProcessedからSemaphore(腕木信号)を紹介している。
プログラム上で、SemaphoreをMUTEXという変数名にしている理由はよくわからなかった。
Mutexは、Mutual exclusionで、semaphoreで実現できるという意味だろうか。
例題としては、読み出し書き込み問題、哲学者の食事問題、生産者消費者問題の紹介がある。
第9章がペトリネットである。ペトリネットの問題点として、ブレースノードが空かどうかが決定できないという制約があるという。この問題を克服するためには、否定コンディションのためのブレースノードを陽に設けなければならないそうです。相互排除ネットにおいて、”このプロセスは臨海領域内にはない”というのは批点のコンディションです。しかし、数を覚えているという状況をモデル化する場合、時として適切ではなくなるという。
ペトリネットを書いたことがないせいか、ここが理解できていません。