资源简介
连续存储空间管理仿真系统,操作系统,课设,存储空间
代码片段和文件信息
#include
#include
#include // 就是需要引用这个图形库
#include
#include
#define Count 7
#define MAXSIZE 32
long CLK;//模拟时钟信号
int a[]={881616163232};
////////////////////////////////////////////////////////////////////////////////////////////////
//PCB表的结构和初始化
typedef struct PCB{
int sign;
int data;
long start;
int time1;
struct PCB *next;
}*pcb;
typedef struct {
pcb front;
pcb rear;
}Pcb_head;
Pcb_head ZZ;
void Init_pcb()
{
ZZ.front=ZZ.rear=NULL;
int datatime1name;
long start;
srand((unsigned)time(NULL)); //确保随机
int num;
num=rand()%13+7;
for(int j=1;j<=num;j++)
{
cout<<“进程名“<<“ “<<“申请内存“<<“ “<<“进入时间“<<“ “<<“持续时间“< cout<<“ “< data=rand()%1024+1;
cout< start=rand()%9+1;
cout< time1=rand()%9+1;
cout<
pcb o=(pcb)malloc(sizeof(PCB));
o->sign=j;
o->data=data;
o->time1=time1;
o->start=start;
if(ZZ.front==NULL)
ZZ.front=ZZ.rear=o;
ZZ.rear->next=o;
o->next=NULL;
ZZ.rear=o;
}
}
void Init_pcb2()
{
ZZ.front=ZZ.rear=NULL;
int datatime1name;
long start;
srand((unsigned)time(NULL)); //确保随机
int num;
num=rand()%13+7;
for(int j=1;j<=num;j++)
{
cout<<“进程名“<<“ “<<“申请内存“<<“ “<<“进入时间“<<“ “<<“持续时间“< cout<<“ “< data=rand()%32+1;
cout< start=rand()%6+1;
cout< time1=rand()%6+1;
cout<
pcb o=(pcb)malloc(sizeof(PCB));
o->sign=j;
o->data=data;
o->time1=time1;
o->start=start;
if(ZZ.front==NULL)
ZZ.front=ZZ.rear=o;
ZZ.rear->next=o;
o->next=NULL;
ZZ.rear=o;
}
}
/* while(1)
{
cout<<“输入进程名、占用空间、起始时间、持续时间。(进程名输入0退出)“< cin>>name;
if(name==0)
break;
cin>>data>>start>>time;
if(data>1024)
{
cout<<“所输入的数值大于最大内存空间!!“< exit(-1);
}
pcb o=(pcb)malloc(sizeof(PCB));
o->sign=name;
o->data=data;
o->time=time;
o->start=start;
if(ZZ.front==NULL)
ZZ.front=ZZ.rear=o;
ZZ.rear->next=o;
o->next=NULL;
ZZ.rear=o;
}*/
////////////////////////////
//后备等待队列的定义与初始化
typedef struct node{
int sign;
int data;
int time1;
struct node *next;
}*Queue;
typedef struct{
Queue front;
Queue rear;
}Queue_head;
Queue_head WW;
void Init_queue()
{
WW.front=WW.rear=NULL;
}
////////////////////////////////////////////////////////////////////////////////////////////////
//就绪队列和物理空间模拟队列的定义与初始化
typedef struct Pnode{//内存块结点
int data;
int sign; //进程名
int address;
int time1; //持续时间
struct Pnode *pre; //指向前结点
struct Pnode *next;
}*QueuePtr;
typedef struct{ //头结点
QueuePtr front;
QueuePtr rear;
}linkQueue;
linkQueue FFFF_fenpei;
QueuePtr FF_next_ff;
int m_FF_Count=0; //已分配的进程数
int m_FF_Total=0; //已分配的分区容量
void Init_ff()
{
FF_fenpei.front=FF_fenpei.rear=NULL;
相关资源
- 操作系统实验报告处理机调度算法的
- 安徽大学操作系统实验九最终考试内
- 动态分区分配方式的模拟
- 操作系统电梯调度算法
- nachos操作系统实验三
- 用C\\C++实现操作系统经典同步问题,
- NUR算法和OPT算法实现-----操作系统实验
- 操作系统模拟实现单级目录的文件系
- FCFS和SJF调度算法C++
- 进程同步操作系统实验三,带实验报
- 操作系统的理发师问题解决文件打包
- 操作系统调度算法c语言实现
- 操作系统实验-计算机进程管理和进程
- 编写C语言程序,模拟UNIX磁盘空间管理
- 操作系统课程设计之进程调度源代码
- 操作系统 动态分区存储管理方式的
- 《 Linux操作系统下C语言编程入门》
- 操作系统内存分配C++实现
- 操作系统 读者写者问题c++
- 电梯仿真系统C++
- 操作系统实习-快速文件系统
- 操作系统实习:动态分区分配C++实现
- 操作系统c语言模拟作业调度实验
- 进程调度时间片轮转+优先级进程调度
- 操作系统课程设计 文件管理系统模拟
- spooling模拟系统代码.docx
- 操作系统实验-----MFC线程--购票系统演
- 分区式存储管理
- 操作系统抢占式短进程优先调度算法
- 请求调页存储管理方式的模拟
评论
共有 条评论