📄 shd.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 + -