【Operating System】内存管理/分页机制,虚拟内存到实际物理地址的转换

来源:互联网 发布:mac长时间待机不休眠 编辑:程序博客网 时间:2024/06/16 18:34


内存管理/分页机制,虚拟内存到实际物理地址的转换

物理地址:内存单元的真正地址,编号从0开始,一直到最高端。

逻辑地址:CPU所生成的地址,是内部和编程使用的,不唯一。

[1]      分页机制:

是离散分配方式,避免内存中的碎片。将进程的逻辑地址空间分为若干大小相等的页面,也把内存分成很多块,然后把页面装到不连续的物理块中。

页的逻辑地址:页号(20bit)+页内地址(10bit)32位最多有1m页

页表:页号+块号 段表:段号+段长+基址

[2]      地址变换机构:

就是逻辑地址到物理地址的转换。当要访问逻辑地址中的数据时,分页地址变换机构把逻辑地址=页号+页内偏移

然后,页号去页表寄存器中,页号*页表长度,得到页表中的位置,然后找到对应的内存中的物理块号,然后根据业内偏移找到块内地址,即完成地址转换。

[3]      分段机制:

是为了方便程序员编程。和动态链接,以段为单位。

每个作业被分成若干段,主程序段、数据段、栈段、堆段。段的地址分为段号16位,段内地址16位。

[4]      段的地址变换机构

将逻辑地址(段号+段内地址)中的段号分离,去段报表中比较,找到在内存中的基址,然后加上段内地址,得到物理地址。


0 0
原创粉丝点击