第二章进程管理作业讲解。
一、 部分附加题。
2. 在进程同步模型中,为什么s1,s2交叉在两个进程中成对出现?
答:因为两个进程要协作完成一个任务,为了进程间的相互唤醒(即同步执行),对私用信号量的pv操作应成对出现在两个进程中。
5. 每个进程中的p操作(即wait操作)的顺序可以颠倒吗?为什么? v操作呢?
答:不能,应该先对私用信号量执行p操作,再对公用信号量执行p操作,否则可能会引起死锁。v操作的顺序没关系。
如:若先对mutex执行p操作,再对empty执行p操作,当执行到empty=0时,再对mutex执行p操作,可以进入缓冲池,但由于这时empty已经为0,没有空的缓冲区可用,出现死锁,出不去又进不来。
6. 对于一个公用缓冲池, 生成者进程可以一直循环执行直到整个池满; 消费者进程可以一直循环执行直到整个池空。问:两个进程可以穿插执行吗?解释。
答: 可以。因为两个进程是并发进程,不满就可以送,不空就可以取。但不论谁执行,都要先对缓冲池执行互斥操作。
7. 两个进程是通过哪几个信号量实现同步的?说明。
答:通过私用信号量 empty,和full。
已知初值empty=n, full=0 。 在生产者进程中对empty执行p操作,对full执行v操作,当empty=0,full=n时,说明缓冲池满,不能再送;当消费者进程中的full=0,而empty=n时,说明缓冲池空,不能再取。
二、书p82-83
23.答:若缺少了signal(full),由于full初值为0,消费者无法取产品;
当缓冲池全送满时,empty降为0,若缺少了signal(empty),当缓冲池全取空时,由于empty仍然为0,生产者无法再送产品。
24.答:如果wait(full)和wait(mutex)互换位置,会造成当full=0时,若有消费者进程还对full执行wait操作,导致死锁。
28.答:设初值 empty=1, full=0
precess1: begin
repeat
wait(empty)
critical section
送数据。signal(full)
until false
endprecess2: begin
repeat
wait(full)
critical section
取数据。signal(empty)
until falseend
作业二互相讲解第二章
思路 认识论 1,实践论 客体 世界 自由。2,真理论 真理的特征 真理的属性 真理与谬误。3,价值论 价值的特性 价值的评价 价值的功能 真理与价值的统一。一,实践是认识的基础。一 实践和认识的主体与客体。二 实践在认识中的决定作用。思想 情绪 行为 状态 结果。混乱 焦躁 不一致 不好 不好。整...
会计第二章讲解
第二章金融资产。知识点一 交易性金融资产 历年考题涉及本知识点情况 交易性金融资产主要结合会计差错更正出现考题 或出现单选题,一般计算处置时影响投资收益或影响营业利润的金额。金融工具,是指形成一个企业的金融资产,并形成其他单位的金融负债或权益工具的合同。金融资产可分为以下4类 一 相关规定。以公允价...
第二章标准悬挂讲解
第二章规章制度和标准的悬挂与张贴。各机关 团体 企业 事业单位,九小场所 即小学校或幼儿园 小医院 小商店或小商场 小餐饮场所 小旅馆 小歌舞娱乐场所 小网吧 小美容洗浴场所 及城市社区 农村,应当按照 可视化 的要求,统一内容 统一格式,悬挂和张贴各类消防安全规章制度 消防安全建设标准 火警处置程...