摘要: 1、垃圾收集器将存储器视为一张有向可达图(reachability graph)。 2、Mark%Sweep垃圾收集器由标记(mark)阶段和清除(sweep)阶段组成。标记阶段标记出根节点的所有可达的和已分配的后继,而后面的清除阶段释放每个被标记的已分配块。典型地,块头部中空闲的低位中的一位来表示这个块是否被标记了。 Note that the arrows in this example ... 阅读全文
posted @ 2011-06-29 22:20 浪里飞 阅读(386) 评论(0) 推荐(0) 编辑
摘要: 1、需要额外的虚拟存储器时,使用一种动态存储器分配器(dynamic memory allocator)。一个动态存储器分配器维护着一个进程的虚拟存储器区域,称为堆(heap)。在大多数的unix系统中,堆是一个请求二进制0的区域;对于每个进程,内核维护着一个变量brk,它指向堆的顶部。 2、分配器将堆视为一组不同大小的块(block)的集合来维护。每个块就是一个连续的虚拟存储器组块(chunk... 阅读全文
posted @ 2011-06-29 16:59 浪里飞 阅读(779) 评论(0) 推荐(0) 编辑