最新游戏中的现象.pptVIP

  • 2
  • 0
  • 约1.04万字
  • 约 89页
  • 2018-08-30 发布于湖北
  • 举报
最新游戏中的现象.ppt

? 回收分区r 上邻空闲区 ? 回收分区r 下邻空闲区 r与 f1 合并 成为一个大的空闲区f1 r与 f2 合并 成为一个大的空闲区f2 * bjhk 回收分区r ? 回收分区r 上、下邻空闲区 上、下邻已分配区 r与 f1、 f2 合并 成为一个大的空闲区f1 r成为一个 新的空闲区f * bjhk 分区回收算法release 当一个进程(或程序)释放某内存区时,要调用存储区释放算法release,它将首先检查释放区是否与空闲区表(队列)中的其它空闲区相邻,若相邻则合并成一个空闲区,否则,将释放为一个空闲区插入空闲区表(或队列)中的适当位置。 * bjhk 四. 放置策略 1. 什么是放置策略 选择空闲区的策略,称为放置策略。 空闲区表的组织有两种方法: 1、按空闲区大小的升序(降序)组织; 2、按空闲区首址升序(降序)组织。 根据空闲区表组织的方法的不同,有不同的放置策略:最佳适应算法、首次适应算法和最坏适应算法三种。 * bjhk 2. 首次适应算法 (1) 什么是首次适应算法 首次适应算法是将输入的作业放置到主存里第一个足够装入它的可利用的空闲区中。 首次适应算法的表是按空闲区首址升序的(即空闲区表是按空闲区首址从小到大)方法组织的。 * bjhk (2) 首次适应算法的例子 * bjhk (3) 特点 这种算法的实质是尽可能地利用低地址部分的空闲区,而尽量地保留高地址部分的大空闲区,使其不被切削成小的区,其目的是保证在大的作业到来时有足够大的空闲区满足请求者。 * bjhk 3. 最佳适应算法 (1) 什么是最佳适应算法 最佳适应算法是将输入的作业放置到主存中与它所需大小最接近的空闲区中。 最佳适应算法的空闲区表按空闲区大小升序方法组织。 * bjhk (2)最佳适应算法的例子 * bjhk (3) 特点 尽可能地利用存储器中小的空闲区,而保留尽量大的空闲区。 这种算法最大的缺点是分割后的空闲区将会很小,直至无法使用,而造成浪费。 * bjhk 4. 最坏适应算法 (1) 什么是最坏适应算法 最坏适应算法是将输入的作业放置到主存中最不适合它的空闲区中。 最坏适应算法的空闲区表是按空闲区大小降序的方法组织的(从大到小的顺序)。 * bjhk (2) 最坏适应算法的例子 * bjhk (3) 特点 克服了最佳适应算法把空闲区切割得大小的缺点。即每次分配时,总是将最大的空闲区切去一部分分配给请求者,其依据是当一个很大的空闲区被切割了一部分后可能仍是一个较大的空闲区。 尽可能地利用大的空闲区,而不分割小的空闲区。 * bjhk 5. 几种放置策略的比较 例如:某时刻系统中有三个空闲区,其大小和首址为:(35KB,100KB)、(12KB,156KB)、(28KB,200KB) 有一作业系列: (JOB1,12KB)、(JOB2,30KB)、(JOB3,28KB) 用首次适应算法、最佳适应算法和最坏适应算法来处理该作业序列,看哪种算法合适。 * bjhk 0 35KB 156KB 首次适应算法 0 12KB 200KB 0 28KB NULL 100KB 作业1(12KB)放到首址100KB的空闲区 0 23KB 156KB 0 12KB 200KB 0 28KB NULL 112KB 作业2(30KB)不能分配 作业3(28KB)放到首址200KB的空闲区 * bjhk 0 12KB 200KB 最佳适应算法 0 28KB 100KB 0 35KB NULL 156KB 作业1(12KB)放到首址156KB的空闲区 0 28KB 100KB 0 35KB NULL 200KB 作业2(30KB)放到首址100KB的空闲区 作业3(28KB)放到首址200KB的空闲区 0 5KB 200KB 0 28KB NULL 130KB * bjhk 0 35KB 200KB 最坏适应算法 0 28KB 156KB 0 12KB NULL 100KB 作业1(12KB)放到首址100KB的空闲区 作业2(30KB)不能继续分配 作业3(28KB)放到首址200KB的空闲区 0 28KB 112KB 0 23KB 156KB 0 12KB NULL 200KB * bjhk 五. 碎片问题及拼接技术 1. 什么是碎片问题 在已分配区之间存在着的一些没有被充分利用的空闲区。 如何解决碎片问题? 2. 拼接技术 所谓拼接技术是指移动存储器中某些已分配区中的信息,使本来分

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档