- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统模拟实验单处理机系统的进程调度实验报告
数学与计算机学院 单处理机系统的进程调度 实验报告
年级07 学号 2007429023 姓名 王阳 成绩
专业 信计 实验地点 主楼402 指导教师 王硕
实验项目 单处理机系统的进程调度 实验日期
实验报告要求:
一、 实验目的
1、 加深对进程概念的理解,明确进程与程序的区别。
2、 深入了解系统如何组织进程、创建进程。
3、 进一步认识如何实现处理机调度。
二、 实验原理
三、 实验要求
1、 采用时间片轮转调度算法实现进程调度。
2、 确定进程控制块的内容,进程控制块的组织方式。
3、 完成进程创建原语与进程调度原语。
4、 编写主函数对所做工作进行测试。
四、 实验结果(程序)及分析
#inelude vstdio、h
#defi ne N 10 〃系统中所允许的最大进程数量
#defi ne SLOT 5 //时间片大小
//进程状态枚举
typedef enum
{
Running, 〃运行状态
Aready, 〃就绪状态
Block ing //阻塞状态
} ProStatus;
//进程控制块
typedef struct
{
ProStatus status; int ax,bx,cx,dx; int pc; int psw; int next;
} PCB; //就绪队列指针 typedef struct {
int head;
int tail; } Ready; //模拟寄存器 int PSW,AX,BX,CX,DX,PC,TIME; //PCB 的静态链表 PCB pcbArea[N]; int run; Ready ready; int pfree;
操作系统模拟实验单处理机系统的进程调度实验报告
//进程状态
//通用寄存器
//程序计数器寄存器
//程序状态字寄存器//指向下一个进程的指针
//头指针
//尾指针
//模拟 PCB 区域的数组
//运行状态程序的指针//就绪队列指针//空闲队列的指针
//初始化运行状态进程指针 void InitRun()
{ run=-1;
} //初始化就绪状态队列 void InitReady()
{ ready、head=ready、 tail=-1;
} //初始化空闲队列
void InitFree()
{
int temp;
for(temp=0;tempN-1;temp++)
{ pcbArea[temp]、 next=temp+1;
}
pcbArea[temp]、next=-1;
pfree=0;
}
//就绪队列出队
int PopReady() // 返回结点在 PCB 区域数组的编号
{
int temp;
if(ready、head==-1)
{
操作系统模拟实验单处理机系统的进程调度实验报告
printf( 就绪队列为空 ,不能出队。 \n);
return -1;
}
temp=ready、 head;
ready、head=pcbArea[temp]、 next;
if(ready、head==-1)
ready、tail=-1;
pcbArea[temp]、next=-1;
return temp;
}
//空闲队列出队
int PopFree() //返回结点在 PCB 区域数组的编号
{
int temp;
if(pfree==-1)
{
printf( 空闲队列为空 ,不能出队。 \n);
return -1;
}
temp=pfree;
pfree=pcbArea[temp]、 next;
pcbArea[temp]、next=-1;
return temp;
}
//就绪队列入队
void PushReady(int x) //x 为入队结点的编号
{
int temp;
if(ready、head==-1)
{
ready、head=x;
ready、tail=x;
}
else
{
temp=ready、 tail;
ready、tail=x;
}
pcbArea[ready、tail] 、next=-1;
}
//创建 PCB
void CreatePCB(int x,PCB pcb) 〃x为要创建PCB在PCB区域数组的编号
{
pcbArea[x]、ax=pcb、ax;
pcbArea[x]、bx=pcb、bx;
pcbArea[x]、cx=pcb、cx;
操作系统模拟实验单处理机系统的进程调度实验报告
pcbArea[x]、dx=pcb、dx;
pcbArea[x] 、 name=pcb、name;
pcbArea[x] 、 next=-1;
pcbArea[x]、pc=pcb、pc;
pcbArea[x] 、 psw=pcb、psw;
p
您可能关注的文档
- 推进绿色发展建设美丽中国-必威体育精装版年文档.docx
- 掺uea水泥净浆膨胀与强度性能试验研究.docx
- 描写动物写作指导.docx
- 描写学校的好词好句好段及名人名言.docx
- 揉搓式破碎机.docx
- 描写春节场景的精彩语段.docx
- 描写江的词语和句子.docx
- 描写蔬菜的句子和段落资料.docx
- 描写春天的12首宋词.docx
- 提到美食,满是色香味,尽是形意养.docx
- 2024年证券分析与咨询服务项目投资申请报告代可行性研究报告.docx
- 2024年铬酸酐项目资金申请报告代可行性研究报告.docx
- 2024年清洁胶项目资金申请报告代可行性研究报告.docx
- 2024年肉松饼项目投资申请报告代可行性研究报告.docx
- 2024年陆上泵项目资金需求报告代可行性研究报告.docx
- 2024年未硫化复合橡胶及其制品项目资金需求报告代可行性研究报告.docx
- 2024年精密温控节能设备项目资金筹措计划书代可行性研究报告.docx
- 2024年汽车覆盖件模具项目资金筹措计划书代可行性研究报告.docx
- 宋词行书钢笔字帖.pdf
- 我的暑假生活作文三年级300字10篇.pdf
最近下载
- 安永-中信银行业务影响分析报告v0.94_201407(1).docx VIP
- 电流互感器额定二次容量计算.docx
- 出国留学高中成绩单最强模板.doc VIP
- 烟草物流配送中心二维码实施方案.doc VIP
- 不背单词英语照样可以过线.doc
- 优势谈判txt.doc
- 2024贵州茅台酒厂(集团)昌黎葡萄酒业限公司社会招聘8人公开引进高层次人才和急需紧缺人才笔试参考题库(共500题)答案详解版.docx
- GB∕T 15036.1-2018 实木地板 第1部分技术要求-国家标准.pdf
- 2024年外研版七年级上册英语Starter Period 5 语法课时.pptx VIP
- Yokogawa横河电机 Discontinued REM LR4100E, LR4200E Series Recorders使用说明书.pdf
文档评论(0)