内存管理的概念

1.内存空间的分配与回收

操作系统负责内存空间的分配与回收。

2.内存空间的扩充

操作系统需要提供某种技术从逻辑上对内存空间进行扩充。(实现虚拟性)

3.地址转换

操作系统需要提供地址转换功能,负责程序的逻辑地址与物理地址的转换。

为了使编程更方便,程序员写程序时应该只需要关注指令、数据的逻辑地址。
逻辑地址到物理地址的转换(这个过程称为地址重定位)应该由操作系统负责,
这样就保证了程序员写程序时不需要关注物理内存的实际情况。

1.三种装入方式

  • 绝对装入:编译时产生绝对地址。(单道程序阶段,此时还没产生操作系统)
  • 可重定位装入:装入时将逻辑地址转换为物理地址。(用于早期的多道批处理操作系统)
  • 动态运行时装入:运行时将逻辑地址转换为物理地址,需设置重定位寄存器。 (现代操作系统)

4.存储保护

操作系统需要提供内存保护功能。
保证各进程在各自存储空间内运行,互不干扰。
内存管理的概念_第1张图片

1.内存保护可采取两种方法:

1.方法一:在CPU中设置一对上、下限寄存器,存放进程的上、下限地址。
进程的指令要访问某个地址时,CPU检查是否越界。
内存管理的概念_第2张图片
2.方法二:采用重定位寄存器(又称基址寄存器)和界地址寄存器(又称限长寄存器)进行越界检查。
重定位寄存器中存放的是进程的起始物理地址。
界地址寄存器中存放的是进程的最大逻辑地址。

内存管理的概念_第3张图片

你可能感兴趣的:(操作系统,服务器,linux,运维)