计算机内存寻址

CPU内存寻址:从逻辑到物理
本文介绍了计算机内存管理的段式和页式管理,详细阐述了80x86微处理器中逻辑地址、线性地址和物理地址的关系。逻辑地址经段式管理转换为线性地址,再通过页式管理转换为物理地址,涉及段描述符、全局/局部描述符表和页表等概念。

计算机管理内存的基本方式有两种:段式管理和页式管理。而在使用80x86微处理器时,内存地址分为三个不同的地址:逻辑地址,线性地址,物理地址。他们之间有什么关系,内存是如何寻址,本文主要介绍的就是内存寻址。

1、基本概念:

cpu段式管理:段式管理的基本原理是指把一个程序分成若干个段(segment)进行存储,每个段都是一个逻辑实体(logical entity)。一个用户作业或进程所包含的段对应一个二维线形虚拟空间,程序通过分段(segmentation)划分为多个模块,故可以对程序的各个模块分别编写和编译。段式管理程序以段为单位分配内存,然后通过地址影射机构把段式虚拟地址转换为虚拟地址。

cpu页式管理: 页式管理的基本原理将各进程的虚拟空间划分成若干个长度相等的页(一般为4K),页式管理把内存空间按页的大小划分成片或者页面(page frame),然后把页式虚拟地址与内存地址建立一一对应页表,并用相应的硬件地址变换机构,来解决离散地址变换问题。

逻辑地址:包含在机器语言指令中用来指定一个操作数或一条指令的地址,每个逻辑地址都由一个段和偏移量组成,表示为[段标识符:段内偏移量]。例如,在C/C++程序中我们使用指针对变量地址操作,该地址就是逻辑地址(准确的应该说是逻辑地址的段内偏移量)。对应上述段式管理,逻辑地址是段式管理转换前的程序地址。

线性地址:也称为虚拟地址,它是一个32位无符号整数,故可以用来表达高达4GB的地址。线性地址同逻辑地址一样也是不真实的地址。对应上述页式管理,线性地址是页式管理转换前的地址。

物理地址:用于内存芯片级内存单元寻址,与处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值