下载此文档

题目一:动态分区分配方式的模拟题目二:Ping命令模拟实现.doc


文档分类:IT计算机 | 页数:约23页 举报非法文档有奖
1/23
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/23 下载此文档
文档列表 文档介绍
《网络操作系统》课程设计报告书题目:题目一:动态分区分配方式的模拟题目二:Ping命令模拟实现学号:学生姓名:指导教师:2009年12月19日目录题目一:动态分区分配方式的模拟 13题目二:Ping命令模拟实现 19教师评语 用C语言或C++语言分别实现采用首次适应算法和最佳适应算法的动态分区分配过程alloc()和回收过程free()。其中,空闲分区通过空闲分区链表来管理,在进行内存分配时,系统优先使用空闲区低端的空间。:最佳适应算法和首次适应算法。最佳适应算法要求所有的空闲内存块按照内存块的大小,由小到大链接在一起,自表头开始查找到第一个满足要求的自由分区分配。首次适应算法中所有的空闲内存块都是按地址由小到大链接的,自表头开始查找到第一个满足要求的分区。:typedefstructmem//定义作业成员结构体{intstart;intend;structmem*next;}mem;typedefstructwork//定义作业结构体{intid; //作业号intsize;//memsize //作业长度intstart; //作业起始地址structwork*next;}work;structallocquery/*定义请求序列结构体*/{intnum;intstate;/*a表示申请,f表示释放*/intlength;};structallocqueryallocq[11];:structfreequery/*定义内存分配队列*/{intflag;/*,其他数值表示相应作业*/intfirstadd;/*起始地址*/intlength;/*占有长度*/};structfreequeryfreeq[11];,都是按编号顺序分配内存块,只是他们各自的内存块的编号顺序排列规则不一样:前者按大小排序,后者按位置排序,(一)源文件1、最佳适应算法:/*pile:*/#include""#include""inti=1;//idtypedefstructmem//定义作业成员结构体{intstart;intend;structmem*next;}mem;typedefstructwork//定义作业结构体{intid; //作业号intsize;//memsize //作业长度intstart; //作业起始地址structwork*next;}work;work*initwork(intsize) //初始化{work*head=(work*)malloc(sizeof(head)); //为作业分配地址head->id=i;head->start=1;head->size=size;head->next=NULL;returnhead;}work*insertwork(work*head,intstart,intsize) //插入新作业{i++;work*pi,*pb; //piistheinsertone##pbisthepointpi=(work*)malloc(sizeof(work));pi->id=i;pi->start=start;pi->size=size;pi->next=NULL;if(head==NULL){head=pi;head->next=NULL;}pb=head;while(pb->next!=NULL){pb=pb->next;}pb->next=pi;returnhead;}mem*initmem(intsize) //作业成员初始化{mem*head=(mem*)malloc(sizeof(mem));head->start=1;head->end=640;head->next=NULL;returnhead;}mem*insertmem(mem*head,intstart,intsize)//插入作业成员{mem*pi,*pb,*pf;intpbsize

题目一:动态分区分配方式的模拟题目二:Ping命令模拟实现 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数23
  • 收藏数0 收藏
  • 顶次数0
  • 上传人allap
  • 文件大小232 KB
  • 时间2020-07-04