- 7
- 0
- 约4千字
- 约 8页
- 2018-10-11 发布于重庆
- 举报
变形的读者-写者进程同步问题
变形的读者-写者进程同步问题
第24卷第17期
2008年9月
甘肃科技
GansuScienceandTechnolo
2_24
See.
Ⅳo.17
2oo8
变形的读者一写者进程同步问题
李广军,荆天
(1.商丘师范学院计算机科学系,河南商丘476000;2.商丘师范学院数学系,河南商丘476000)
摘要:读者一写者问题是操作系统中经典进程同步问题之一,在传统解决读者写者问题方案的基础上,给出了两
种变形读者写者问题的解决方案和算法.
关键词:进程;互斥;信号量
中图分类号:TP139
利用记录型信号量机制来实现读者与写者的同
步问题,一直是操作系统中讨论的经典进程同步热
点问题,而且由它引出的一系列变异问题,如:不同
类型的读者,不同类型的写者等问题也都是很典型
的进程同步问题.这类题型变化多,实例多,又与实
际生活中的问题有着紧密联系.本文利用记录型信
号量机制,对两种变形读者一写者问题进行了分析,
同时给出了具体的解决方案和算法.
1传统读者一写者问题及解决方案
1.1传统问题内容
某共享文件,多个读者(只读文件进程)和多个
写者(只写文件进程)在某个时间段内对该文件资
源异步进行读写.为避免文件数据出现丢失修改和
读脏数据的情况,对读者写者要求如下:
(1)读一读共享,即允许多个读者同时对文件
进行读操作.
(2)读一写互斥,即不允许读者和写者同时对
文件分别进行读写操作.
(3)写一写互斥,即不允许多个写者同时对文
件进行写操作.
1.2传统解决方案
解决方案和具体算法的内容,请参考汤子瀛西
安电子科技大学出版社的计算机操作系统(修订
版)P49的描述.
2两种变形的读者一写者问题
2.1两组不同类型写者的读者一写者问题
问题内容:
两组不同类型的多个写者共享一个文件,要求
写与写是互斥即无论是否为同一组都不能同时写操
作共享文件.但如果某组中有一写者正在对文件操
作时,该的后续写具有比另外一组的后续写者优先
操作权.
解决方案:
在写者优先的读者一写者问题的方案的基础
上,为两组读者分别引入整型量writerlcount和
writer2count,来记录各组当前正在运行的写者进程
数量.同时要注意的是Writerlcount和Writer2count
是两个临界资源所以在这里还要分别引人新的互斥
信号量Wclmutext和Wc2mutext.
算法描述:
VarRmutex,We1mutext,Wc2mutext,Idmutex,
Enmutex:semaphore:=1,1,1,1,1;
Readercount,writerlcount,Wfiter2count:integer:
=0,0,0;
Reader(读者进程)
begin
repeat
wait(Enmutex);
wait(Idmutex);
wait(Rmutex);
ifReadercount:0thenwait(Wmutex);
Readercount:=Readercount+1;
signal(Rmutex);
signal(Idmutex);
signal(Enmutex);
performreadoperation;
wait(Rmutex);
Readercount:Readercount一1;
ifReadercount=0thensignal(Wmutex);
signal(Rmutex);
甘肃科技第24卷
untilfalse;
end
writerl(第一组写者进程)
begin
repeat
wait(Wc1mutex)
ifwriterlcount=0thenwait(Idmutex);/$是
否为该组的第一写者/
writer1count:=writerlcount+1:
signal(Wclmutex);
wait(Wmutex);
performwriteoperation;
signal(Wmutex);
wait(Wc1mutex)
writerlcount:writerlcount一1;
ifwriterlcount=0thensignal(Idmutex);/女
是否为该组的最后一写者/
signal(We1mutex);
untilfalse;
end
writer2(第二组写者进程)
begin
repeat
wait(Wc2mutex)
ifwriter2count=0thenwait(Idmutex);/是
否为该组的第一写者/
writer2count:=writer2count+1:
signal(Wc2mutex);
wait(Wmutex);
performwriteoperation;
signal(Wmutex);
wait(Wc2mutex)
writer2count:=w
您可能关注的文档
- 双层自动停车场PLC控制-.doc
- 双层分捡传送线PLC控制系统说明书.doc
- 双曲线几何性质例题讲解.doc
- 双机冗余 CAN总线的双机冗余系统设计工业控制网络课程设计图文.doc
- 双桥安全管理制度汇编.doc
- 双标管理指导下的工地试验室重要性探究.doc
- 双汇危机公关策划书吴小洁.doc
- 双洞路人行天桥工程勘察报告.doc
- 双流县土地利用总体规划修编大纲 中国成都.doc
- 双流工业招商优惠政策要点汇编.doc
- JJF(吉) 146-2025 超声波测厚仪厚度标准器校准规范 .docx
- 稳定平台钢带传动回弹问题研究.pdf
- JJF(吉) 158-2025 生物程序降温仪校准规范 .docx
- 涡旋压缩机新型型线的特性研究.pdf
- JJF(吉) 143-2024 在线挥发性有机化合物氢火焰离子化分析仪校准规范 .docx
- JJF(吉) 130-2024 酸雨降雨自动监测仪校准规范 .docx
- 国家公务员考试法律常识考查重点知识梳理汇编.pdf
- 人教统编版五年级语文下册《军神》公开课教学课件.pptx
- 部编人教版五年级语文下册《军神》教学课件.pptx
- 统编人教版五年级语文下册《军神》公开课教学课件.pptx
原创力文档

文档评论(0)