Questions tagged «paging»

2
是否有任何考虑分页的垃圾收集器?
垃圾回收必须访问所有存在的对象,以便找到可以回收的内存。(有很多世代只是延迟了一下) 在所有条件都相同的情况下,最好先访问已分页到RAM中的对象,然后再分页其他块并分页出某些对象。 另一种可能是,当OS希望从进程中删除一整页的内存时,首先会询问GC是否具有可以放弃而无需分页的页面。GC通常可以通过从页面移动对象来完成,因此可以在OS需要页面的限期内清除该页面。 但是,我想不起任何与OS分页系统集成的垃圾收集器,这些垃圾收集器会驱动GC的工作顺序。

1
在纯需求分页期间交换空间管理
以下是我在进行OS家庭作业时遇到的一个疑问-但是,它似乎比基于概念的问题要多于简单的编码问题,因此恕我直言,我认为作业标签不适合这样做。 在给定固定数量的RAM和交换内存的情况下,针对同时运行的多个进程的纯需求分页方案中,在以下两种情况下,交换空间会发生什么情况: 进程遇到页面错误,RAM中没有可用的空闲帧,因此需要将进程的内核帧块中的一个页面写出以进行交换(为简单起见,我不考虑复制-on-write case)。明确地说,将在交换空间中的哪个位置写入此帧,并且为此需要更新哪些数据结构? 当某个进程需要进入特定页面时,它在交换内存中的位置如何?如何知道该特定页面是否全部存在于交换中? 如您所料,我很难理解在纯需求管理方案中以何种方式管理交换空间,以及什么数据结构必不可少。如果您可以在答案中引用任何链接,那就太好了(我在“操作系统概念-Silberschatz的第8版,我找不到我的问题的明确答案”中进行了搜索)。

2
有人可以解释这张关于平板分配的图吗?
我试图了解Slab分配的工作原理,以及为什么它与普通分页不同或更好。 我发现了该图,如果有更多说明,我认为将对您有所帮助。 一些问题: 3KB和7KB项代表什么?他们必须以某种方式联系起来吗?为什么用这种方式包装? 在缓存列中,缓存是灰色框还是灰色框内的白色/蓝色框?灰色盒子是一堆缓存吗? 这些平板仅仅是蓝框,还是整个“物理连续页面”都是平板? 我真的很感谢您的帮助。谢谢!

2
时钟页面替换算法-现有页面
在模拟时钟页面替换算法时,当内存中已存在一个引用时,时钟指针是否仍会增加? 这是一个例子: 4个插槽,使用时钟页面替换算法 参考列表:1 2 3 4 1 2 5 1 3 2 4 5 初始列表如下所示: -> [1][1] [2][1] [3][1] [4][1] 下一个要插入的引用将是1,然后是2。指针在1之后,2之后是否仍指向1?换句话说,插入5后,时钟将如下所示: -> [5][1] [2][0] [3][0] [4][0] ?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.