操作系统实验2

短作业优先调度算法

计算机工程学院实验报告

课程名称: 网络操作系统

指导教师:

实验项目名称: 短作业优先调度算法

实验项目编号: 2

一、目的(本次实验所涉及并要求掌握的知识点)

1实现短作业优先算法。 班级: 姓名: 学号2009811004 组号: 实验成绩: 上机实践日期: 上机实践时间: 学时 2了解作业控制块的作用,以及作业控制块的内容和组织方式。

二、实验内容与设计思想(设计思路、主要数据结构、主要代码结构、主要代码段分析、电路图) 实验内容:

1为每个进入系统的作业建立档案以记录和作业相关的信息,例如作业名(以自己的姓名拼音缩写编号,例如,张三同学编写程序所用的作业名是zs1,zs2…..),作业服务时间,作业进入系统的时间,作业开始执行时间,作业完成时间,作业周转时间,平均周转时间,作业信息在存储器中的位置,指向下一个作业控制块的指针等信息。

2将系统中等待作业调度的JCB组织成一个队列(后备队列)。当进行作业调度时,从后备队列中查找选择一个执行时间最短的作业将它调入内存运行。

3进行作业调度时,计算出每个作业的开始执行时间,完成时间,周转时间和平均周转时间,利用短作业优先算法进行作业调度,并按照完成时间由小到大的顺序显示出来。

三、实验使用环境(本次实验所使用的平台和相关软件)

Linux虚拟机 VC++

四、实验步骤和调试过程(实验步骤、测试数据设计、测试结果分析)

实验代码:

#include<stdio.h>

#include<string.h>

#include<malloc.h>

struct task{

char name[4];

float servicetime; //作业服务时间

float gosystemtime; //作业进入系统的时间

float starttime; //作业开始执行时间

float finishtime; //作业完成时间

float arounttime; //作业周转时间

struct task* next; //指向下一个作业控制块的指针

};

int r; //作业数

struct task *head,*p1,*p2;

struct task* createtask();

void taskschedule(struct task * s);

Word文档免费下载Word文档免费下载:操作系统实验2 (共6页,当前第1页)

你可能喜欢

  • 作业调度
  • 实验报告
  • 操作系统进程调度算法
  • 数据库表
  • 计算机操作系统
  • linux操作系统
  • 雪豹操作系统
  • 嵌入式操作系统

操作系统实验2相关文档

最新文档

返回顶部