- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
例1、设有一台计算机,有两条I/O通道,分别接一台卡片输入机和一台打印机。卡片机把一叠卡片逐一输入到缓冲区B1中,加工处理后再搬到缓冲区B2中,并在打印机上打印结果。问:
①系统要设几个进程来完成这个任务?各自的工作是什么?
②这些进程间有什么样的相互制约关系?
输入处理输出卡片机缓冲区B1
输
入
处
理
输
出
卡片机
缓冲区B1
缓冲区B2
打印机
从图中可以看出,从“卡片机”到“打印机”共需要3个操作,即输入、处理、输出。这3个动作就是完成任务的3个进程。
下面我们看看这些进程之间有什么样的制约关系。可以看出,这3个进程之间是同步关系,合作完成从输入到输出的工作任务。对其中任何一个进程,要处理好与其关联的两端设备的协调工作。以“输入进程”为例,它与卡片机和缓冲区B1关联,将卡片机的卡片输入到缓冲区B1,在不考虑卡片机的情况下,就要考虑缓冲区的情况,即是满还是空,是空缓冲区,输入进程就可以输入信息,如果缓冲区满,则要等待“处理进程”将B1中的信息取走,使之为空,输入进程才能继续工作。依此类推,可以找出另外2个进程的制约关系。
一般来说,处理进程同步需要2个信号量,“输入进程”和“处理进程”同步,需要2个信号量,解决缓冲区B1的协调操作问题;而“处理进程”和“输出进程”同步,还需要2个信号量,解决缓冲区B2的协调操作问题。因此,共需要4个信号量。本题中“处理进程”的算法有一些难度,因为它需要协调两个缓冲区的工作,考虑的因素比较多,算法复杂些。
答案
①系统可设三个进程来完成这个任务:R进程负责从卡片输入机上读入卡片信息,输入到缓冲区B1中;C进程负责从缓冲区B1中取出信息,进行加工处理,之后将结果送到缓冲区B2中;P进程负责从缓冲区B2中取出信息,并在打印机上印出。
②R进程受C进程影响,B1放满信息后R进程要等待——等C进程将其中信息全部取走,才能继续读入信息;C进程受R进程和P进程的约束:B1中信息放满后C进程才可从中取出它们,且B2被取空后,C进程才可将加工结果送入其中;P进程受C进程的约束:B2中信息放满后P进程才可从中取出它们,进行打印。
③信号量含义及初值:
B1full——缓冲区B1满,初值为0;B1empty——缓冲区B1空,初值为0;B2full——缓冲区B2满,初值为0;B2empty——缓冲区B2空,初值为0;
例二:应用题(每小题10分,共20分)
1.设A:B两个进程共用一个缓冲区Q,A向Q写入信息,B从Q读出信息,算法框图如图所示。判断该同步问题的算法是否正确?若有错,请指出错误原因并予以改正。
这个算法不对。(1分)
因为A、B两进程共用一个缓冲区Q,如果A先运行,且信息数量足够多,那么缓冲区Q中的信息就会发生后面的冲掉前面的,造成信息丢失,B就不能从、Q中读出完整的信息。(1分)’进行改正:A、B两进程要同步使用缓冲区Q。为此,设立两个信号量:
empty表示缓冲区Q为空,初值为l;(2分)full表示缓冲区Q为满,初值为0。(2分)算法框图如图所示。(每个图正确各2分,共4分)
例3、下表给出作业l,2,3的提交时间和运行时间。采用先来先服务调度算法和短作业优先调度算法,试问作业调度次序和平均周转时间各为多少?(时间单位:小时,以十进制进
行计算。)
作业号
提交时间
运行时间
1
0.0
8.0
2
0.4
4.0
3
1.0
1.0
分析解此题关键是要清楚系统中各道作业随时间的推进情况。我们用一个作业执行时间图来表示作业的执行情况,帮助我们理解此题。
采用先来先服务调度策略,其作业执行时间图如下:
作业
作业
作业3
作业2
作业1
00.41.0
作业提交时间
8.0
12.013.0
时间
各作业陆续完成时间
采用短作业优先调度策略,其作业执行时间图如下:
作业
作业
作业3
作业2
作业1
00.41.0
作业提交时间
8.0 9.0
13.0
时间
各作业陆续完成时间
另外,作业i的周转时间Ti=作业完成时间-作业提交时间
系统中n个作业的平均周转时间T?(?n
i?1
T)?1,其中Ti为作业i的周转时间。
i n
解:采用先来先服务调度策略,则调度次序为l、2、3。
作业号
提交时间
运行时间
开始时间
完成时间
周转时间
1
0.0
8.0
0.0
8.0
8.0
2
0.4
4.0
8.0
12.0
11.6
3
1.0
1.0
12.0
13.0
12.0
平均周转时间T=(8+11.6+12)/3=10.53
采用短作业优先调度策略,则调度次序为l、3、2。
作业号
提交时间
运行时间
开始时间
完成时间
您可能关注的文档
- 沥青混凝土道路改造施工方案.docx
- 沥青混凝土搅拌站项目可行性报告.docx
- 沥青混凝土旧路面铣刨施工方案.docx
- 沥青混凝土路面管线开挖恢复冬季工程施工设计方案.docx
- 沥青混凝土路面面层允许偏差.docx
- 沥青混凝土路面施工组织设计-范例.docx
- 沥青路面和混凝土路面施工方案.docx
- 沥青路面渗水性能检测方法.docx
- 沥青下面层报验表.docx
- 例会制度分析和总结.docx
- 青岛版(2024)小学数学一年级上册《我的幼儿园》教学设计及反思(共2课时).docx
- 西师大版(2024)小学数学一年级上册《活动一:介绍我的幼儿园》教学设计及反思.docx
- 北师大版(2024)小学数学一年级上册《我上学啦》教学设计及反思.docx
- 冀教版(2024)小学数学一年级上册《排座位》教学设计及反思.docx
- 北京版(2024)小学数学一年级上册《活动一:参观校园》教学设计及反思.docx
- 北京版(2024)小学数学一年级上册《活动三 整理书包》教学设计及反思.docx
- 冀教版(2024)小学数学一年级上册《熊猫请客》教学设计及反思.docx
- 湘科版(2024)小学科学一年级上册《找相同和不同》教学设计及反思.docx
- 冀人版(2024)小学科学一年级上册《学科学》教学设计及反思.docx
- 人教版(2024)初中生物七年级上册《动物细胞》教学设计及反思.docx
文档评论(0)