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

📄 job.h

📁 操作系统课程设计的段式管理的实现程序。包含了分区说明表的建立
💻 H
字号:
#ifndef _H_H_JOB
#define _H_H_JOB
#include<iostream>
#include<vector>
using namespace std;
typedef int PID;
int randInt(int low,int high,int base=1);//产生low-high范围内是base整数倍的整数
struct BlockItem	//已分配表
{
	BlockItem(int sAddr=0,int len=0,PID pid=PID());
	int output();
	int sAddr;//起始地址
	int len;//长度
	PID pid;//分配给的进程号
};
struct FreeItem
{
	FreeItem(int sAddr,int len);
	int sAddr;//起始地址
	int len;//长度
	int output();
};
typedef vector<BlockItem> BlockTable;
typedef vector<FreeItem> FreeTable;
extern BlockTable btable;//已分配表
extern FreeTable ftable; //空闲分区表
extern int JobSize;
bool cmpFreeItem(FreeItem& f1,FreeItem& f2);//按大小比较两个空闲分区
struct Job
{
	static PID pidIndex;
	PID pid;//作业标示号
	int length;//作业长度
	int startAddress;//作业装入地址
public:
	Job(PID pid=PID(),int length=0);
	int output();
	PID initJob();//随机初始化作业
	int Alloc();//给作业分配内存
	int Free();//回收作业内存
};
typedef vector<Job> JobList;
#endif

⌨️ 快捷键说明

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