(分页)每一页都有偏移量吗?
(Paging) Does every page have an offset?
PS: I really don't know if this is off-topic (I read the question help), but I saw a question on the site of the same topic (but not the same question) and it wasn't closed as off topic so just assuming.
无论如何,我正在学习和研究 Paging,我对 Pages 的结构很困惑。
我 Googled 无济于事(我可能只是不擅长 Google)而且关于 Paging 的每篇论文都非常混乱。
整个虚拟内存是否有一个偏移量?还是我只是迷失了仙境??
如果可能的话,有人可以举例说明 Paging 的工作原理吗?
Virtual Memory 只是 一个大的假想的连续内存块。 它的存在使程序员不需要知道或担心实际的物理地址规范。他们可以坐下来担心他们的程序逻辑或算法以及其他与机器无关的东西。
在任何读取或写入发生之前,这些虚拟地址被内存管理单元转换为实际的物理地址 (MMU)。具体来说,它是由 page table 完成的,它只是 MMU 的一部分。
除此之外 Paging 允许进行非连续内存分配,因此我们没有 external fragmentation。
如果你了解基础知识,这个话题就很简单了。我会在 youtube 上推荐 David Black-Schaffer 的视频。
PS: I really don't know if this is off-topic (I read the question help), but I saw a question on the site of the same topic (but not the same question) and it wasn't closed as off topic so just assuming.
无论如何,我正在学习和研究 Paging,我对 Pages 的结构很困惑。 我 Googled 无济于事(我可能只是不擅长 Google)而且关于 Paging 的每篇论文都非常混乱。
整个虚拟内存是否有一个偏移量?还是我只是迷失了仙境??
如果可能的话,有人可以举例说明 Paging 的工作原理吗?
Virtual Memory 只是 一个大的假想的连续内存块。 它的存在使程序员不需要知道或担心实际的物理地址规范。他们可以坐下来担心他们的程序逻辑或算法以及其他与机器无关的东西。
在任何读取或写入发生之前,这些虚拟地址被内存管理单元转换为实际的物理地址 (MMU)。具体来说,它是由 page table 完成的,它只是 MMU 的一部分。
除此之外 Paging 允许进行非连续内存分配,因此我们没有 external fragmentation。
如果你了解基础知识,这个话题就很简单了。我会在 youtube 上推荐 David Black-Schaffer 的视频。