⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 schedule.h

📁 操作系统的页面调度算法
💻 H
字号:
// schedule.h: interface for the schedule class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SCHEDULE_H__E0560397_CB40_4318_9253_3AD0BF2D25C6__INCLUDED_)
#define AFX_SCHEDULE_H__E0560397_CB40_4318_9253_3AD0BF2D25C6__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include<iostream.h>
class process  
{
public:
	int arrtime;
	int costtime;
	int begin_executetime;
	int had_executedtime;
	int finishtime;
	int perT;
	float perW;
	bool finish;
	process *next;
public:
	process(int,int);
	process();
	virtual ~process();
};

process::process(int arr,int cost)
{
	arrtime=arr;
	costtime=cost;
	begin_executetime=0;
	had_executedtime=0;
	finishtime=0;
	perT=0;
	perW=0;
	finish=false;
	next=NULL;
}
process::process()
{
	next=NULL;
	finish=false;
}
process::~process()
{}

class Queue  
{
public:
	    process*  head;		
		process*  tail;
		
public:
	int    length;
	Queue();
	void insert(process*);
	process* pop();	
	void delq(process*,process*);
	virtual ~Queue();
};


//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

Queue::Queue()
{
	head=new process(0,0);
	length=0;
	tail=head;
}


void Queue::insert(process* pro)
{	
	pro=tail->next;
	tail=pro;
}

process* Queue::pop()
{	
	process * pivot=head->next;
	head->next=pivot->next;
	return pivot;	
}

void Queue::delq(process*p,process*q)
{
	p->next=q->next;
}
	
Queue::~Queue()
{

}
class schedule  
{

private:
	Queue Quesche;
	float T,W;
public:
	schedule(char*);
	void FCFS(void);
	void SJF(void);
	virtual ~schedule();

};

#endif // !defined(AFX_SCHEDULE_H__E0560397_CB40_4318_9253_3AD0BF2D25C6__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -