存储管理
存储管理
进程调度算法能提高CPU的使用率和计算机对用户的响应速度,但是为了实现这一性能改进,必须将多个进程保存在内存中。
CPU通过寄存器、缓存和内存组成的存储层次取得指令和数据。如果数据位于外存,那么在CPU使用前必须先把数据移到内存中。
为了确保每个进程都有独立的内存空间,通过基地址寄存器(base register)和界限地址寄存器(limit register)可以确定进程可访问的合法地址和范围。
逻辑地址与物理地址
CPU所生成的地址为逻辑地址(logical address),而内存单元所看到的地址为物理地址(physical address)。
在这个重定位模型中,用户程序使用逻辑地址。访问内存时,相对于基地址寄存器进行重定位,将合法的逻辑地址转变为物理地址。
CPU · 逻辑地址346
重定位寄存器 · 基址+ 14000
内存 · 物理地址14346
互动实验
CPU的地址如何找到内存字节
访问权限PRO
PRO EXCLUSIVE探索不止于此
尊享 Pro 权益解锁完整互动实验、进阶解析与精选参考答案。
知识测验
题目
区域基址300040,长度120900字节,最后有效物理字节地址是多少?
动手练习
计算三个内存地址
一个进程从物理地址8000开始,占用1000个字节。地址以字节为单位。
基址 · 起点8000界限 · 字节数1000
- 填写下表:判断每个逻辑地址是否合法,合法时算出物理地址。
- 这个进程可以访问的最后一个物理字节地址是多少?
| 逻辑地址 | 是否在0~999内? | 物理地址 |
|---|---|---|
| 120 | ? | ? |
| 999 | ? | ? |
| 1000 | ? | ? |