读/写问题:有一个多进程共享的数据区,这个数据区可以是一个文件或者主存的一块空间。有一些只读取这个数据区的进程(reader)和一些只往数据区中写数据的进程(writer)。此外还必须满足以下条件:
1.任意多的读进程可以同时读这个数据区;
2.一次只有一个写进程可以往数据区中写;
3.若一个写进程正在写,禁止任何进程读。
l计数器readcount:记录同时读的读者数,初值为0。
l读互斥信号量rmutex:使读者互斥地访问共享变量readcount,初值为1。
l写互斥信号量wmutex:实现读写互斥和写写互斥地访问共享文件,初值为1。