- 50
- 0
- 约8.53千字
- 约 34页
- 2020-04-07 发布于江西
- 举报
盐城工学院
计算机操作系统程序设计 课程考核报告
银行家算法模拟实现
班
学
姓
级: 09 软件(1) 号:
名:
指导老师:
2011 年 12 月 19 日
1.
目录
课程设计简介------------------------------------------------3
1.1 课程设计题目------------------------------------------------------------- 3 1.2 课程设计目的-----------------------------------------3 1.3 课程设计要求----------------------------------------3
实验原理分析-------------------------------------------4
2.1 算法的来源及基本思想---------------------------------4 2.2 死锁产生的条件---------------------------------------4 2.3 模拟进程申请资源-------------------------------------5
概要设计------------------------------------------------5
详细设计------------------------------------------------7
代码设计------------------------------------------------8
调试分析----------------------------------------------- 14
心得体会------------------------------------------------21
参考文献------------------------------------------------21
1
课程设计简介:
1.1
课程设计题目
银行家算法的模拟实现。应用银行家算法验证进程安全性检查及分配 资源。
1.2
课程设计目的
本设计的目的是通过编写和调试一个系统动态分配资源的简单模拟程 序,观察死锁产生的条件,并采用适当的算法,有效地防止和避免死锁地 发生。
了解进程产生死锁的原因,了解为什么要进行死锁的避免。
掌握银行家算法的数据结构,了解算法的执行过程,加深对银行家 算法的理解。
1.3
课程设计要求
设计一个 n 个并发进程共享 m 个系统资源的系统。进程可动态申请资源和 释放资源,系统按各进程的申请动态的分配资源。要求采用银行家算法实 现。
(1)初始化这组进程的最大资源请求和依次申请的资源序列。把各进程已占 用和需求资源情况记录在进程控制块中。假定进程控制块的内容包括: 进程名,状态,当前申请量,资源需求总量,已占资源量,能执行完标 志。其中,进程的状态有:就绪、等待和完成。当系统不能满足进程的 资源请求时,进程处于等待态。资源需求总量表示进程运行过程中对资 源的总的需求量。
已占资源量表示进程目前已经得到但还未归还的资源量。因此,进程在 以后还需要的剩余资源量等于资源需要总量减去已占资源量。显然每 个进程的资源需求总量不应超过系统拥有的资源总量。
(2)银行家算法分配资源的原则是:当某个进程提出资源请求时,假定先分 配资源给它,然后查找各进程的剩余请求,检查系统的剩余资源量是否 由于进程的分配而导致系统死锁。若能,则让进程等待,否则,让进程
的假分配变为真分配。
查找各进程的剩余请求,检查系统的剩余资源量是否能满足其中 一进程。如果能,则转 b)。
将资源分配给所需的进程,这样,该进程已获得资源最大请求, 最终能运行完成。标记这个进程为终止进程,并将其占有的全部 资源归还给系统。
重复第 a)步和第 b )步,直到所有进程都标记为终止进程,或直到一个死 锁发生。若所有进程都标记为终止进程,则系统的初始状态是安全的,否 则为不安全的。若安全,则正式将资源分配给它,否则假定的分配作废, 让其等待。
2
实验原理分析:
2.1 算法的来源及基本思想
银行家算法,顾名思义是来源于银行的借贷业务,通过这个算法可以
用来解决生活中的实际问题,如银行贷款等。一定数量的本金要应多个客 户的借贷周转,为了防止银行加资金无法周转而倒闭,对每一笔贷款,必 须考察其是否能限期归还。在操作系统中研究资源分配策略时也有类似问 题,系统中有限的资源要供多个进程使用,必须保证得到的资源的进程能 在有限的时间内归还资源,以供其他进程使用资源。如果资源分配不得到 就会发生进程循环等待资源,则进程都无法继续执行下去的死锁现象。
2.2 死锁产生的
您可能关注的文档
- 银行个人贷款管理系统.docx
- 银行中间业务收费管理办法.docx
- 银行保洁员的工作职责与管理制度.docx
- 银行储蓄系统完整.docx
- 银行储蓄系统测试分析报告.docx
- 银行储蓄系统详细设计.docx
- 银行储蓄系统需求分析说明书.docx
- 银行储蓄系统面向对象分析.docx
- 银行员工个人先进工作者事迹材料.docx
- 银行员工行为规范管理手册.docx
- 科创企业合作创新网络的合作模式、演化特征及行业异质性分析.pdf
- 沿海海事安全执法规范标准.ppt
- 沿海水上安全执法监管要点.ppt
- 3个蜈蚣科物种线粒体基因组测序及唇足纲的系统发育分析.pdf
- 英文版论文资料:The full lifecycle management of scientific data at Hefei Light Source soft X-ray microscopy station.pdf
- 某机械厂维修保养细则.docx
- 集装箱厂焊接质量监控准则.docx
- 《作物学报》2013—2022年高被引论文特征分析.pdf
- 麻纺生产技术改进细则.docx
- 麻纺厂产品生产进度控制办法.docx
最近下载
- 人美版美术一年级下册《第一单元 春天的故事》大单元教学设计2026.docx VIP
- 公转私借款合同范本.docx VIP
- IATF16949:2016中文版本含ISO9001全文依据2025年11月SI更新(包括SI1-30).pdf
- 4.成人斯蒂尔病诊疗指南2025版.pptx
- 第一单元《春天的故事》大单元(教学设计)人美版2025美术一年级下册.docx VIP
- ISO42001-2023人工智能管理体系程序文件.docx VIP
- 一种火炬排放系统密封器.pdf VIP
- 提高住院患者大小便标本送检率PDCA.pptx VIP
- DB61_T 2093.5-2025 猕猴桃生产第5部分:花粉生产.docx VIP
- 无锡市轨道交通工程临时用电监理实施细则.doc VIP
原创力文档

文档评论(0)