内存管理
概念:操作系统对内存进行合理的划分和有效的动态分配 功能:(1)内存空间分配与回收 (2)内存扩充 (3)地址转换 (4)内存保护 内存管理方式:(1)连续分配:为一个用户程序分配一个连续的内存空间 (2)非连续分配:可以将一个程序分散的装入内存 内部碎片:内存空间已经分配出去,但没有被使用的内存空间 外部碎片:内存空间没有分配出去,因为大小空间不足而产生的外部内存空间
一、连续分配管理
1.单一连续分配
内存分为用户区和系统区 有内部碎片,无外部碎片 只能用于单用户、单任务的操作系统中
2.固定连续分配
可分为大小相等或大小不等的内存空间 有内部碎片,无外部碎片 可用于多道程序的操作系统中
3.动态分区分配(可变分区分配)
1)首次适应算法:空闲分区以地址递增的次序链接 2)最佳适应算法:空闲分区以容量递增的次序链接(最容易产生内存碎片) 3)最坏适应算法:空闲分区以容量递减的次序链接 4)临近适应算法:分配内存从上次开始查找结束的位置开始
无内部碎片,有外部碎片
二、非连续分配管理
1.基本分页存储管理 把主存空间划分成大小相等固定的块,作为主存的基本单位。每个进程也已块为基本单位划分 主存进程分配的空间的最后一个块没有用完,还有剩余时,会产生内部碎片 前一部分为页号,后一部分为页内偏移量。例如:长度为32位的逻辑地址,每页大小为4KB = 212,即页内地址位数为12位,页号为20位,即有220页。
逻辑地址转为物理地址的过程
|