时间片轮转度算法.doc

时间片轮转度算法.doc

ID:55530287

大小:32.50 KB

页数:8页

时间:2020-05-16

时间片轮转度算法.doc_第1页
时间片轮转度算法.doc_第2页
时间片轮转度算法.doc_第3页
时间片轮转度算法.doc_第4页
时间片轮转度算法.doc_第5页
资源描述:

《时间片轮转度算法.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、// 时间片轮转调度算法#include#include#include#includeusing namespace std;enum STATUS {RUN,READY,WAIT,FINISH};struct PCBNode{            int  processID;              //进程ID    STATUS  status;              //进程状态    int  priorityNum;       

2、   //优先数    int  reqTime;             //总的需要运行时间    int  remainTime;          //剩下需要运行时间    int  arriveTime;          //进入就绪队列时间    int  startTime;           //开始运行时间    int  finishTime;          //结束运行时间    int  totalTime;           //周转时间    float  weightTotalT

3、ime;      //带权周转时间    };struct QueueNode {    int ID;          //进程ID    struct QueueNode * next;   //队列中下一个进程指针};struct LinkQueue{    QueueNode *head;//队首};void Fcfs(LinkQueue& Q, int& totalTimeSum, int& weightTotalTimeSum,PCBNode * ProcessTable);bool RR_Run(Lin

4、kQueue& Q,QueueNode* q, QueueNode* p, const int Round,int& currentTime,PCBNode * ProcessTable);//分配时间片给q所指进程,p为刚退出的进程void RoundRobin(LinkQueue& Q,const int Round, int& totalTimeSum, int& weightTotalTimeSum,PCBNode * ProcessTable);//时间片轮转调度,调用RR_Run(),时间片大小设为Round

5、void InitialQueue(LinkQueue& Q,PCBNode * ProcessTable,const int processnum);//初始化就绪队列void Input(PCBNode * ProcessTable, const int processnum);//从input.txt文件输入数据int main(){    LinkQueue Q;//就绪队列    Q.head = NULL;    const int processnum = 16;//进程数    const int Rou

6、nd = 1;      //时间片大小    int totalTimeSum = 0;     //周转时间    int    WeightTotalTimeSum = 0;//带权周转时间    PCBNode * ProcessTable=new PCBNode[processnum];   //进程表    Input(ProcessTable, processnum);    InitialQueue(Q, ProcessTable, processnum);    RoundRobin(Q, Round,

7、 totalTimeSum,WeightTotalTimeSum,ProcessTable);        cout<<"时间片轮调度的平均周转时间为:"<

8、Fcfs(Q, totalTimeSum,WeightTotalTimeSum,ProcessTable);    cout<<"先来先服务的平均周转时间为:"<

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

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

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