原题:实验三 存储管理---阅读调试实验
1.阅读下面源代码,完善程序空白处内容。
2.阅读代码,写出源程序采用的调度算法、算法流程图和程序功能。
3.调试并运行代码,写出结果。
先解读实验代码,再在代码之后给出算法流程图。
逐段解析代码:
头文件和自定义数据结构
#include<stdio.h>
#include <dos.h>
#include<stdlib.h>
#include <conio.h>
#define n 10 //假定系统允许的最大作业数为n,假定模拟实验中n值为10
#define m 10 //假定系统允许的空闲区表最大为m,假定模拟实验中m值为10
#define minisize 100 /*空闲分区被分配时,
* 如果分配后剩余的空间小于minisize,
*则将该空闲分区全部分配,
* 若大于minisize,则切割分配*/
struct/*已分配区*/
{
float address;/*已分配分区起始地址*/
float length;/*已分配分区长度,单位为字节*/
int flag;/*已分配区表登记栏标志,用"0"表示空栏目*/
} used_table[n];/*已分配区