资源简介

本文件是对操作系统进程多级反馈队列调度算法的设计与实现,算法以txt的形式输入输出,其中包含设计报告

资源截图

代码片段和文件信息

#include
#include
#include
#include
#include
#include
#include
#include“process.h“
int main(){
   int process_time[10];      //进程到达第一级队列的时间
   int p_num=10;
   for(int i=0;i       process_time[i]=i;      //假定进程从前往后一次间隔一秒到达,第一个进程到达时间为0
   }

   int queue_num=3;
   Proqueue proqueue[queue_num];                                     //运行进程的队列总数为3
   for(int i=0;i        proqueue[i].setQuePrior(i+1);
        proqueue[i].setQueTime(pow(2i+1));
   }
   for(int i=0;i       process[i].get_time=process[i].get_wait_time=process[i].end_time=0;
       process[i].prior=1;                                          //进程首先应进入优先级为1的队列中,故默认进程优先级为1
       //cin>>process[i].id>>process[i].run_time_num;               //输入进程id号和进程的总运行时间
   }
   int shuru;
   cout<<“please input‘1‘the program will read the data from the file ‘input.txt‘or input other number to terminate it.“<   cin>>shuru;
   if(shuru==1){
   string line;
   ifstream openfile(“input.txt“);
   int head=0q=0;
   while(getline(openfileline))
   {
     istringstream is(line);
     if(head==0){
        head=1;
        continue;
        }
        is>>process[q].id>>process[q].run_time_num;
        //cout<        q++;
    }
    openfile.close();
   }
   else
    return 0;
   cout<<“read data from the file successfully!“<
   for(int i=0;i      struct Pronode *pronode=new Pronode();
      pronode->id=process[i].id;
      proqueue[0].enqueue(pronode);
   }

  int j=0record_time=0;                                      //记录各个进程在队列中的总运行时间
  struct Pronode *p=new Pronode();                            //p_num为尚未结束运行进程总数
  ofstream output(“output.txt“);
   while(1){
       while(proqueue[j].getLength()>0){
            int i;
            p=proqueue[j].dequeue();                          //进程块出队
            for(i=0;i                if(p->id==process[i].id){
                    if(process[i].run_time_num-process[i].get_time<=proqueue[j].getQueTime()){  //进程运行剩余运行总时间小于等于所在队列时间片,则进程运行完毕
                       if(record_time                         process[i].end_time=process_time[i]+process[i].run_time_num-process[i].get_time;  //                                                     ///////////////////////////////////////
                         record_time=process_time[i];}//+process[i].run_time_num-process[i].get_time;}
                       else{
                       process[i].end_time=record_time+process[i].run_time_num-process[i].get_time;
                       record_time+=process[i].run_time_num-process[i].get_time;
                       }
                       cout<                       output<

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     650592  2017-11-23 21:21  多级反馈队列调度算法\c_project\bin\Debug\c_project.exe

     文件        200  2017-11-23 14:49  多级反馈队列调度算法\c_project\bin\Debug\input.txt

     文件         61  2017-11-23 21:17  多级反馈队列调度算法\c_project\bin\Debug\output.txt

     文件        241  2017-11-23 21:12  多级反馈队列调度算法\c_project\c_project.depend

     文件        362  2017-11-23 21:22  多级反馈队列调度算法\c_project\c_project.layout

     文件        200  2017-11-23 14:49  多级反馈队列调度算法\c_project\input.txt

     文件       3806  2017-11-24 08:28  多级反馈队列调度算法\c_project\main.cpp

     文件     528700  2017-11-28 23:51  多级反馈队列调度算法\c_project\main.exe

     文件       8332  2017-11-28 23:51  多级反馈队列调度算法\c_project\main.o

     文件     130734  2017-11-23 21:21  多级反馈队列调度算法\c_project\obj\Debug\main.o

     文件         61  2017-11-28 23:52  多级反馈队列调度算法\c_project\output.txt

     文件       2591  2017-11-23 20:55  多级反馈队列调度算法\c_project\process.h

     文件      53542  2017-11-29 00:03  多级反馈队列调度算法\实验1 多级反馈队列调度算法.docx

     文件       6272  2017-11-29 00:01  多级反馈队列调度算法\源代码.txt

     目录          0  2017-11-23 21:21  多级反馈队列调度算法\c_project\bin\Debug

     目录          0  2017-11-23 21:21  多级反馈队列调度算法\c_project\obj\Debug

     目录          0  2017-11-23 20:54  多级反馈队列调度算法\c_project\bin

     目录          0  2017-11-23 20:54  多级反馈队列调度算法\c_project\obj

     目录          0  2017-11-28 23:51  多级反馈队列调度算法\c_project

     目录          0  2017-11-29 00:04  多级反馈队列调度算法

----------- ---------  ---------- -----  ----

              1385694                    20


评论

共有 条评论