采用最佳适应算法的可变分区.ppt采用最佳适应算法的可变分区存储模拟系统
1923118 陆琦
1923213 张梅
1923110 宋保科
1923112 张莉莉
2006-2-23
操作系统原理课程设计-成果汇报
2018/6/2
1
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
2018/6/2
2
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
2018/6/2
3
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
2018/6/2
4
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
2018/6/2
5
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
初始化
系统时间减1
检查等待链,取出
适当的程序运行
检查运行链,是否
有进程运行完毕
是否要拼接
是否要搬家
执行拼接
执行搬家
更新显示
《程序总流程图》
是
是
否
否
2018/6/2
6
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
基本数据结构
typedef struct LData{
char name[20];
int length;
int begin;
int time;
SYSTEMTIME in_time;
int state;
}LData;
typedef struct LNode{
struct LData data;
LNode *next;
}LNode;
typedef struct List{
LNode *front;
LNode *rear;
int ListLength;
}List;
m_list 空闲链表
m_Dlist 活动的进程链表
m_Elist 等待的申请链表
2018/6/2
7
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
主要算法
链表的创建,元素的添加、插入、删除、排序(冒泡排序)
内存碎片的拼接、搬家
进程间的并发执行
演示的即时保存与打开
2018/6/2
8
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
1923118 陆琦
链表的元素创建、双链添加
总流程OnTimer()函数的建立
GDI绘图操作
消息映射
2018/6/2
9
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
链表创建元素添加
清空链的fornt,rear指针
分配一个新的LNode空间
将fornt,rear指针指
向新空间,长度设为0
开始
结束
void CreateList(List &L)
bool SInsertList(List &L,List &DL,LData &d,CString &answer)
开始
判断要插入数据d是否合理
是
L(空闲链)中是否有
申请的大小的空闲块
是
把d放入DL(活动链)中,改变
相应的L(空闲链)中的元素
结束
2018/6/2
10
书山有路勤为径●▂●学海无涯苦作舟专业分享,敬请收藏
采用最佳适应算法的可变分区 来自淘豆网www.taodocs.com转载请标明出处.