学院:班级:姓名:
指导教师:011年6月24日。
目录。1. 需求分析。
2. 功能设计。
3. 开发平台及源程序主要部分...
4. 程序测试。
5. 自我评价及总结。
1.需求分析。
1.1设计目的。
1.阅读操作系统的处理机管理章节内容,对进程调度的功能以及进程调度算法有深入的理解。
2.掌握一种计算机高级语言的使用。
要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1.2设计要求。
1.能够选择不同的调度算法(要求中给出的调度算法);
2.能够输入进程的基本信息,如进程名、优先级、到达时间和运行时间等;
3.根据选择的调度算法显示进程调度队列;
4.根据选择的调度算法计算平均周转时间和平均带权周转时间。
2. 功能设计。
2.1数据结构。
1.进程的结构定义:
struct process
char name[10进程名。
int no进程序号。
double arrivetime; /进程到达时间。
double needtime进程运行时间。
int state进程状态。
int priority进程优先级。
double starttime; /进程开始执行时间。
double endtime进程执行完毕时间。
process *next;
2.使用链表储存进程并按照到达时间排列顺序。
void insert(process *current)
if(head!=null)
如果至少有两个结点。
elseelse head=current;
2.2先来先服务算法设计。
2.2.1创建进程。
void createfcfs()
process *q1=new process;
cout<<"请输入进程总数目";
cin>>count;
cout< int number=1;
while(number<=count)
2.2.2进程调度及输出结果。
void printfcfs()
process *p=new process;
double systime=0;//记录系统时间。
double turn=0;//平均周转时间。
double turnw=0;//平均带权周转时间。
if(head==null) cout<<"没有进程调度"< 处理第一个。
else if(head!=null)
cout< process *temp=head;
while(temp!=null)
cout<<"平均周转时间"< 清空链表。
while(head->next!=null)
head=null;
2.3优先级算法设计。
2.3.1创建进程。
void createprio()
process *q1=new process;
cout<<"请输入进程总数目";
cin>>count;
cout< int number=1;
while(number<=count)
2.3.2按优先级大小重新排序,把最先到达的进程排在链头。
void changeprio()
把最先到达的放到链头,然后后面的结点按照优先级来排序。
排序的前提是结点数至少是3个。
从第二个开始和后面的比较。
if(count>2)
2.3.3输出调度结果。
void printprio()
process *p=new process;
double systime=0;//记录系统时间。
double turn=0;//平均周转时间。
double turnw=0;//平均带权周转时间。
if(head==null) cout<<"没有进程调度!" 先把最先到达的输出,然后再根据系统时间和优先级判断后续的进程。 head->starttime=head->arrivetime; head->endtime=head->arrivetime+head->needtime; head->state=1; systime=head->endtime; turn=turn+(head->endtime-head->arrivetime); 西安郵電大學。院系名称 计算机学院。专业名称 软件工程。班级 1104 学生姓名 赵大伟。学号 8位 04113124 指导教师 舒新峰。设计起止时间 2013.11.10 2013.11.20 1 通过观察 分析实验现象,深入理解进程及进程在调度执行和内存空间等方面的特点,掌握在posix 规范中... 课程设计。课程名称操作系统。题目名称多级文件系统 2 学生学院计算机学院 专业班级。学号。学生姓名。指导教师。年月日。目录。一 课程设计 6 二 开发工具及环境 6 三 设计内容 6 四 结构图 8 五 部分 9 六 运行截图 11 七 参考文献 15 八 心得体会 15 本课程设计要求设计一个模拟... 实验一进程管理。一 实验目的。1 开发一个函数,建立进程控制块和资源控制块结构,并实现相关数据结构的初始化。2 开发一系列操作,由进程调用这些操作,达到控制进程申请或释放各种资源的目的。通过实验理解进程的概念,进程的组成 pcb结构 进程的并发执行和操作系统进行进程管理的相关原语 主要是进程的创建 ...操作系统课程设计报告
操作系统课程设计报告
操作系统课程设计报告