四种进程调度算法FCFS、时间片轮换、优先级调度、最短作业优先四种进程调度算法FCFS、时间片轮换、优先级调度、最短作业优先
#include
#include
using namespace std;
class Process
{
public:
string ProcessName; // 进程名字
int Time; // 进程需要时间
int leval; // 进程优先级
int LeftTime; // 进程运行一段时间后还需要的时间
};
////////////////////////////////////////////////////// ...
四种进程调度算法FCFS、时间片轮换、优先级调度、最短作业优先
#include
#include
using namespace std;
class Process
{
public:
string ProcessName; // 进程名字
int Time; // 进程需要时间
int leval; // 进程优先级
int LeftTime; // 进程运行一段时间后还需要的时间
};
//////////////////////////////////////////////////////
void Copy ( Process proc1, Process proc2); // 把proc2赋值给proc1 void Sort( Process pr[], int size) ; // 此排序后按优先级从大到小排列 void sort1(Process pr[], int size) ; // 此排序后按需要的cpu时间从小到大排列 void Fcfs( Process pr[], int num, int Timepice); // 先来先服务算法 void TimeTurn( Process process[], int num, int Timepice); // 时间片轮转算法 void Priority( Process process[], int num, int Timepice); // 优先级算法
//////////////////////////////////////////////////////////////////////////
void main()
{
int a;
cout<>a;
const int Size =30;
Process process[Size] ;
int num;
int TimePice;
cout<<" 输入进程个数:"<>num;
cout<<" 输入此进程时间片大小: "<>TimePice;
for( int i=0; i< num; i++)
{
string name;
int CpuTime;
int Leval;
cout<<" 输入第 "<< i+1<<" 个进程的名字、 cpu时间和优先级 :"<>name;
cin>> CpuTime>>Leval;
process[i].ProcessName =name;
process[i].Time =CpuTime;
process[i].leval =Leval;
cout<0 && temp.levalsize/2;d--)
{
Process temp;
temp=pr [d];
pr [d]
= pr [size-d-1];
pr [size-d-1]=temp;
} // 此排序后按优先级从大到小排列
}
///////////////////////////////////////////////////
void sort1 ( Process pr[], int size) // 以进程时间从低到高排序 {// 直接插入排序
for( int i=1;i0 && temp.Time < pr[j-1].Time )
{
pr[j] = pr[j-1];
j--;
}
pr[j] = temp;
}
}
//////////////////////////////// ////
//// 先来先服务算法的实现
///////////////////////////////// void Fcfs( Process process[], int num, int Timepice)
{ // process[] 是输入的进程,num是进程的数目,Timepice是时间片大小
//
while(true)
{
if(num==0)
{
cout<<" 所有进程都已经执行完毕 !"< 0)
{
cout< 0)
{
cout<
本文档为【四种进程调度算法FCFS、时间片轮换、优先级调度、最短作业优先】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。