操作系统课程设计.rar
操作系统课程设计,1.97万字30页题目一:实现生产者消费者问题题目二:实现银行家算法目录第一部分:实现生产者与消费者问题一、题目21、课程设计目的22、课程设计要求2二、设计内容2三、开发环境3四、分析设计31、设计原理32、涉及的数据结构53、流程图6五、运行示例及结果分析81、运行示例82、运行结果分析:9六、个人...
该文档为压缩文件,包含的文件列表如下:
![](http://img.queshao.com/images/pcgzh.gif)
![](http://preview.queshao.com/tobuy/18837.gif)
内容介绍
原文档由会员 王芸 发布
操作系统课程设计
1.97万字 30页
题目一:实现生产者消费者问题
题目二:实现银行家算法
目 录
第一部分:实现生产者与消费者问题
一、题目……………………………………………………………………………………………2
1、课程设计目的…………………………………………………………………………………2
2、课程设计要求…………………………………………………………………………………2
二、设计内容………………………………………………………………………………………2
三、开发环境………………………………………………………………………………………3
四、分析设计………………………………………………………………………………………3
1、设计原理………………………………………………………………………………………3
2、涉及的数据结构………………………………………………………………………………5
3、流程图…………………………………………………………………………………………6
五、运行示例及结果分析…………………………………………………………………………8
1、运行示例………………………………………………………………………………………8
2、运行结果分析:………………………………………………………………………………9
六、个人体会………………………………………………………………………………………9
七、附录(源程序)………………………………………………………………………………10
第二部分:实现银行家算法
一、题目……………………………………………………………………………………………14
课程设计目的…………………………………………………………………………………14
二、设计内容………………………………………………………………………………………14
三、开发环境………………………………………………………………………………………14
四、分析设计………………………………………………………………………………………14
1、预备知识……………………………………………………………………………………14
2、设计原理……………………………………………………………………………………17
3、涉及的数据结构……………………………………………………………………………18
4、安全检测……………………………………………………………………………………18
5、流程图………………………………………………………………………………………19
五、运行示例及结果分析…………………………………………………………………………19
1、运行示例……………………………………………………………………………………19
2、运行结果分析:……………………………………………………………………………20
六、个人体会………………………………………………………………………………………21
七、附录(源程序)………………………………………………………………………………21
参考文献………………………………………………………………………………………29
第一部分:实现生产者与消费者问题
一、题目:实现生产者与消费者问题
此问题是经典的进程同步互斥问题,问题描述参见教材第36页和第46页,要求编程实现,生产者放入产品的和消费者取走产品的速度可以调节。
1、课程设计目的:
在我们所学的《操作系统》这门课程中,关于经典进程的同步问题进行了一定的描述和探讨,介绍了几个经典的算法,需要我们在实践中学会熟练运用。在生产者与消费者问题中,需要我们了解进程同步的概念,理解信号量机制的原理,掌握运用信号量解决进程同步问题的方法,进而学会运用进程的同步与互斥解决生产者与消费者的冲突问题。
2、课程设计要求:
生产者与消费者问题可以算作是经典进程同步问题的典型代表。该课程设计要求运用基于单缓冲区和多缓冲区的生产者与消费者问题的多种实现机制,其中利用了数据结构中的循环队列和堆栈来模拟实现是一种比较容易实现的方法。这种思想能够帮助我们更好的理解所学内容,并加以锻炼我们的动手实践能力,实现它内在具有的超强的参考价值和实践意义。
该课程设计通过了解进程间的两种制约关系,从而理解信号量机制;通过对实例的分析和讨论,理解信号量机制实现进程的同步及互斥的方法;通过对经典进程同步问题的剖析,初步掌握运用信号量解决进程同步问题的方法。
第二部分:实现银行家算法
一、题目:实现银行家算法
课程设计目的:
了解多道程序系统中,多个进程并发执行的资源分配。
掌握死锁的产生的原因、产生死锁的必要条件和处理死锁的基本方法。
掌握预防死锁的方法,系统安全状态的基本概念。
掌握银行家算法,了解资源在进程并发执行中的资源分配策略。
理解死锁避免在当前计算机系统不常使用的原因
二:设计内容
管理员可以把一定数量的作业供多个用户周转使用,为保证作业的安全管理员规定:
1)、当一个用户对作业的最大需求量不超过管理员现有的资金就要接纳该用户;
2)、用户可以分期贷款,但垡的总数不能超过最大需求量;
3)、当管理员现有的作业不能满足用户的沿需数时,对用户的请求可推迟支付,但总能使用户在有限的时间里得到请求;
4)、当用户得到所需的全部作业后,一定能在有限的时间里归还所有的作业。
假设共有3类资源A B C,分别为10,5,7个
参考文献:
[1]《计算机操作系统》 汤子瀛 哲凤屏 汤小丹主编 西安电子科技大学出版社
[2]《计算机操作系统概论》 陈宏 杨忠耀 主编 重庆邮电大学出版社
[3]《计算机操作系统基本知识》 廖成 崔阳 主编 电子工业出版社
1.97万字 30页
题目一:实现生产者消费者问题
题目二:实现银行家算法
目 录
第一部分:实现生产者与消费者问题
一、题目……………………………………………………………………………………………2
1、课程设计目的…………………………………………………………………………………2
2、课程设计要求…………………………………………………………………………………2
二、设计内容………………………………………………………………………………………2
三、开发环境………………………………………………………………………………………3
四、分析设计………………………………………………………………………………………3
1、设计原理………………………………………………………………………………………3
2、涉及的数据结构………………………………………………………………………………5
3、流程图…………………………………………………………………………………………6
五、运行示例及结果分析…………………………………………………………………………8
1、运行示例………………………………………………………………………………………8
2、运行结果分析:………………………………………………………………………………9
六、个人体会………………………………………………………………………………………9
七、附录(源程序)………………………………………………………………………………10
第二部分:实现银行家算法
一、题目……………………………………………………………………………………………14
课程设计目的…………………………………………………………………………………14
二、设计内容………………………………………………………………………………………14
三、开发环境………………………………………………………………………………………14
四、分析设计………………………………………………………………………………………14
1、预备知识……………………………………………………………………………………14
2、设计原理……………………………………………………………………………………17
3、涉及的数据结构……………………………………………………………………………18
4、安全检测……………………………………………………………………………………18
5、流程图………………………………………………………………………………………19
五、运行示例及结果分析…………………………………………………………………………19
1、运行示例……………………………………………………………………………………19
2、运行结果分析:……………………………………………………………………………20
六、个人体会………………………………………………………………………………………21
七、附录(源程序)………………………………………………………………………………21
参考文献………………………………………………………………………………………29
第一部分:实现生产者与消费者问题
一、题目:实现生产者与消费者问题
此问题是经典的进程同步互斥问题,问题描述参见教材第36页和第46页,要求编程实现,生产者放入产品的和消费者取走产品的速度可以调节。
1、课程设计目的:
在我们所学的《操作系统》这门课程中,关于经典进程的同步问题进行了一定的描述和探讨,介绍了几个经典的算法,需要我们在实践中学会熟练运用。在生产者与消费者问题中,需要我们了解进程同步的概念,理解信号量机制的原理,掌握运用信号量解决进程同步问题的方法,进而学会运用进程的同步与互斥解决生产者与消费者的冲突问题。
2、课程设计要求:
生产者与消费者问题可以算作是经典进程同步问题的典型代表。该课程设计要求运用基于单缓冲区和多缓冲区的生产者与消费者问题的多种实现机制,其中利用了数据结构中的循环队列和堆栈来模拟实现是一种比较容易实现的方法。这种思想能够帮助我们更好的理解所学内容,并加以锻炼我们的动手实践能力,实现它内在具有的超强的参考价值和实践意义。
该课程设计通过了解进程间的两种制约关系,从而理解信号量机制;通过对实例的分析和讨论,理解信号量机制实现进程的同步及互斥的方法;通过对经典进程同步问题的剖析,初步掌握运用信号量解决进程同步问题的方法。
第二部分:实现银行家算法
一、题目:实现银行家算法
课程设计目的:
了解多道程序系统中,多个进程并发执行的资源分配。
掌握死锁的产生的原因、产生死锁的必要条件和处理死锁的基本方法。
掌握预防死锁的方法,系统安全状态的基本概念。
掌握银行家算法,了解资源在进程并发执行中的资源分配策略。
理解死锁避免在当前计算机系统不常使用的原因
二:设计内容
管理员可以把一定数量的作业供多个用户周转使用,为保证作业的安全管理员规定:
1)、当一个用户对作业的最大需求量不超过管理员现有的资金就要接纳该用户;
2)、用户可以分期贷款,但垡的总数不能超过最大需求量;
3)、当管理员现有的作业不能满足用户的沿需数时,对用户的请求可推迟支付,但总能使用户在有限的时间里得到请求;
4)、当用户得到所需的全部作业后,一定能在有限的时间里归还所有的作业。
假设共有3类资源A B C,分别为10,5,7个
参考文献:
[1]《计算机操作系统》 汤子瀛 哲凤屏 汤小丹主编 西安电子科技大学出版社
[2]《计算机操作系统概论》 陈宏 杨忠耀 主编 重庆邮电大学出版社
[3]《计算机操作系统基本知识》 廖成 崔阳 主编 电子工业出版社