操作系统实验报告

  • 格式:doc
  • 大小:3.94 MB
  • 文档页数:69

下载文档原格式

  / 69
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

工程学院

管理学院实验报告

实验课程名称:操作系统

实验地点:南主楼七楼机房

2014 年 2 月至2014 年 4 月

专业信息管理与信息系统

班级11信管2班

学生

学号

指导老师一男

实验报告

实验项目:分时系统模拟

实验学时:2

实验日期:

实验要求:

实验容:

时间片大小为1,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。

B 9 3

C 14 3.5

D 8 4

E 13 3.25

完成顺序:BDACE

修改时间片大小为2,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。

B 12 4

C 13 3.25

D 7 3.5

E 13 3.25

完成顺序:ADBCE

修改时间片大小为4,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。

实验项目:多道作业调度

实验学时:2

实验日期:

实验要求:系统初始状态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分钟的系统资源的状态及各个作业的状态,简要文字说明各个作业所处状态的原因,分析作业调度采用何种调度算法

实验容:

初始时间是9:00

程序运行5分钟,时间到达9:05。系统资源数量为80,A、B、C、D、E作业状态为R、N、N、N、N。

N、N。

程序运行5分钟,时间到达9:15。系统资源数量为100,A、B、C、D、E作业状态为F、N、N、N、N。

程序运行5分钟,时间到达9:20。系统资源数量为40,A、B、C、D、E作业状态为F、R、N、N、N。A已经完成

N、N。

程序运行5分钟,时间到达9:30。系统资源数量为80,A、B、C、D、E作业状态为F、R、W、N、N。

程序运行5分钟,时间到达9:35。系统资源数量为30,A、B、C、D、E作业状态为F、R、W、R、N。

R、N。

程序运行5分钟,时间到达9:45。系统资源数量为45,A、B、C、D、E作业状态为F、F、R、R、W。

程序运行5分钟,时间到达9:50。系统资源数量为65,A、B、C、D、E作业状态为F、F、F、R、R。

F、R。

程序运行5分钟,作业已完成。

程序运行最后结果

实验代码:

#include

#include

#include

#include

#include

#define getjcb() (JCB*)malloc(sizeof(JCB)) typedef struct {//资源的总量

int memory;

int tape;

}RESOURCE;

实验项目:PV操作-生产者与消费者

实验学时: 2

实验日期:

实验要求:1. 由用户指定要产生的进程及其类别,存入就绪队列。

2. 调度程序从就绪队列中提取一个就绪进程运行。如果申请的资源被阻塞则进入相应的等待队列,调度程序调度就绪队列中的下一个进程。进程运行结束时,会检查对应的等待队列,激活队列中的进程进入就绪队列。运行结束的进程进入over链表。重复这一过程直至就绪队列为空。

3. 输入两个进程,分别为生产者和消费者,按照先生产后消费顺序输入,观察并记录运行结果;调整输入进程的顺序,观察并记录运行结果

4. 输入多个进程,随机分配为生产者和消费者,按(1)两种进程数量相同、(2)生产者多于消费者、(3)生产者少于消费者三种情况,观察并记录运行结果

5. 多次输入多个进程,随机分配为生产者和消费者,使缓冲区中产品最后都被消费完,观察并记录运行结果

实验容:

输入两个进程,分别为生产者和消费者,按照先生产后消费顺序输入,观察并记录运行结果

输入两个进程,分别为生产者和消费者,按照先生产后消费顺序输入,观察并记录运行结果

输入多个进程,随机分配为生产者和消费者(1)两种进程数量相同、观察并记录运行结果

多次输入多个进程,随机分配为生产者和消费者,使缓冲区中产品最后都被消费完,观察并记录运行结果

实验代码:

#include "stdio.h"

#include

#include

#include "iostream.h"

#define NULL 0

#define OK 1

#define ERROR 0

#define buffersize 3

#define getpch(type) (type*)malloc(sizeof(type))