内存管理中的内存分区和内存帧


0

所以,我正在阅读这些术语,并在阅读框架和页面后感到困惑。

  1. 使用Base和limit寄存器可以将内存划分为固定或动态分区,这些寄存器通常会遇到内部或外部碎片问题。每个分区只能拥有一个进程。

  2. 在处理页面期间,存储器(RAM)被分成固定大小的帧以保持进程的相同大小的页面。进程分为多个页面,许多内存框架都包含这些页面。

我的问题,是内存(RAM)分为分区{固定/动态}后来细分为框架,我混淆这些全部和内存分区概念是一个过时的概念和框架/页面是最新的概念,我混淆这两个彼此?


1
它仍然是最新的,你只是在混合东西。页面是虚拟概念,框架是物理计数器部分。并非所有这些过程都直接反映在物理内存中。作为示例,页面错误意味着页面当前不是“在帧中”/物理存储器中。
Seth

@Seth所以,内存首先划分为可以固定或动态的分区,以后将相同的内存分区进一步划分为帧,而将Process划分为由虚拟地址和表处理的Pages?在交换分区上没有虚拟内存的“OR”我们只有固定和动态大小的分区,但是当我们为VM分配交换分区时,会使用帧和页面概念吗?
Mani

Answers:


0

维基百科上的页面表有一个非常漂亮的图形可视化部分问题。这是页面上的第一个图形

进程的虚拟地址空间可能比您获得的任何物理内存都大很多。此地址空间中的数据显然必须在某个时刻映射到物理内存。内存管理单元(MMU)负责此操作。通过各种机制,它跟踪哪些页面(虚拟地址空间的片段)与哪些物理存储器帧相关。页面不一定必须与物理地址相关。如果是这种情况,您将收到页面错误,这意味着必须将特定页面从备用故事位置加载到物理内存中才能访问它。

虚拟地址空间始终从0开始。基址和限制寄存器用于定义应用程序可以使用的物理内存分区的开始和结束。如果您尝试访问的每个虚拟地址的基址寄存器为12345 12345被添加。

有关这方面的更多信息,请参见如何使用基址寄存器,限制寄存器和重定位寄存器?

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.