gpt4 book ai didi

memory-management - 有人可以向我解释有关分页(虚拟内存)的图表吗?

转载 作者:行者123 更新时间:2023-12-04 07:44:04 26 4
gpt4 key购买 nike

我一直试图了解虚拟内存,但是当我真正了解虚拟内存时,我会感到困惑。我了解(或感觉像我一样)以下事实:虚拟内存是一种让进程“认为”已为其分配了一定数量的内存的方式。虚拟地址空间被划分为相等大小的页面,物理内存被划分为相等大小的帧,并且页面映射到这些帧。

但是就像..什么时候发生?在此图中,CPU正在运行程序P。这意味着P的一部分已经在物理内存中,对吗? (因为cpu只可以访问物理/主内存)。那么,CPU到底指的是什么呢?我看到它是虚拟内存空间中的页面,所以..该页面究竟代表什么?是指示吗?我们是否正在将指令从虚拟内存移动到物理内存,以便更多程序位于物理内存中(直到那时才需要)?我要走吗?谁可以给我解释一下这个?

enter image description here

最佳答案

该图显示了将虚拟地址转换为物理地址的过程。

Program P到CPU的粗箭头表示正在“馈入” CPU.1中的程序。

CPU“指向”虚拟地址,该虚拟地址由指令用来寻址程序P中的存储位置。它分为两个部分:


页面表索引(p):虚拟地址包含页面表的索引,该索引将页面映射到页面框架(f)。有关此机制(包括多级分页)的说明,请阅读this
偏移量(o):如您所见,偏移量直接添加到物理地址,因为分页的最小可寻址单元是页面,而不是字节


最后,计算出的地址用于寻址物理内存中的存储位置。



1“ fed”表示“从辅助存储器读取(读成红色,读为红色)并按指令执行程序”。

关于memory-management - 有人可以向我解释有关分页(虚拟内存)的图表吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33890445/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com