sys.h

来自「链表实现的银行家算法」· C头文件 代码 · 共 44 行

H
44
字号
#if !defined(AFX_SYS_H__460E9038_C3AA_4F0B_BF25_51F588E9601C__INCLUDED_)
#define AFX_SYS_H__460E9038_C3AA_4F0B_BF25_51F588E9601C__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "PCB.h"
#include "Res.h"
class Sys  
{
public:
	int pcbLen;//指进程的个数
	int resLen;//指资源的个数
	//int **Max;//每个进程对每个资源的需求量
	bool *Flag;//每个进程的标志
	int *Work;//每个资源的情况
	int *Remain;
	//bool *State;//每个进程的状态
	Res *headRes;
	Res *tailRes;
	PCB *headPCB;
	PCB *tailPCB;
public:
	Sys();
	virtual ~Sys();
	bool IsSecurity(char *name[]);//判断是否有安全序列
	void PrintPCB();//输出PCB对资源的需求信息
	void PrintRemainRes();//输出Res的剩余的数量
	void InitSys();//初始化一个sys
	//void PrintRes(PCB *tempPCB);//输出tempPCB对资源的需求量
	void PrintSys();//输出各进程对各资源的需求情况
private:
	bool InsertRes(Res *res);//插入Res
	void CompleteRes();//完成对Res的插入
	bool InsertPCB(PCB *pcb);//插入PCB
	void CompletePCB();//完成对PCB的插入
	void FreeRes();//释放Res的内存资源
	void FreePCB();//释放PCB的内存资源
	void ReadRes();//从res.txt文件中获取相关数据
	void ReadPCB();//从pcb.txt文件中获取相关数据
	void ConstructWork();//初始化Work为Remain
	void ConstructRemain();//初始化Remain为系统资源的总量
};
#endif // !defined(AFX_SYS_H__460E9038_C3AA_4F0B_BF25_51F588E9601C__INCLUDED_)

⌨️ 快捷键说明

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