linux分段和分页机制(逻辑地址、线性地址、物理地址)

       上一节我们介绍了段描述符,接下来开始讲比较重要的部分,linux分段和分页机制,在将这个机制之前,需要一些准备工作。
1、逻辑地址、线性地址、物理地址?
逻辑地址:包含在机器语言指令中用来指定一个操作数或一条指令的地址。
太难理解了。。。简单的理解是,一个逻辑地址由一个段和一个
偏移量组成,通常这样描述 段地址:偏移量。之前我们说过,在
实模式下,段地址就保存在段寄存器中;在保护模式下,段寄存
器中保存的是段描述符的索引。我们平时写程序时打印出来的地
址其实就是偏移量,也就是IP寄存器的值。

     线性地址 :也称为虚拟地址,在实模式下,线性地址=段地址左移4位+偏
移量。保护模式下如何转换我们待会再说。

     物理地址:这个很简单,就是内存条上的地址。

它们之间是什么关系呢?我们画一张图来解释

linux分段和分页机制(逻辑地址、线性地址、物理地址)_第1张图片
分段单元和分页单元都是硬件电路,内存管理单元(MMU)通过分段硬件电路把逻辑地址转化为线性地址,然后分页单元的硬件电路把线性地址转化为物理地址。
       今天稍微提一下这三种地址,后面还会介绍。

你可能感兴趣的:(linux内存管理)