您的位置:首页 > 其它

为什么要有虚拟地址

2016-07-14 16:54 295 查看
说明:以下解释摘自汤小丹等人《计算机操作系统》(第三版)一书。

地址映射:

一个应用程序(源程序)经编译后,通常会形成若干目标程序;这些目标程序再经过连接便形成了可装入程序。这些程序的地址通常都是从“0”开始的,程序中的其它地址都是相对于起始地址计算的。由于这些地址所形成的地址范围称为“地址空间”,其中的地址被称为“逻辑地址”或者“相对地址”。此外,由内存中的一系列单元所限定的地址范围称为“内存空间”,其中的地址称为“物理地址”。

程序的地址范围:地址空间(其中的地址是逻辑地址)

内存的地址范围:内存空间(其中的地址是物理地址)

在多道程序环境下,每道程序不可能都从“0”开始装入(内存),这就致使地址空间内的逻辑地址和内存空间中的物理地址不相一致。为了使程序能够正确运行,存储器管理必须提供地址映射功能,以将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址。该功能在硬件的支持下完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  操作系统