【发布时间】:2021-08-23 03:40:24
【问题描述】:
模拟操作系统中使用的虚拟内存技术。声明一个巨大的数组表示 主存储器和每个数组元素代表一个帧。数组元素要么为零 (如果框架是空闲的)或 Pr-Pg 如果框架正被一个进程使用 ID 。给定进程大小,您的程序应确定页数并将 30% 的帧分配给进程,并且假定剩余页位于虚拟内存中。从进程中随机选择页面并随机分配一个框架,如果框架是空闲的。此页框组合保存在页表中。 给定一个进程ID,生成一个长度为10的页面引用字符串,模拟执行 该过程,通过检查物理内存中的页面可用性并替换页面,如果 必要(通过采用您选择的页面替换算法)。
编写一个菜单驱动程序,它 (i) 接受新的进程详细信息并显示页面 该进程的表 (ii) 删除已完成的进程和完成后的进程 显示更新的空闲帧列表,(iii)从主打印使用/未使用的帧列表 内存和 (iv) 给定流程执行的模拟结果。
【问题讨论】:
-
到目前为止你有什么尝试?
-
我还没有编码,但我的想法是使用需求分页来解决。
-
尝试一下,如果您遇到特定问题或障碍,您可以询问相关问题。请参阅有关提出家庭作业问题的元常见问题解答:meta.stackoverflow.com/questions/334822/…
-
@ChandlerBing,尝试编写你的想法,如果你被困在某个地方,你可以在这里提及,人们会帮助你。祝你好运:-)
标签: c memory-management operating-system virtual-memory