存储器管理——内存管理的概念
操作系统负责的内存管理:
1.内存空间的分配与回收
2.从逻辑上扩充内存空间(游戏GTA的大小超过60GB,按理来说这个游戏程序运行之前需要把60GB数据全部放入内存。然而,实际我的电脑内存才4GB,但为什么这个游戏可以顺利运行呢?一虚拟技术(操作系统的虚拟性))
3.地址转换功能,逻辑地址→物理地址。地址重定位:逻辑地址到物理地址的转换过程
4.内存保护功能,保证各进程在各自存储空同内运行,互不干扰
地址转换:
绝对装入:编译时产生绝对地址(单道程序阶段,此时还没产生操作系统)
可重定位装入:装入时将逻辑地址转换为物理地址(用于早期的多道批处作系统)
动态运行时装入:运行时将逻辑地址转为物理地址,需设置重定位寄存器(现代操作系统)
内存保护的两种方法:
方法一:在CPU中设置一对上、下限寄存器,存放进程的上、下限地址。进程的指令要访问某个地址时,CPU检查是否越界。
方法二:采用重定位寄存器(又称基址寄存器)和界地址寄存器(又称限长寄存器)进行越界检查。重定位寄存器中存放的是进程的起始物理地址。界地址寄存器中存放的是进程的最大逻辑地址。