计算机操作系统课程设计报告《Linux下C编程实现银行家算法》 下载本文

内容发布更新时间 : 2024/7/3 9:50:00星期一 下面是文章的全部内容请认真阅读。

《计算机操作系统》课程设计

题 目:专 业:年 级:小组成员:指导教师:时 间:地 点:

Linux下C编程实现银行家算法 软件工程

2014年 12 月

1

摘要

Dijkstra(艾兹格·迪科斯彻) 的银行家算法是最有代表性的避免死锁的算

法,该算法由于能用于银行系统现金贷款的发放而得名。银行家算法是在确保当前系统安全的前提下推进的。对进程请求先进行安全性检查,来决定资源分配与否,从而确保系统的安全,有效的避免了死锁的发生。

该论文在理解和分析了银行家算法的核心思想以及状态的本质涵义的前提下,对算法的实现在总体上进行了设计,包括在对算法分模块设计,并对各个模块的算法思想通过流程图表示,分块编写代码,并进行测试,最后进行程序的测试,在设计思路上严格按照软件工程的思想执行,确保了设计和实现的可行,可信。代码实现采用C语言。

2

目录

目录

1.概述 ................................................... 4 2.课程设计任务及要求 ..................................... 4 2.1 设计任务 .......................................... 4 2.2设计要求 .......................................... 5 3.算法及数据结构 ......................................... 5 3.1算法的总体思想 ..................................... 5 3.2 安全算法模块 ...................................... 6 3.2.3 算法(流程图表示,或伪C表示) .................. 7 4. 程序设计与实现 ........................................ 9 4.1程序流程图 ........................................ 9 4.2程序代码(部分代码) ............................... 9 4.3实验结果 ......................................... 11 5 结论 .................................................. 13 6 收获、体会和建议。 .................................... 14 7 参考文献。 ............................................ 14

3