• 大小: 276KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-01-10
  • 语言: 其他
  • 标签:

资源简介

⑴首次适应算法实现 从空闲分区表的第一个表目起查找该表,把最先能够满足要求的空闲区分配给作业,这种方法目的在于减少查找时间。为适应这种算法,空闲分区表(空闲区链)中的空闲分区要按地址由低到高进行排序。该算法优先使用低址部分空闲区,在低址空间造成许多小的空闲区,在高地址空间保留大的空闲区。 ⑵循环首次适应算法实现 该算法是首次适应算法的变种。在分配内存空间时,不再每次从表头(链首)开始查找,而是从上次找到空闲区的下一个空闲开始查找,直到找到第一个能满足要求的的空闲区为止,并从中划出一块与请求大小相等的内存空间分配给作业。该算法能使内存中的空闲区分布得较均匀。 ⑶最佳适应算法实现 它从全部空闲区

资源截图

代码片段和文件信息

#include
#include
#include
#include
using namespace std;
typedef struct readyque//进程的属性结构体
{
 char name[10];
 int size;
}readyque*readyqueue;

typedef struct idlyspace//空闲表结构体
{
 int from;
 int size;
 idlyspace * next;
}idlyspace*idly;

typedef struct busyspace//已分配链表结构体
{

 int from;
 readyque r;
 busyspace * next;
}busyspace*busy;
static idly Is;
static idly Is2;
static busy Bs;
int FF();
int NF();
int BF();
int WF();
int recover();
void Isprint();
void Bsprint();
int main()
{
 Is=(idly)malloc(sizeof(idlyspace));
 Is->from=0;
 Is->size=256;
 Is->next=NULL;
 Is2=Is;
 Bs=(busy)malloc(sizeof(busyspace));
 Bs->next=NULL;
 int tt1;
 printf(“\n********************欢迎来到动态分区存储管理系统***********************\n\n“);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2012-06-29 10:41  新建文件夹\
     文件        9556  2012-06-19 20:46  新建文件夹\1改.cpp
     文件      449024  2012-06-29 10:47  新建文件夹\操作系统课程设计报告.doc

评论

共有 条评论