一、存储器管理
存储器管理的主要功能
存储器的层次
程序装入内存
静态重定位的特点是在一个作业装入内存时,必须分配其要求的全部内存空间,如果没有足够的内存,就不能装入该作业。此外,作业一旦进入内存后,在整个运行期间不能在内存中移动,也不能再申请内存空间。
四、覆盖与对换
覆盖技术:主要用在早期操作系统中(内存 <64KB),可用存储空间受限,某些大作业不能一次全部装入内存,产生了大作业与小内存的矛盾。这时把一个程序划分为一系列功能相对独立的程序段,让执行时不要求同时装入内存的程序段组成一组(称为覆盖段),共享主存的同一个区域,这种内存扩充技术就是覆盖
对换技术:是指将暂时不用的某个进程及数据(首先是处于阻塞状态优先级最低的)部分(或全部)从内存移到到外存(备份区或对换区)中去,让出内存空间,同时将某个需要的进程调入到内存中,让其运行。交换到外存的进程需要时可以被再次交换回(选择换出时间最久的)内存中继续执行。
对换的类型:1)整体对换:进程对换,使用中级调度。
2)部分对换:页面对换/分段对换,使用虚存存储。
对换空间的管理:具有对换功能的OS中,通常把外存分为文件区和对换区。前者用于存放文件,后者存放从内存换出的进程。对换区比文件区侧重于对换速度。因此对换区一般采用连续分配。
进程的换出换入:
1)选择换出进程:优先级,进程状态
2)选择换入进程:优先级,进程状态,换出时间等
覆盖与对换技术的区别:覆盖与对换技术是在多道环境下扩充内存的两种方法。覆盖与对换可以解决在小的内存空间运行大作业的问题,是“扩充”内存容量和提高内存利用率的有效措施。覆盖技术主要用在早期的OS中,对换技术则用在现代OS中。主要区别为:
1)覆盖可减少一个进程运行所需的空间。对换可让整个进程暂存于外存中,让出内存空间。
2)覆盖是由程序员实现的,操作系统根据程序员提供的覆盖结构来完成程序段之间的覆盖。对换技术不要求程序员给出程序段之间的覆盖结构。
3)覆盖技术主要在同一个作业或进程中进行。对换主要在作业或进程之间进行。
在存储管理中涉及到两个问题:
1、是否要把作业全部(一次性)装入内存,分为两种:
采用全部装入和连续分配,进程执行时速度快、效率高,采用部分装入和非连续分配都是为了进一步提高内存的利用率,使有限的内存装入更多更大的作业。
一、单一连续分区存储管理的基本原理
是一种最简单的存储管理方式,在早期的单道批处理系统中使用这种管理方案。
2)内核态(系统态/管态)与用户态(目态)工作:如果当前在用户态下工作,内存访问时对硬件进行校验,以保证系统区不被访问,如果系统区被访问则产生中断,控制权交给操作系统。在内核态下工作,能访问整个存储空间。用户态是用户进程的工作方式,而系统态是系统进程的工作方式。
3)不做特别管理:如MS-DOS等单用户单任务微机操作系统。
三、单一连续分区存储管理的管理特点
管理简单。容易记住存储器的状态,不是全部空闲就是全部已分配;当作业被调度时就获得全部用户空间;全部主存空间都分配给一个作业使用;作业运行完后,全部主存空间又恢复成空闲(以上所指的全部主存空间是用户区空间)。
资源利用率低。存储器没有得到充分利用,作业的大小与存储器的可用空间的大小不一定一致,作业的全部信息都装入主存,占用主存空间。处理机的利用率较低,因为是单道处理,一旦一个作业提出I/O请求,则CPU空闲。
一、固定分区存储管理的基本原理
用户空间划分为几个分区,便允许有几道作业并发运行。当有一空闲分区时,便可以从外存的后备作业队列中选择一个适当大小的作业装入该分区,当该作业结束时,又可再从后备作业队列中找出另一作业调入该分区。
实际上每一个分区就相当于一个单用户连续分配区间。
固定分区分配很少用于现在的操作系统中,但在某些用于控制多个相同对象的控制系统中仍发挥着一定的作用。
二、固定分区的分区划分
三、固定分区中主存空间的分配与回收
主存空间分配:当有用户作业要装入内存时,便检索该表,以找到合适的分区给予分配,并将其状态置为“已分配”;未找到合适分区则拒绝为该用户作业分配内存。
固定分区存储管理实际中可采用可重定位装入(静态重定位)方式,也可采用运行时动态装入(动态重定位)方式
五、固定分区中的管理特点
作业长度不能大于分区的大小,一个分区只能装入一个作业,一个作业只能装入一个分区。
无外部碎片,有内部碎片(一个分区会有剩余空间),作业大小比分区大小越小时,内部碎片越大,空间比较浪费。
分区的数量限制了作业的个数。
一、可变分区存储管理的基本原理
可变分区分配是一种动态划分内存的方法。这种方法不预先将内存划分分区,而是在作业装入内存时,根据作业大小动态进行内存分配,并使分配的内存空间大小正好适合进程的需要。在不断的分配回收过程中,系统中分区的大小和数目是不断变化的。
动态分区在开始分配时是比较好的,但随着时间的推移,内存中可能会产生越来越多的小的空闲内存块,内存利用率下降。这些小的空闲内存块称为外部碎片,与固定分区中的内部碎片正好相对。
克服外部碎片可以通过紧凑技术来解决,就是系统对进程进行移动和整理。这需要动态重定位的支持,比较费时。紧凑的过程实际上类似于Windows系统中的磁盘整理,只不过后者是对外存空间的紧凑。
二、可变分区存储管理的主存空间分配与回收
因篇幅问题不能全部显示,请点此查看更多更全内容