操作系统的存储管理

Posted 静Yu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了操作系统的存储管理相关的知识,希望对你有一定的参考价值。

操作系统的存储管理
注意! 此处的存储管理,指的是主存(内存)空间的分配!

一、计算机存储器的层次

⑴寄存器 :在物理上与处理器的运算控制部分同在一个芯片,与运算部分的距离最近,访问速度最高,但也因此其容量不会太大。所以,它们主要被用来暂存一些中间数据或控制用的特殊数据,而不能存放像程序之类的大批数据。
⑵主存储器 用来存放程序和程序运行所需的数据,其容量是衡量一个计算机系统性能的主要指标之一。它的访问速度远低于寄存器,所以常在主存储器和寄存器之间配置高速缓存,以存放处理器当前常用的程序模块和数据。

二、存储空间的段页式分区

与需要占用存储空间的数据规模相比,以存储单元作为分配单位则显得过于细微,一个最直接的方法就是对整个存储空间进行分区。在计算机技术中,存储器中的一个分区叫做一页,Linux系统的一页通常是4KB大小。

⑴存储空间的分页

所谓分页,就是把整个主存分成为大小相等的若干区 ,对所有的页从0开始依次命名一个页码 。分页之后,就可以以页为单位为程序实体分配存储空间。

⑵存储空间的分段

因为应用程序一般都采用结构化程序设计的方法,即把程序分为主程序、子程序以及各种数据结构(数组、堆栈、队列、文件等)等模块的形式,而且模块之间存在着各种逻辑关系,所以为了清楚地表达这种逻辑关系,把分配给一个模块的多个页叫做一个段。比“页”更大的存储结构叫做“段”,段是一种具有逻辑意义的存储分区,在存储管理中把分配给一个模块的多个页叫做一个段。

⑶存储空间段页式划分

将分段和分页两种方法结合起来应用到存储空间的划分,即把存储空间划分成由页组成的若干个段,其地址结构由段号 、段内页码和页内偏移量三部分组成。

三、虚拟存储器

⑴应用程序在运行之前没有必要将之全部装入内存,而仅须将那些当前要运行的少数页面或段先装入内存便可运行,其余部分暂留在磁盘上。
⑵从用户角度来看:当用户看到自己的程序能在系统中正常运行时,他会认为,该系统所具有的内存容量一定比自己的程序大,或者说,用户所感觉到的内存容量会比实际内存容量大得多。但用户所看到的大容量只是一种错觉,是虚的,故人们把这样的存储器称为虚拟存储器。
⑶把处理器所提供的地址空间叫做虚拟地址空间,把真正的实际配备的内存所提供的地址空间叫做物理地址空间。

以上是关于操作系统的存储管理的主要内容,如果未能解决你的问题,请参考以下文章

操作系统:存储管理概述

存储管理

?存储管理

存储管理

计算机操作系统-第四章:存储器管理

存储器