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

📄 shd.h

📁 操作系统课程设计~处理机调度 模拟一种多任务(或多用户)(多道)批处理操作系统(包含处理器管理、存储管理、进程管理。
💻 H
字号:
#ifndef SHD_H
#define SHD_H
#include "pcblist.h"
#include "Cpcb.h"
#include "CMem.h"

#define SCHED_PRIO    0
#define SCHED_RR	  1

class CSchdQueue
{
public:
	Clist<Cpcb> reserve;  //后备队列
	Clist<Cpcb> active;	//活动进程队列
	Clist<Cpcb> hang;		//挂起进程队列
	Clist<Cpcb> over;		//完成进程队列
	Clist<CMem> mm;			//空闲内存块表
	Cpcb* current;  //当前运行的进程

private:
	void in_schedule_prio();
	void in_schedule_rr();

public:
	int sched_kind;	//调度方式,默认为优先级调度
	int n_max_run;	//规定就绪队列的最大进程数目
	int n_process;	//全部进程数目
	bool usemm;
public:
	CSchdQueue();
	void schedule();
	void in_schedule();
	Cpcb* randpcb(); 
	void clear();
	void deletepcb(Cpcb* p);
	void add_to_reserve(Cpcb* p);
	void add_to_reday(Cpcb* p);
	void add_to_over(Cpcb* p);
	bool alloc(Cpcb* p);
	void reclaim(Cpcb* p);
};
#endif

⌨️ 快捷键说明

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