中南大学操作系统课程设计

中南大学操作系统课程设计

ID:5888620

大小:85.69 KB

页数:10页

时间:2017-12-27

中南大学操作系统课程设计_第1页
中南大学操作系统课程设计_第2页
中南大学操作系统课程设计_第3页
中南大学操作系统课程设计_第4页
中南大学操作系统课程设计_第5页
资源描述:

《中南大学操作系统课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、中南大学本科生课程设计(实践)任务书、设计报告(计算机操作系统课程设计)题目调度算法的模拟学生学号学生姓名指导教师学院信息科学与工程学院专业班级指导老师2013年12月一、实验任务1.进一步理解进程的基本概念。2.加强进程管理中主要数据结构的设计及进程调度算法。3.观察和管理进程——系统在运行过程中可显示或打印各进程的状态及有关参数的变化情况。二、实验设计思想1.实验原理定义PCB的数据结构,用链表的形式管理进程,采用多级反馈队列调度的算法模拟进程的控制,最终完成有创建、撤销、调度、阻塞、唤醒进程等功能。2.数据结构类:classqueuenodec

2、lassqueue函数:voidenqueue(char&item);chardequeue();voiddel(charitem);voiddisplay();intfind(charitem);intisempty()3.算法描述1-1、创建进程,根据进程的顺序依次放入就绪队列。2-1、执行进程——管理系统将就绪队列中的第一个进程调入运行队列;2-2、将阻塞队列中进程调入就绪队列;2-3、封锁进程——管理系统将就绪队列中的第一个进程调入阻塞队列;2-4、结束进程——管理系统撤销所选进程;2-5、结束程序。4.算法流程图输入进程信息执行进程将阻塞队

3、列的进程调入就绪队列封锁进程结束进程退出操作输入要进行操作的功能选项12345进行所选进程操作选1且进程正在执行Y操作不能执行选择#NNN选择5YY开始结束三、实验实现源代码#includeclassqueuenode//定义队列数据结构{friendclassqueue;private:chardata;queuenode*link;queuenode(chard=0,queuenode*l=NULL):data(d),link(l){}};classqueue{public:queue():rear(NULL),front

4、(NULL){};~queue();voidenqueue(char&item);chardequeue();voiddel(charitem);voiddisplay();intfind(charitem);intisempty(){returnfront==NULL;}private:queuenode*front,*rear;};queue::~queue(){queuenode*p;while(front!=NULL){p=front;front=front->link;deletep;}}voidqueue::enqueue(char&it

5、em){if(front==NULL)front=rear=newqueuenode(item,NULL);elserear=rear->link=newqueuenode(item,NULL);}charqueue::dequeue(){queuenode*p=front;charf=p->data;front=front->link;deletep;returnf;}voidqueue::display()//队列输出{queuenode*p;p=front;while(p!=NULL){cout<data<<"->";p=p->link

6、;}cout<<"NULL";}queue::find(charitem)//队列查找{queuenode*w;w=front;M:while(w!=NULL){if(item==w->data){return1;break;}else{w=w->link;gotoM;}}if(w==NULL)return0;}voidqueue::del(charitem)//队列删除{queuenode*q,*b;q=front;while(q->data!=item){b=q;q=q->link;}if(q==front){front=front->link;

7、deleteq;}elseif(q==rear){rear=b;rear->link=NULL;deleteq;}else{b->link=q->link;deleteq;}}voidmain()//主函数{intn;chara;cout<<"[************您好,请进入进程管理模拟系统之先来先服务算法************]"<

8、dl;charr;r='x';for(inti=0;;i++){chare[100];cout<<"输入进程

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。