操作系统实验报告
- 格式:doc
- 大小:986.00 KB
- 文档页数:30
实验报告
实验课程名称:操作系统
实验地点:南主楼七楼机房
2018—2019学年(一)学期
2018年 9月至 2019 年 1 月
专业:
班级:
学号:
姓名:
指导老师:刘一男
实验一
实验项目:分时系统模拟
实验学时:2实验日期: 2018-10-25 成绩:
实验目的利用程序设计语言模拟分时系统中多个进程按时间片轮转调度算法进行进程调度的过程;
假设有五个进程A,B,C,D,E,它们的到达时间及要求服务的时间分别为:进程名 A B C D E
到达时间0 1 2 3 4
服务时间 4 3 4 2 4
时间片大小为1,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。
执行过程并计算各进程的周转时间及带权周转时间。
轮转调度:BDACE
(1)修改时间片大小为2,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。
轮转调度:ADBCE
(2)修改时间片大小为4,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间.
顺序:ABCDE
1、思考
时间片的大小对调度算法产生什么影响?对计算机的性能产生什么影响?答:通过对时间片轮转调度算法中进程最后一次执行时间片分配的优化,提出了一种改进的时间片轮转调度算法,该算法具有更好的实时性,同时减少了任务调度次数和进程切换次数,降低了系统开销,提升了CPU的运行效率,使操作系统的性能得到了一定的提高。
A B C D E
时间片为1 周转时间12 9 14 8 13
3 3 3.5
4 3.25
带权周转
时间
时间片为2 周转时间8 12 13 7 13
2 4 3.25 3.5 3.25
带权周转
时间
时间片为4 周转时间 4 6 9 10 13
1 2 2.25 5 3.25
带权周转
时间
实验二
实验项目:多道作业调度
实验学时:2实验日期:2018-11-1成绩:
实验目的本实验要求学生模拟作业调度的实现,用高级语言编写和调试一个或多个作业调度的模拟程序,了解作业调度在操作系统中
的作用,以加深对作业调度算法的理解。
要求:
编写并调度一个多道程序系统的作业调度模拟程序。
作业调度算法:采用基于先来先服务的调度算法。可以参考课
本中的方法进行设计。
对于多道程序系统,要假定系统中具有的各种资源及数量、调
度作业时必须考虑到每个作业的资源要求。
系统初始状态100K内存,5台磁带机,作业初始状态为资源
要求
用户名作业名状态到达时间运行时间(小时) 主存(K) 磁带机
A JOBA W 9:00 0.25 20 2
B JOBB N 9:20 0.35 60 1
C JOBC N 9:30 0.15 45 3
D JOBD N 9:35 0.2 10 2
E JOBE N 9:45 0.1 25 3
截图记录程序运行每5分钟的系统资源的状态及各个作业的
状态,简要文字说明各个作业所处状态的原因,分析作业调度
采用何种调度算法
每张截图均需附文字说明,整理成word文档,以“班级_学号
_姓名”命名,打成压缩包上传至FTP服务器
9:00作业JOBA被调入内存运行,需要主存资源20K,2个磁带机,系统剩余资源80K,2个磁带机
作业JOBA需要运行15分钟,到9:15运行结束,释放主存和磁带机资源,系统主存变为100K,磁带机变成5个
9:20作业JOBB到达被调入内存运行,需要主存资源60K,1个磁带机,此时系统资源剩余40K,4个磁带机
作业JOBB需运行21分钟,此时继续运行
9:30作业JOBC到达,但此时系统主存资源只剩40K,不满足JOBC运行所需的45K 主存资源,所以JOBC处于等待状态,作业JOBB继续运行
9:35作业JOBD到达,需主存资源10K,2个磁带机,符合条件,被调入内存运行,此时系统主存资源剩余30K,2个磁带机。此时作业JOBB仍在运行
作业JOBB和作业JOBD在同时运行
作业JOBD继续运行,作业JOBB在9:41结束运行,释放内存和磁带机资源,作业JOBD仍在运行,此时系统主存资源剩余90K,3个磁带机,符合作业JOBC符合运行条件,被调入内存运行:,此时系统主存资源剩余45K,0个磁带机
9:45作业JOBE到达,需要主存25K,3个磁带机,系统资源不足,所以作业JOBC 进入等待状态。
作业JOBC在9:41被调入内存运行,在9:50运行结束,释放内存和磁带机资源,此时系统主存资源还剩90K,3个磁带机,符合作业JOBE运行条件,作业JOBE被调入内存运行。
作业运行结束,释放资源,作业JOBE仍在运行。
作业JOBE运行结束,释放资源,所有作业全部完成运行,系统资源恢复初始状态。作业调度采用多道并串行和先来先服务调度算法,运行序列为A-B-D-C-E
实验三
实验项目:PV操作-生产者和消费者
实验学时: 2 实验日期:2018.11.8成绩:
实验目的 1. 由用户指定要产生的进程及其类别,存入就绪队列。
2. 调度程序从就绪队列中提取一个就绪进程运行。如果申请的资源被
阻塞则进入相应的等待队列,调度程序调度就绪队列中的下一个进程。
进程运行结束时,会检查对应的等待队列,激活队列中的进程进入就绪
队列。运行结束的进程进入over链表。重复这一过程直至就绪队列为
空。
3. 输入两个进程,分别为生产者和消费者,按照先生产后消费顺序输
入,观察并记录运行结果;调整输入进程的顺序,观察并记录运行结果
4. 输入多个进程,随机分配为生产者和消费者,按
(1)两种进程数量相同、
(2)生产者多于消费者、
(3)生产者少于消费者三种情况,观察并记录运行结果
5. 多次输入多个进程,随机分配为生产者和消费者,使缓冲区中产品
最后都被消费完,观察并记录运行结果
运行结果:
输入两个进程,分别为生产者和消费者,按照先生产后消费顺序输入,
观察并记录运行结果
调整输入进程的顺序,先消费后生产,观察并记录运行结果