- 73
- 0
- 约5.11千字
- 约 8页
- 2017-11-14 发布于江苏
- 举报
实 验 报 告
课程名称
实验项目
实验仪器
院 系 计算机学院
专 业 计算机科学与技术
班级/学号 计0503 / 29
学生姓名 杨天心
实验日期
成 绩
指导老师
实验二 作业/进程调度算法设计与实现
一.实验目的
调度是操作系统的主要功能,本实验通过自行设计实现的调度程序,使同学们加深对作业/进程调度功能的理解,从而掌握操作系统的基本原理。同时还可以提高同学们的编程能力。
二.实验要求
用C语言编制按优先级调度三个进程的调度程序,其中要求进程的优先级随着运行时间的延长而降低,但却随着等待时间的延长而升高。
三.实验方法内容
(一)算法设计的思路
设计进程控制块为以下结构:
struct PRO
﹛
char id; /*进程的id号,可以表示为a, b, c */
int pri; /*进程的初始优先级*/
int p; /*等待进程可以动态增加的优先级量*/
int s; /*运行进程应该动态减少的优先级量*/
int status; /*表示进程的状态,0为等待,1为运行*/
﹜A={‘a’,2,1,1,0},B={‘b’,1,1,1,0}, C={‘c’,0,1,1,0};
要求接管时钟中断:INT 1Ch
使用到的C语言函数为:
getvect(intno) /*获得intno的中断向量*/(要求保存在一个全局变量中)
setvect(intno,time) /*设置intno的中断向量为函数time的入口地址*/
在自己编制的新的时钟中断处理程序中,完成进程优先级的修改;并记录被中断的次数。
Void interrupt time( )
{
if(A.status==1) A.pri=A.pri-A.s;
else A.pri=A.pri+A.p;
……..
…….
xx++;
}
编制函数select( ),其功能是从三个进程中选择优先级最高的进程,并将其状态设置为运行,其余设置为等待。并返回运行进程的序号供主程序选择运行。
编制函数int prime (int n),功能是判断n是否为素数,如果是素数,返回n;否则返回0。该函数是三个进程的执行过程。
主程序框架如下:
main ( )
{ int a[3]={100,100,100};
int I, j, k, u, v, w=0, x=0, y=0;
char c;
/*获得时钟中断向量*/
/*设置新的中断向量*/
………..
while(xx300) /*xx是全局变量,用于记录时钟中断的次数;用循环来模拟三个进程的运行过程*/
{u=select ( ); /*调度一次*/
switch (u)
{case0: a[0]++; if(a[0]10000) a[0]=100; v=prime(a[0]);
if(v) {gotoxy(2,4); printf(“a %6d %6d”, v, w++);} break;
case1:…………………..
case2:…………………..
}
}
/*恢复时钟中断*/
}
(二)题目理解说明:
从实验的题目可以看出本次实验的内容是在已经给定的结构上对程序进行补充完善。
通过对已给程序的分析,只需要完成时钟中断处理函数time(),进程选择程序select(),求素数函数prime()以及主函数中switch语句部分的程序编制即可。
(三)算法的功能框架流程图
(四)此算法中用到的数据结构:
进程实体结构,模拟PCB:
struct PRO
{
char id; /*进程id号 */
int pri; //进程优先级
int p; /*优先级递增量*/
int s; /*优先级递减量*/
int status; //进程状态
}
(五)主要常量变量:
INTR:存放中断号1ch的常量
Xx:存放中断次数的全局变量
Oldhandler:指向原中断处理程序的向量
a[3]:对素数进行操作的数组空间
(六)主要模块:
1.中断处理函数
void interrupt time(...
您可能关注的文档
- 产万吨合成氨合成工艺设计方案(论文)word格式.doc
- 产万吨热轧带钢车间设计方案大摘要终稿.doc
- 产万吨苯酚丙酮车间精馏工段工艺设计方案缩写稿.doc
- 产万套ABS小型风扇后壳网罩注塑工艺设计方案说明书.doc
- 产万套无绳电话机注塑车间设计方案说明书.doc
- 产业组织学研究报告理论前沿与现实关切.doc
- 产业集群竞争力影响因素及提升路径研究报告.doc
- 产吨扑热息痛车间工艺设计方案.doc
- 产吨酸奶发酵罐设计方案.doc
- 产品生命周期管理(PLM)在制造业应用集成研究报告.doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
原创力文档

文档评论(0)