用C++编写进程调度模拟程序。.docVIP

  • 10
  • 0
  • 约1.14万字
  • 约 18页
  • 2017-01-30 发布于重庆
  • 举报
用C编写进程调度模拟程序。

操作系统教程 实验报告 班 级 姓 名 学 号 指导教师 日 期 2013-5-10 西安理工大学理学院应用数学系 二零一三年春季学期 一、实验名称 用C++编写进程调度模拟程序。 二、实验目的 进程是操作系统最重要的概念之一,本实验通过对进程调度模拟程序的运行,学习运用时间片轮转法进行进程调度,加深对进程的基本调度状态以及进程调度算法的理解。 三、实验内容 根据C++编写进程调度模拟程序,读懂并运行该程序代码,并且为代码添加注释。 四、程序代码 #includeiostream.h #includestdlib.h #includetime.h #includestdio.h #includestring.h const int MAXCOMMANDLEN =50; ///////////////////////////////////////////////////////////////////////////////////// // // PROCESS // ///////////////////////////////////////////////////////////////////////////////////// class Process //进程类 { friend class CPU; protected: static int init_ID; //随机进程ID int ID; //进程ID char runText[MAXCOMMANDLEN]; //进程指令数组 int IP; //进程指令指针,保存进程指令执行到的具体位置 bool ISuseSource; //此进程是否使用资源,ture:使用中 false : 未使用 bool ISblocked; //此进程是否被阻塞 ture:阻塞 false :未阻塞 int unitTime; //进程单位被cpu执行时间, 默认 1 int blockTime; //进程被阻塞时间 public: static void RandID(); //随机生成进程ID Process(); //进程函数的构造函数 int getID(); //获取进程ID int getIP(); //获取进程IP void setIP(int); //设置IP void Runed(); //进程被cpu执行 int getUnittime(); //得到进程单位执行时间 int getBlcoktime(); //得到进程阻塞时间 void setBlocktime(int); //设置进程阻塞时间 void setUnittime(int); //设置进程单位执行时间 char getResult(int); //得到进程执行结果 char* getRuntext(); //得到进程执行的指令 void setBlockstate(bool); //设置阻塞状态 bool getBlockstate(); //获得阻塞状态 bool getISusesource(); //得到资源的状态 使用或未使用 void setISusesource(bool); //设置资源的使用状态 }; int Process::init_ID; void Process::RandID() //随机生成进程ID { srand( (unsigned)time( NULL ) ); //设置随机数种子 init_ID=rand(); //产生随机数 } Process::Pro

文档评论(0)

1亿VIP精品文档

相关文档