




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 实 验 报 告 课程名称 操作系统实验 学生学院 计算机学院 专业班级计算机科学与技术学 号 学生姓名 指导教师 孙为军 2015 年 12 月30日实验一 进程调度一、实验目的 编写并调试一个模拟的进程调度程序,以加深对进程的概念及进程调度算法的理解二、实验内容1. 采用“短进程优先”调度算法对五个进程进行调度。每个进程有一个进程控制块( PCB)表示。进程控制块可以包含如下信息:进程名、到达时间、需要运行时间、已用CPU时间、进程状态等等。 2. 每个进程的状态可以是就绪 W(Wait)、运行R(Run)、或完成F(Finish)三种状态之一。 每进行一次调度程序都打印一次运行进程、就绪
2、队列、以及各个进程的 PCB,以便进行检查。重复以上过程,直到所要进程都完成为止。3、 实现思路先考虑实现进程调度所需要的数据结构,然后根据所需要的算法进行设计。四、主要的数据结构进程控制块PCB:struct pcb char name10; char state; int ntime; int rtime; struct pcb* link; *ready=NULL,*p; 5、 算法流程图6、 运行与测试输入进程信息:输入完毕,显示当前运行以及就绪的进程:优先运行短进程七、改进的方向界面比较难看,可以中文化信息。实验二 作业调度一、 实验目的 用高级语言编写和调试一个或多个作业调度的模拟
3、程序,以加深对作业调度算法的理解。二、 实验内容1 写并调试一个单道处理系统的作业等待模拟程序。2 作业等待算法:分别采用先来先服务(FCFS)、响应比高者优先(HRN)的调度算法。 3 由于在单道批处理系统中,作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所占用的 CPU时限等因素。4 每个作业由一个作业控制块JCB表示,JCB可以包含如下信息:作业名、提交时间、所需的运行时间、所需的资源、作业状态、链指针等等。作业的状态可以是等待W(Wait)、运行R(Run)和完成F(Finish)三种状态之一。每个作业的最初状态总是等待W
4、。5 对每种调度算法都要求打印每个作业开始运行时刻、完成时刻、周转时间、带权周转时间,以及这组作业的平均周转时间及带权平均周转时间。3、 实现思路首先根据题目的要求,先设想出作业调度所需的数据结构,包括题目中的作业名、提交时间、所需的运行时间、所需的资源、作业状态、链指针以及在作业运行完成后需要现实的信息包括开始运行时刻、完成时刻、周转时间、带权周转时间。在完成数据结构的构造后,在对每一个模块进行编写。在作业调度中,与实验一的进程调度有所不同的是需要增加一个总体的变量,运行的时间。在本实验中需要实现两种不同的算法,所以这也需要特别去考虑。4、 主要的数据结构作业控制块jcbstruct jcb
5、 char name10; int tjtime; int kstime; int ntime; int nresource; float super; int ftime; float zztime; float dqtime; char state; struct jcb *link;*ready=NULL,*p,*q;五、算法流程图6、 运行与测试运行程序后首先选择一个算法:首先先选择先来先服务算法,输入作业数据后,显示各个作业,并显示开始运行时刻、完成时刻、周转时间、带权周转时间:运行了三次后,可以看出目前的算法是先来先服务算法:所有作业运行结束后,显示平均周转时间以及平均带权周转时间
6、:现在选择响应比高者优先算法,并输入一组新数据后显示:运行一次后,由于C的相应比高于B,所以先运行:完成运行后显示相应的数据:七、改进的方向界面可以改进成图形界面,可以实现将运行完的作业保留下来并且在其运行状态改为F的功能,还可以实现在所有作业运行完毕后将所有作业的相关数据集合成一张简单的表的功能。实验三 动态分区分配方式的模拟1、实验目的 了解动态分区分配方式中的数据结构和分配算法,并进一步加深对动态分区存储管理方式及其实现过程的理解2、实验内容1. 用C语言分别实现采用首次适应算法和最佳适应算法的动态分区分配过程和回收过程。其中,空闲分区通过空闲分区链(表)来管理;在进行内存分配时,系统优
7、先使用空闲区低端的空间。2. 假设初始状态下,可用的内存空间为640KB,并有下列的请求序列:作业1申请130KB作业2申请60KB作业3申请100KB作业2释放60KB作业4申请200KB作业3释放100KB作业1释放130KB作业5申请140KB作业6申请60KB作业7申请50KB作业8申请60KB 请分别采用首次适应算法和最佳适应算法进行内存的分配和回收,要求每次分配和回收后显示出空闲内存分区链的情况。三、实现思路使用双向链表来表示存储空间,整题的总体思路在于操作该链表,只是在分配空间需要考虑不同的算法实现。4、 主要的数据结构空闲区说明表结构typedef struct FreeAin
8、t NUM;long size;long address;int state;ElemType;双向链表存储结构typedef struct NLNodeElemType data;struct NLNode *prior;struct NLNode *next;NLNode,*NLinkList;五、算法流程图6、 运行与测试运行程序,显示选择两种不同算法的界面:选择首次适应算法,直接显示当前的分配情况以及有两个分配回收内存的功能:根据题目要求输入相应的请求序列:选择最佳适应算法,再次输入题目要求的作业请求序列:七、改进的方向界面可以改进成图形界面,增加对主存剩余地址的输出,增加更多种的内存动态分配的算法以及对内存操作的功能。实验四 多级反馈调度队列调度算法一、实验内容用高级语言实现多级调度,调度算法自由选择。本实验选择两道处理系统,相对应的算法包括:作业调度使用先来先服务算法,进程调度使用短进程优先算法。二、实现思路根据前面的实验一以及实验二,结合经验设计。3、 主要的数据结构进程控制块pcbstruct pcb char state;作业控制块jcbstruct jcb char name10; int tjtime; int ntime; char state; struct pcb *l; struct jcb *link;*ready=NULL,*p,*
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广东江门市妇幼保健院招聘高层次人才2人(第二批)备考试题及答案解析
- 2025广西桂林市东江小学招聘3人笔试备考试题及答案解析
- 2025广东珠海市金湾区集中招聘合同制职员31人考试备考题库及答案解析
- 2025河南许昌禹州市禹泰资本运营有限公司招聘法务人员3人备考试题及答案解析
- 2025贵州贵阳金成锐工程咨询有限公司第一批招聘1人笔试备考试题及答案解析
- 2025广西桂林市旅发桂林投资有限公司招聘9人笔试备考试题及答案解析
- 2025-2030中国农业机械行业客户服务体系建设报告
- 2025-2030中国人工智能技术应用市场发展分析及前景趋势与投融资研究报告
- 基因家族重复序列演化-洞察及研究
- 高并发存储引擎设计-洞察及研究
- (2025秋新版)苏教版三年级数学上册全册教案
- 人教PEP版(2024)新四年级上册 教材解读
- 纪念中国人民抗日战争暨世界反法西斯战争胜利80周年
- 2025四川省高级人民法院招聘聘用制审判辅助人员30人考试备考题库及答案解析
- 南京大学课程《普通地质学》教学大纲及教案
- 加气块砌筑知识培训课件
- 智慧养老服务与管理课件
- 2025年湖南安全技术职业学院招聘考试笔试试题(含答案)
- 配电带电作业工考试试卷与答案
- 2025年河南省机关事业单位工勤技能岗位等级考试(兽医防治员·高级技师/一级)(综合评审技能)历年参考题库含答案详解(5卷)
- 2025年职业技能鉴定考试(地勘钻探工)历年参考题库含答案详解(5套)
评论
0/150
提交评论