操作系统课程设计报告之和尚喝水 孟衡 联系客服

发布时间 : 星期一 文章操作系统课程设计报告之和尚喝水 孟衡更新完毕开始阅读81a45510974bcf84b9d528ea81c758f5f61f29a3

第二次运行结果如图2、3为:

(图2)

13

(图3)

14

5课程设计总结和心得

总结:本次操作系统的课程设计主要解决的是进程中信号量机制的P、V操作问题,在次中过程中通过对信号量问题、pv原语问题、进程同步和互斥问题的分析解决,让我对操作系统课程的知识认识地透彻了,并总结出了一些规律方法。

一、利用信号量和PV操作实现进程互斥的一般模型是: 进程P1 进程P2 …… 进程Pn …… …… …… P(S); P(S); P(S); 临界区; 临界区; 临界区; V(S); V(S); V(S); …… …… …… ……

其中信号量S用于互斥,初值为1。 二、使用PV操作实现进程互斥时应注意:

⑴实现互斥的P、V操作必须成对出现,先做P操作,进临界区,后做V操作,出临界区。若有多个分支,要认真检查其成对性。⑵P、V操作应分别紧靠临界区的头尾部,临界区的代码应尽可能短,不能有死循环。⑶互斥信号量的初值一般为1。

三、利用信号量和PV操作实现进程同步:

PV操作同步机制,即用一个信号量与一个消息联系起来,当信号量的值为0时,表示期望的消息尚未产生;当信号量的值非0时,表示期望的消息已经存在。用PV操作实现进程同步时,调用P操作测试消息是否到达,调用V操作发送消息。

四、使用PV操作实现进程同步时应注意:

⑴分析进程间的制约关系,确定信号量种类。在保持进程间有正确的同步关系情况下,哪个进程先执行,哪些进程后执行,彼此间通过什么资源(信号量)进行协调,从而明确要设置哪些信号量。⑵信号量的初值与相应资源的数量有关,也与P、V操作在程序代码中出现的位置有关。⑶同一信号量的P、V操作

15

要成对出现,但它们分别在不同的进程代码中。

心得:因为想给自己一个挑战,所以我选择了一个人来独自完成本次设计的课题,期间虽然自己的专业知识不够硬屡屡在代码编写时碰壁,但是功夫不负有心人,经过多次试验之后代码终于可以正常运行了。代码虽然写好了,可是在运用编译器生成文件的时候又因为不了解windos7的.exe连接环境导致了一再生成失败,好在热心网友的帮助下顺利地解决了这个问题,不禁让我感叹遇到困难时的柳暗花明又一村。

经过这次的课程设计之后,今后自己在独自解决问题时有了可供借鉴参考的经验,同时也增加了自己对待困难问题时的解决信心,更让我感到开心的是在这一过程中学到了怎么用专业知识去解决问题的方法,能令我对专业的了解更加深入。同时也要感谢老师在课程设计之初的教诲,让本人少走了不少弯路。

完成于2016年12月末 信管1141 孟衡

16