基于linux的进程同步与通信的模拟3

基于linux的进程同步与通信的模拟3

ID:28048932

大小:807.77 KB

页数:13页

时间:2018-12-07

基于linux的进程同步与通信的模拟3_第1页
基于linux的进程同步与通信的模拟3_第2页
基于linux的进程同步与通信的模拟3_第3页
基于linux的进程同步与通信的模拟3_第4页
基于linux的进程同步与通信的模拟3_第5页
资源描述:

《基于linux的进程同步与通信的模拟3》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、操作系统课程设计说明书学院、系:软件学院专业:软件工程学生姓名:许文清学号:0921010218基于Linux的进程同步与通信的模拟设计题目:起迄日期:2011年12月22日-2012年1月7日指导教师:贾美丽2012年1月7日1需求分析该软件盂要利用银行家算法判断系统是否处于安全状态,同吋根据银行家算法得出的安全序列进行临界资源的分配。软件设计的目的是要对输入的进程进行安全性判断模拟分配资源。首先先创建进程:手动创建儿个进程,都在界面上完成;其中包括每个进程已分配的资源、最大需求资源、系统还剩资源以及进程执行时间。假没创建5个进程。其次采用

2、银行家算法,判断是否可以进行资源的分配。最后,按照银行家©法得出的安全序列,对临界资源进行分配。2总体设计软件由两个模块组成,分别是银行家算法判断安企序列模块以及临界资源分配模块。2.1银行家算法模块这个模块屮有如下功能:初始化allocation矩阵,初始化max矩陈,初始化available矩阵,初始化need矩阵,初始化finished矩阵,初始化进程执行时间,用银行家算法判断是否安全,计算缓冲区数目,输出缓冲区资源数目。其中设置了多个线性单链表结构存储矩阵中的数据,己分配allocation矩阵、最大需求量max矩陈、可川资源数ava

3、ilable矩陈、⑷要资源数need矩吨、path矩陈、finish矩阵、ti矩阵。银行家算法:设进程i提出请求Request[n],则银行家算法按如下规则进行判断。(1)如果Request[n]>Need[i,n],则报错返回。(2)如果Request[n]〉Available,则进程i进入等待资源状态,返回。(3)假设进程i的申请己获批准,于是修改系统状态:Available=Available-RequestAllocation=Allocation+RequestNeed=Need-Request(4)系统执行安全性检查,如安全,则分

4、配成立;否则试探险性分配作废,系统恢复原状,进程等待。安全性检杳(1)设置两个工作向量Work=Available;Finish[M]=False(2)从进程集合中找到一个满足下述条件的进程,Finish[i]=FalseNeed<=Work如找到,执行(3);否则,执行(4)(1)设进程获得资源,可顺利执行,直至完成,从而释放资源。Work=Work+AllocationFinish=TrueGOTO2(2)如所有的进程Finish[M]=true,则表示安企;否则系统不安企。2.2临界资源分配模块这个模块有如下功能:创建线程、模拟为线程分

5、配资源。在原来的基础上设置了两个指针数组altemp、ntemp,分别存放每个进程的已分配资源和需要的资源量。通过比较每类资源的需要资源:W:和系统可用的资源:W:之间大小关系,判断系统是否能给进程分配资源。如果能分配,则利用sleep函数等待进程执行完毕,然后在释放进程利用的资源,执行完毕。如果不能分配,则利用sleep函数等待一度啊时间,再进行循环判断,直到判断出资源量能够满足进程的要求。运行时,首先先新建一个终端,然后用gcc命令编译和链接,运行程序,编译命令力:gcc-oprocessprocess,c-lpthread如下创建三类资

6、源,五个进程,并写出每个进程的己分配资源、最大需求量、系统现在可用的资源、进程执行时间。如下。t@kx^il>osu文件<£>编枬(£>迕吞(Y>终端(I》矜到(£!>帮助[root^>localhostroot]#•/processsourceTypeMirrber:3processHirrber:5aIlocationpleaseinputprocesspleaseinputpleaseinputpleaseinputpleaseinputpleaseinputpleaseinputpleaseinputpleaseinputpl

7、easeinputpleaseinputpleaseinputpleaseinputpleaseinputpleaseinputprocessprocessprocessprocessprocessprocessprocessprocessprocessprocessprocessprocessprocessprocessnunherpOaIlocationpOaIlocationpOaIlocationpiaIlocationpiaIlocationpiaIlocationp2aIlocationp2aIlocationp2aIlocati

8、onp3aIlocationp3aIlocationp3aIlocationp4aIlocationp4aIlocationp4aIlocationAtypesou

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。