分页内存管理——虚拟地址到物理地址的转换

本文介绍了内存管理中的分页技术,旨在解决物理内存限制和外部碎片化问题。分页将虚拟内存和物理内存划分为大小相等的页面,通过页表进行地址翻译,由MMU负责处理。地址翻译过程中,若虚拟页面不在物理内存,则触发缺页中断,将所需页面从磁盘加载。页表不仅包含虚拟到物理地址的映射,还包含页面状态和保护信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引子:

这里写图片描述

这是逻辑地址(虚拟地址),包括程序中打印的变量地址显示的都是逻辑地址,并不是内存空间上的物理地址。

每条指令在被执行时,读取操作数时需要给出操作数所在的内存地址,这个地址不能是物理主存地址,因为该程序在哪种硬件设置的机器上运行并不能事前确定,那操作系统就不能在此给出对应于某台机器的物理地址

一、物理内存和虚拟内存

我们先来了解一下,什么是物理内存,什么又是虚拟内存?
1.物理内存:指通过物理内存条而获得的内存空间,主要作用是在计算机运行时为操作系统和各种程序提供临时储存。
2.虚拟内存:对内存架构(内存、缓存、硬盘)进行管理(内存管理系统)的一种手段。简单理解就是在硬盘上划分出一块区域作为内存使用。

2.1 对于用户:
计算机主要面向的是对操作系统等计算机知识几乎没有了解的普通大众,他们大多是不了解什么主存外存的,所以为了方便用户的使用,就有必要使得程序不管是位于内存架构的哪个层次,对于用户来说都是一样的。虚拟内存就是让内存管理实现媒介透明的手段

2.2 对于主存:
众所周知,一个程序要想运行,就必须加载到物理主存(内存)中,但是物理主存的容量是非常有限的,我们当然可以选择购买更大的物理主存,可是很费钱,那么还有没有什么办法可以在不明显增加成本的基础上扩大内存容量的呢?

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值