1
第三章 x86 的虚拟存储系统
Linux 操作系统当前主要在 Intel 80386 、80486 和 Petium 系列机器上运行, 它们统称为 x86 机器。 x86 具有
两种存储器管理模式: 实地址模式 和 受保护的虚地址 模式,后者简称 保护模式 。在实地址模式下, CPU 只能寻
址 1MB 的内存空间。在保护模式下, x86 提供了实现虚拟存储的硬件机制, 它是操作系统实现多进程〔多进程〕
存储管理以及提供存储保护的硬件根底。
§3.1 80386 的虚拟地址空间
x86 的系统结构中专门设置了用于实现虚拟存储技术的硬件机制,即 分页 和分段 机制。各个进程的存储区
域彼此隔离, 每个进程都可以独立使用自己的虚拟地址空间 ,从而保证了进程的信息平安。
一. x86 的地址转换机制
程序代码和数据都是存放在内存储器中,内存储器又称 物理存储器 ,物理存储器是 CPU 可以直接访问的
存储空间。 80386 机器的地址总线为 32 位,由它确定的 物理地址空间的范围可达 2
32
字节,即 4G 字节 。
指令中访问存储空间的地址称为 逻辑地址 ,由逻辑地址确定的存储空间称为 逻辑地址空间 。x86 的逻辑地
址为 48 位,由它确定的逻辑地址空间可达 64T 字节。
逻辑地址必须转换成物理地址后才能访问物理存储器。 在 x86 中逻辑地址 由分段机制把逻辑地址转换成线性
地址 。再 由分页机制把线性地址转换成物理地址 。
二. 80386 的虚拟地址空间
x86 把虚拟地址空间分成性质不同的两局部: 全局地址空间 和局部地址空间 。全局地址空间是系统中 所有的进程
共享 的地址空间, 通常存放操作系统资源和数据。 局部地址空间由各个进程使用, 用于存储进程各自的代码和数
据等。 x86 分段机制对虚拟地址空间实行分段管理,把虚拟地址空间分成大小不同的存储段。一个段的空间最大
可达 2
32
字节,即 4GB。64TB 的虚拟地址空间最多可以分为 16 K 个段。其中全局地址空间和局部地址空间最多
可以各有 8K 个段,称为 全局段 和局部段 。
§ 段描述符表
评论0
最新资源