- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
小型仿真操作系统实验报告
综合实验报告
( 2009-- 2010年度第六学期)
名 称:操作系统原理综合实验B
题 目:小型仿真操作系统的设计
院 系:
班 级:
学 号:
学生姓名:
指导教师:
设计周数: 一周
成 绩:
日期:
实验一:单处理器系统的进程调度
1.实验目的#include iostream.h
#include stdio.h
#define NULL 0
int Name[5]={1,2,3,4,5};
struct PCB
{
char name;//PCB名字
int RunTime;//PCB已运行时间
int RequestTime;//PCB要求运行时间
char status;//PCB状态
struct PCB* head;//指向上一个PCB结构体的指针变量
struct PCB* next;//指向下一个PCB结构体的指针变量
};
struct PCB pcb1,pcb2,pcb3,pcb4,pcb5,*p,*q;
////定义PCB各参数的初值,输入各个进程的运行时间
Value()
{
pcb1.name=Name[0];
pcb2.name=Name[1];
pcb3.name=Name[2];
pcb4.name=Name[3];
pcb5.name=Name[4];
///定义PCB状态,初态为R
pcb1.status=R;
pcb2.status=R;
pcb3.status=R;
pcb4.status=R;
pcb5.status=R;
///定义PCB运行时间,初值为0
pcb1.RunTime=0;
pcb2.RunTime=0;
pcb3.RunTime=0;
pcb4.RunTime=0;
pcb5.RunTime=0;
///给PCB的要求运行时间赋值
coutendl;
cout请给各个PCB的要求运行时间赋值(int):endl;
cout第一个PCB pcb1.name要求运行的时间为:;
cinpcb1.RequestTime;
cout第二个PCB pcb2.name要求运行的时间为:;
cinpcb2.RequestTime;
cout第三个PCB pcb3.name要求运行的时间为:;
cinpcb3.RequestTime;
cout第四个PCB pcb4.name要求运行的时间为:;
cinpcb4.RequestTime;
cout第五个PCB pcb5.name要求运行的时间为:;
cinpcb5.RequestTime;
return 0;
}
///////////使PCB连接成循环队列
Connect()
{
///////PCB的前驱
pcb1.head=pcb5;
pcb2.head=pcb1;
pcb3.head=pcb2;
pcb4.head=pcb3;
pcb5.head=pcb4;
////////PCB的后续
pcb1.next=pcb2;
pcb2.next=pcb3;
pcb3.next=pcb4;
pcb4.next=pcb5;
pcb5.next=pcb1;
return 0;
}
///////显示输入
display()
{
cout----------------------------------------------------------------endl;
cout 进程名称 下一进程名 运行时间;
cout 要求时间 状态endl;
cout----------------------------------------------------------------endl;
return 0;
}
/////PCB执行
Run()
{
Value();
Connect();
// struct PCB pcb1,pcb2,pcb3,pcb4,pcb5,*p,*q;
char a;
int num,n,PcbNum=5,Number=5,flag=1;//PcbNum表示进程执行过程中进程的个数,n表示已执行完毕的进程个数
q=NULL; //flag=1时程序继续
coutendl;
cout请选择你想要运行的进程:;
cinnum;
coutend
您可能关注的文档
- 【步步高 学案导学设计】2014-2015学年高中英语(外研版,必修三)课时作业:Module 1 Period 4.docx
- 英语四级模拟.docx
- 2014-2015高一第二学期英语第一次测试.doc
- 亿唐网的衰败.docx
- 雅虎企业介绍.doc
- 【英语辩论】期末资料收集.docx
- 成人学士学位英语.doc
- 雅虎惨案 16年败掉1000亿美金市值.docx
- 史上最全REACH法规解释.doc
- 出国常用日常英语词汇及对话.docx
- 江苏省苏州市2023-2024学年九年级上学年期末模拟英语试卷(含答案).pdf
- 期末数学测试卷2023-2024二年级下册人教版(含答案) .pdf
- 期中测试卷(1-4单元) 2023-2024人教版数学 二年级下册(含答案).pdf
- 必威体育精装版人教版三年级数学下册单元测试题全套含答案 .pdf
- 江西省建设工程施工合同范本-2024 .pdf
- 2024春节领导致辞讲话稿范文10篇 .pdf
- 2024年卫生招聘考试之卫生招聘(文员)模拟考试试卷A卷含答案 .pdf
- 2024年国有企业关于高质量发展意见的报告 .pdf
- 2024年关于营业员个人工作总结范文六篇 .pdf
- 2024年关于优秀志愿者事迹材料 .pdf
文档评论(0)