操作系统课程设计读者写者问题
1. 操作系统习题(读者写者问题)
我就不信了。。。
2. 操作系统读者—写者问题、
由于你的问题没有写清楚具体还有什么要求,所以我按最经典的给你回答,也就内是容1、读者与写者之间互斥,写者与写者之间互斥。2、读者之间不互斥 semaphorermutex=1; semaphorewmutex=1; intcount=0; main() { cobegin reader(); writer(); coend } reader() {while(ture) {p(rmutex); if(count==0)p(wmutex); count ; v(rmutex); 读数据; p(rmutex); count--; if(count==0)v(wmutex); v(rmutex); } } writer() {while(ture) {p(wmutex); 写数据; v(wmutex); } } 刚给的这个算法已经满足你的两个条件了,如果是对写者优先的话那就还得改一改,但是读者优先的话that'sit
3. 计算机操作系统:读者——写者问题,用PV原语做.(读者优先)
int readcount=0; //读进程计数
semaphore writeblock,mutex;
writeblock=1;mutex=1;
cobegin
process reader_i(){ process writer_j(){
P(mutex); P(writeblock);
readcount++; {写文件};
if(readcount==1) V(writeblock);
P(writeblock); }
V(mutex);
{读文件};
P(mutex);
readcount--;
if(readcount==0)
V(writeblock);
V(mutex);
}
coend
不知道LZ你看懂了没有,其中mutex是读者读程序发生两种情况之间的互斥,可以看成两种情况,一种是刚有读者进来读程序,这是不让写者写,所以有P(writeblock),如果readcount==1,表示有人进来读程序,开始读程序。另一种情况是读者开始变少,少一个就readcount--,直到没有读者,这时候释放写者,读者的程序结束。写者的程序简单,就不说了
4. 读者 写者问题 操作系统
http://wenku..com/view/4863412be2bd960590c67790.html
5. 计算机操作系统中读者与写者问题
是随时申请读写的,按时序来了就指定优先级和并排队,只要有资源了就会读或写。当然是各排各的队,这就是进程管理。充分利用计算机资源嘛。读资源和写资源不一定是一个啊。
6. 计算机操作系统 管程机制实现读者写者问题
管程实现读者写者算法
管程:bulletin =MODULE ;(假设已实现一基本管程monitor,同时提供了enter,leave,signal,wait等操作)
r,w:condition;
-r 控制读者使用资源, w 控制写者使用资源;
writing:boolean;
-当前写者是否使用资源;
read_account:integer;
define start_read,end_read,start_writer,end_writer;
use monitor.enter,monitor.leave,monitor.wait,monitor.signal;
procere start_read();
{ if (writing) monitor.wait(r);
read_account++;
monitor.signal(r);}
procere end_read();
{read_account--;
if(read_account =0) monitor.signal(w); }
procere start_write();
{ if(read_account<>0) or writing);
monitor.wait(w);
writing=true;
procere end_write();
{ writing=fasle;
if(r<>NULL) monitor.signal(r);
else monitor.signal(w); }
根据上述定义的一系列过程,给出改进后的读者写者算法。
读者写者算法如下:
reader-(读者进程):
{
while(true)
{
bulletin.enter();
bulletin.start_read();
read();
bulletin.end_read();
bulletin.leave();}
}
writer-(写者进程):
{
while(ture)
{
bulletin.enter();
bulletin.start_write();
write();
bulletin.end_write();
bulletin.leave();}
}
7. 跪求计算机操作系统的读者--写者问题的C语言版源代码
看看这抄个网页袭希望能对你有些帮助
http://blog.csdn.net/surstar/archive/2005/02/05/282109.aspx
8. 操作系统读者写者问题
操作系统里很多进程都是死循环,跟我们平常写的程序是不一样的。
9. 200分求利用记录型信号量解决读者写者问题课程设计
估计没人有那么多时间做这题了,你自己好好看看书吧 程序题不是很难 ,知道有扎实的基础.