2013-2014A_20131122_期中测试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
9
4、当前系统处于安全状态,安全序列如下求解: work=Available=(3,3,2) 寻找 Needj<=work=(3,3,2)(j=0,1,2,3,4) j=1 Need1=(1,2,3)<=(3,3,2)
work:=(3,3,2)+(2,0,0)=(5,3,2) 寻找 Needj<=work=(5,3,2)(j=0,2,3,4) j=3 Need3=(0,1,1)<=(5,3,2) work:=(5,3,2)+(2,1,1)=(7,4,3) 寻找 Needj<=work=(7,4,3)(j=0,2,4) j=4 Need4=(4,3,1)<=(7,4,3) work:=(7,4,3)+(0,0,2)=(7,4,5) 寻找 Needj<=work=(7,4,5)(j=0,2) j=2 Need2=(6,0,0)<=(7,4,5) work:=(7,4,5)+(3,0,2)=(10,4,7) 寻找 Needj<=work=(10,4,7)(j=0) j=0 work:=(10,4,7)+(0,1,0)=(10,5,7) 所以安全序列为<P1,P3,P4,P2,P0>。
10
5、Байду номын сангаас
0 A 5 C 0000 1010 0101 1100 第2页对应第4块 起始地址: 0001 0000 0000 0000 加起来: 0001 0010 0101 1100 1 2 5 C
11
6、 115,228,120,88,446,102,321,432,260,167分 别对应第1,2,1,0,4,1,3,4,2,1内存页面,300 字对应3个空闲页,第0页已经装入主存。 访问页面序列: 1 2 1 0 4 1 3 4 2 1 FIFO算法: 0 0 0 0 0 4 4 4 4 4 4 1 1 1 1 1 1 3 3 3 3 2 2 2 2 2 2 2 2 1 * * * * * FIFO算法:缺页次数为5次,依次淘汰的页面有0,1,2,最后为 4,3,1页面。 LRU算法: 0 0 0 0 0 0 0 3 3 3 1 1 1 1 1 1 1 1 1 2 2 2 2 2 4 4 4 4 4 4 * * * * * * LRU算法:缺页次数6次,依次淘汰2,0,1,3,最后存在页面为 1,2,4页面。
5
2、设有输入进程INPUT,缓冲区B1接纳输入内容 。进程MAKER对B1中的内容加工后移送到B2。进程 OUTPUT负责从B2中取出内容进行打印。设有一个 无穷序列供INPUT输入,B1与B2的大小相同。请用 PV过程写出三个进程同步工作的过程。
答:INPUT进程受MAKER进程影响。B1放满信息后INPUT进程要等待 ---等MAKER进程将其中全部信息取走,才能读入信息;MAKER 进程受INPUT进程和OUTPUT进程的约束:B1中放满信息后MAKER 进程才可从中取出它们,并且B2被取空后MAKER进程才可将加工 结果放入其中;OUTPUT进程受MAKER进程约束:B2中信息放满 后OUTPUT进程才可从中取出它们,进行打印。 系统设置四个信号量: B1full 缓冲区B1满,初值0 B1empty 缓冲区B1空,初值1 B2full 缓冲区B2满,初值0 B2empty 缓冲区B2空,初值1
8
读者进入阅览室的动作描述getin: while(TRUE){ P (seats); /*没有座位则离开*/ P(mutex) /*进入临界区*/ 填写登记表; 进入阅览室读书; V(mutex) /*离开临界区*/ V(readers) } 读者离开阅览室的动作描述getout: while(TRUE){ P(readers) /*阅览室是否有人读书*/ P(mutex) /*进入临界区*/ 消掉登记; 离开阅览室; V(mutex) /*离开临界区*/ V(seats) /*释放一个座位资源*/ }
3
并发程序编制如下: var empty1,empty2,full1,full2:semaphore; mutex,sa,sb:semaphore; in1,in2,out1,out2:integer; buffer1,buffer2 :array [0..m-1] of item; empty1:=empty2:=m; sa:=sb:=n; in1:=in2:=out1:=out2:=0; cobegin { process producer A { repeat P(empty1); P(sa); P(mutex); buffer1[in1] :=A零件; in1:=(in1+1) mod m; V(mutex); V(sb); V(full1); untile false; }
4
process producerB { repeat P(empty2); P(sb); P(mutex); Buffer2[in2] :=B零件; in2:=(in2+1) mod m; V(mutex); V(sa); V(full2); untile false; } process take { repeat P(full1); P(full2); P(mutex); Take from buffer1[out1] and buffer2[out2]中的A、B零 件; out1:=(out1+1) mod m; out2:=(out2+1) mod m; V(mutex); V(empty1); V(empty2); 把A和B装配成产品; until false } } coend.
1、有一个仓库可存放A、B两种零件,最大库容量 各为m个。生产车间不断地取A和B进行装配,每次 各取一个。为避免零件锈蚀,按先入库者先出库 的原则。有两组供应商分别不断地供应A和B,每 次一个。为保证配套和合理库存,当某种零件比 另一种零件超过n(n<m)个时,暂停对数量大的零 件的进货,集中补充数量少的零件。试用信号量 与P、V操作正确地实现它们之间的同步关系。
6
7
3、有一个阅览室,共有100个座位,读者进入时 必须先在一张登记表上登记,该表为每一座位列 一表目,包括座号和读者姓名等,读者离开时要 消掉登记的信息,试问: (1)为描述读者的动作,应编写几个程序,设置 几个进程? (2)试用PV操作描述读者进程之间的同步关系。
答:读者的动作有两个,一是填表进入阅览室,这时要 考虑阅览室里是否有座位;一是读者阅读完毕,离 开阅览室,这时的操作要考虑阅览室里是否有读者 。读者在阅览室读书时,由于没有引起资源的变动 ,不算动作变化。 算法的信号量有三个:seats——表示阅览室是否 有座位(初值为100,代表阅览室的空座位数); readers——表示阅览室里的读者数,初值为0;用 于互斥的mutex,初值为1。
汤子瀛 哲凤屏 汤小丹
编著
计算机操作系统
杨为民 m0304abc@126.com
1、有一个仓库可存放A、B两种零件,最大库容量各为m个。生产车间不断地取A和B进行装配,每次 各取一个。为避免零件锈蚀,按先入库者先出库的原则。有两组供应商分别不断地供应A和B,每 次一个。为保证配套和合理库存,当某种零件比另一种零件超过n(n<m)个时,暂停对数量大的零 件的进货,集中补充数量少的零件。试用信号量与P、V操作正确地实现它们之间的同步关系。 2、设有输入进程INPUT,缓冲区B1接纳输入内容。进程MAKER对B1中的内容加工后移送到B2。进程 OUTPUT负责从B2中取出内容进行打印。设有一个无穷序列供INPUT输入,B1与B2的大小相同。请 用PV过程写出三个进程同步工作的过程。 3、有一个阅览室,共有100个座位,读者进入时必须先在一张登记表上登记,该表为每一座位列一 表目,包括座号和读者姓名等,读者离开时要消掉登记的信息,试问: (1)为描述读者的动作,应编写几个程序,设置几个进程? (2)试用PV操作描述读者进程之间的同步关系。 4、假定具有5个进程的进程集合P={P0,P1,P2,P3,P4},系统中有三类资源A,B和C。其中A类资源 有10个,B类资源有5个,C类资源有7个。假定在某时刻有如下状态,试给出Need,并说明当前系 统是否处于安全状态; 如果是,给出安全序列。如果不是,说明理由。 Allocation Max Available A B C A B C A B C P0 0 1 0 7 5 3 3 3 2 P1 2 0 0 3 2 2 P2 3 0 2 9 0 2 P3 2 1 1 2 2 2 P4 0 0 2 4 3 3 5、某虚拟存储器的用户空间共有32个页面,每页1KB,主存16KB,假定某时刻系统为该用户的第0、 1、2、3页分别分配的物理块号为5、10、4、7,试将虚拟地址0A5C变换为物理地址 。 6、在一个采用页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列是:115, 228,120,88,446,102,321,432,260,167,若该作业的第0页已经装入主存,现分配给该 作业的主存共300字,页的大小为100字,请回答下列问题: (1)按FIFO调度算法将产生 次缺页中断,依次淘汰的页号为 , , ,缺页中断率为 。 (2)按LRU调度算法将产生 次缺页中断,依次淘汰的页号为 , , , ,缺页中断率 2 为 。
12
答:按照题意,应满足以下控制关系: A零件数量- B零件数量≤n; A零件数量≤m; B零件数量- A零件数量≤n; B零件数量≤m。
四个控制关系分别用信号量sa、sb、empty1和empty2实施。为遵循先入 库者先出库的原则,A、B零件可以组织成两个循形队列,并增加入库 指针in1、in2和出库指针out1、out2来控制顺序。
4、当前系统处于安全状态,安全序列如下求解: work=Available=(3,3,2) 寻找 Needj<=work=(3,3,2)(j=0,1,2,3,4) j=1 Need1=(1,2,3)<=(3,3,2)
work:=(3,3,2)+(2,0,0)=(5,3,2) 寻找 Needj<=work=(5,3,2)(j=0,2,3,4) j=3 Need3=(0,1,1)<=(5,3,2) work:=(5,3,2)+(2,1,1)=(7,4,3) 寻找 Needj<=work=(7,4,3)(j=0,2,4) j=4 Need4=(4,3,1)<=(7,4,3) work:=(7,4,3)+(0,0,2)=(7,4,5) 寻找 Needj<=work=(7,4,5)(j=0,2) j=2 Need2=(6,0,0)<=(7,4,5) work:=(7,4,5)+(3,0,2)=(10,4,7) 寻找 Needj<=work=(10,4,7)(j=0) j=0 work:=(10,4,7)+(0,1,0)=(10,5,7) 所以安全序列为<P1,P3,P4,P2,P0>。
10
5、Байду номын сангаас
0 A 5 C 0000 1010 0101 1100 第2页对应第4块 起始地址: 0001 0000 0000 0000 加起来: 0001 0010 0101 1100 1 2 5 C
11
6、 115,228,120,88,446,102,321,432,260,167分 别对应第1,2,1,0,4,1,3,4,2,1内存页面,300 字对应3个空闲页,第0页已经装入主存。 访问页面序列: 1 2 1 0 4 1 3 4 2 1 FIFO算法: 0 0 0 0 0 4 4 4 4 4 4 1 1 1 1 1 1 3 3 3 3 2 2 2 2 2 2 2 2 1 * * * * * FIFO算法:缺页次数为5次,依次淘汰的页面有0,1,2,最后为 4,3,1页面。 LRU算法: 0 0 0 0 0 0 0 3 3 3 1 1 1 1 1 1 1 1 1 2 2 2 2 2 4 4 4 4 4 4 * * * * * * LRU算法:缺页次数6次,依次淘汰2,0,1,3,最后存在页面为 1,2,4页面。
5
2、设有输入进程INPUT,缓冲区B1接纳输入内容 。进程MAKER对B1中的内容加工后移送到B2。进程 OUTPUT负责从B2中取出内容进行打印。设有一个 无穷序列供INPUT输入,B1与B2的大小相同。请用 PV过程写出三个进程同步工作的过程。
答:INPUT进程受MAKER进程影响。B1放满信息后INPUT进程要等待 ---等MAKER进程将其中全部信息取走,才能读入信息;MAKER 进程受INPUT进程和OUTPUT进程的约束:B1中放满信息后MAKER 进程才可从中取出它们,并且B2被取空后MAKER进程才可将加工 结果放入其中;OUTPUT进程受MAKER进程约束:B2中信息放满 后OUTPUT进程才可从中取出它们,进行打印。 系统设置四个信号量: B1full 缓冲区B1满,初值0 B1empty 缓冲区B1空,初值1 B2full 缓冲区B2满,初值0 B2empty 缓冲区B2空,初值1
8
读者进入阅览室的动作描述getin: while(TRUE){ P (seats); /*没有座位则离开*/ P(mutex) /*进入临界区*/ 填写登记表; 进入阅览室读书; V(mutex) /*离开临界区*/ V(readers) } 读者离开阅览室的动作描述getout: while(TRUE){ P(readers) /*阅览室是否有人读书*/ P(mutex) /*进入临界区*/ 消掉登记; 离开阅览室; V(mutex) /*离开临界区*/ V(seats) /*释放一个座位资源*/ }
3
并发程序编制如下: var empty1,empty2,full1,full2:semaphore; mutex,sa,sb:semaphore; in1,in2,out1,out2:integer; buffer1,buffer2 :array [0..m-1] of item; empty1:=empty2:=m; sa:=sb:=n; in1:=in2:=out1:=out2:=0; cobegin { process producer A { repeat P(empty1); P(sa); P(mutex); buffer1[in1] :=A零件; in1:=(in1+1) mod m; V(mutex); V(sb); V(full1); untile false; }
4
process producerB { repeat P(empty2); P(sb); P(mutex); Buffer2[in2] :=B零件; in2:=(in2+1) mod m; V(mutex); V(sa); V(full2); untile false; } process take { repeat P(full1); P(full2); P(mutex); Take from buffer1[out1] and buffer2[out2]中的A、B零 件; out1:=(out1+1) mod m; out2:=(out2+1) mod m; V(mutex); V(empty1); V(empty2); 把A和B装配成产品; until false } } coend.
1、有一个仓库可存放A、B两种零件,最大库容量 各为m个。生产车间不断地取A和B进行装配,每次 各取一个。为避免零件锈蚀,按先入库者先出库 的原则。有两组供应商分别不断地供应A和B,每 次一个。为保证配套和合理库存,当某种零件比 另一种零件超过n(n<m)个时,暂停对数量大的零 件的进货,集中补充数量少的零件。试用信号量 与P、V操作正确地实现它们之间的同步关系。
6
7
3、有一个阅览室,共有100个座位,读者进入时 必须先在一张登记表上登记,该表为每一座位列 一表目,包括座号和读者姓名等,读者离开时要 消掉登记的信息,试问: (1)为描述读者的动作,应编写几个程序,设置 几个进程? (2)试用PV操作描述读者进程之间的同步关系。
答:读者的动作有两个,一是填表进入阅览室,这时要 考虑阅览室里是否有座位;一是读者阅读完毕,离 开阅览室,这时的操作要考虑阅览室里是否有读者 。读者在阅览室读书时,由于没有引起资源的变动 ,不算动作变化。 算法的信号量有三个:seats——表示阅览室是否 有座位(初值为100,代表阅览室的空座位数); readers——表示阅览室里的读者数,初值为0;用 于互斥的mutex,初值为1。
汤子瀛 哲凤屏 汤小丹
编著
计算机操作系统
杨为民 m0304abc@126.com
1、有一个仓库可存放A、B两种零件,最大库容量各为m个。生产车间不断地取A和B进行装配,每次 各取一个。为避免零件锈蚀,按先入库者先出库的原则。有两组供应商分别不断地供应A和B,每 次一个。为保证配套和合理库存,当某种零件比另一种零件超过n(n<m)个时,暂停对数量大的零 件的进货,集中补充数量少的零件。试用信号量与P、V操作正确地实现它们之间的同步关系。 2、设有输入进程INPUT,缓冲区B1接纳输入内容。进程MAKER对B1中的内容加工后移送到B2。进程 OUTPUT负责从B2中取出内容进行打印。设有一个无穷序列供INPUT输入,B1与B2的大小相同。请 用PV过程写出三个进程同步工作的过程。 3、有一个阅览室,共有100个座位,读者进入时必须先在一张登记表上登记,该表为每一座位列一 表目,包括座号和读者姓名等,读者离开时要消掉登记的信息,试问: (1)为描述读者的动作,应编写几个程序,设置几个进程? (2)试用PV操作描述读者进程之间的同步关系。 4、假定具有5个进程的进程集合P={P0,P1,P2,P3,P4},系统中有三类资源A,B和C。其中A类资源 有10个,B类资源有5个,C类资源有7个。假定在某时刻有如下状态,试给出Need,并说明当前系 统是否处于安全状态; 如果是,给出安全序列。如果不是,说明理由。 Allocation Max Available A B C A B C A B C P0 0 1 0 7 5 3 3 3 2 P1 2 0 0 3 2 2 P2 3 0 2 9 0 2 P3 2 1 1 2 2 2 P4 0 0 2 4 3 3 5、某虚拟存储器的用户空间共有32个页面,每页1KB,主存16KB,假定某时刻系统为该用户的第0、 1、2、3页分别分配的物理块号为5、10、4、7,试将虚拟地址0A5C变换为物理地址 。 6、在一个采用页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列是:115, 228,120,88,446,102,321,432,260,167,若该作业的第0页已经装入主存,现分配给该 作业的主存共300字,页的大小为100字,请回答下列问题: (1)按FIFO调度算法将产生 次缺页中断,依次淘汰的页号为 , , ,缺页中断率为 。 (2)按LRU调度算法将产生 次缺页中断,依次淘汰的页号为 , , , ,缺页中断率 2 为 。
12
答:按照题意,应满足以下控制关系: A零件数量- B零件数量≤n; A零件数量≤m; B零件数量- A零件数量≤n; B零件数量≤m。
四个控制关系分别用信号量sa、sb、empty1和empty2实施。为遵循先入 库者先出库的原则,A、B零件可以组织成两个循形队列,并增加入库 指针in1、in2和出库指针out1、out2来控制顺序。