什么主要管理计算机内存的分配保护和扩充,第五章 计算机内存管理.pdf

《计算机内存管理》

计算机内存管理策略

【摘要】本文从计算机的硬件结构和运行机理出发,导出计算机内存管理的重要性,并提出

内存管理所要包含的4 个方面内容。然后以操作系统发展历史为主线,对单一连续分区存储

管理、固定分区存储管理、可变分区存储管理、分页式存储管理、分段式存储管理5 中内存

管理方案进行分析,详细地介绍了各种管理策略具体实现以及各自的优劣。

在操作系统出现之前,程序曾经是存储在卡片上,计算机每读取一张卡片就

执行一条指令,程序的执行过程是直接从卡片到执行。这种从外部存储媒介上直

接执行指令的做法效率极其低下,而且灵活性较差。为了解决这一问题,人们想

到将需要运行的程序预先加载到内部存储器,再自动从内部存取器读取指令并执

行,从而提高计算机的效率与灵活性。这一想法导致计算机硬件系统和软件系统

都发生革命性的变化。

目前计算机硬件系统一般由处理机、存储系统和输入输出(I/O)系统构成。

其中存储系统用于存取包括程序代码和数据在内的各种信息,起到缓解负责执行

程序的处理器与实现程序输入/输出系统之间速度严重不匹配的矛盾。出于功用、

性能、价格等方面的考虑,计算机存储系统并不是一个单独的存储器件,而是由

不同的存储介质构成的一个复杂的多层次的存储体系,包括高速缓存、内存和外

存。高速缓存的由硬件寄存器组构成,其特点是速度最快、价格高、容量小,一

般用于存放高频指令与数据;外存容量最大,价格也最低,但是读取速度相对很

慢,主要用来存放程序的所有代码与数据,是程序与数据的持久完整集合;内存

速度比高速缓存慢,但是比外存又快很多量级,价格适中,容量高于缓存而低于

外存,用来存放操作系统内核、用户程序指令与程序运行所需数据,程序运行时,

CPU 直接从内存读取指令和数据。尽管内存速度与处理器速度有一定差距,但是

这种程序执行的方式仍然极大地提高了计算机的运行效率。

冯·诺依曼体系的计算机都要求程序首先装入内存才能运行,能否合理地使

用内存很大程度上影响到整个计算机的正常运行以及系统性能。因此操作系统要

能够很好地管理计算机系统中的重要资源——内存,使得它按规则并被高效地使

- 1 -

《计算机内存管理》

用,这是操作系统的起码要求。1

计算机内存管理主要包括四个方面的内容:内存分配与回收、内存地址映

射、内存共享与保护和内存扩充。

内存分配与回收:内存分配主要是对将要驻留在内存中的每道程序和数据分

配一定的内存空间,每道程序都有自己专属的地址空间,同时要求程序在运行时

2

申请更多的地址空间,以满足数据段和程序段的可能动态增长的要求。 当程序

运行结束之后,就需要将之前分配给该程序的内存空间回收,以分配给其他程序

使用。

内存地址映射:从硬件层次来讲,内存时由一个一个的存储单元构成,每个

单元能被访问与否受到地址解码芯片的控制,每个存储单元对应一个唯一的地

址,该地址称为“绝对地址”或“物理地址”。要访问某个地址单元中的数据时,

需要CPU 向地址总线发出相应的地址信号,选中该存储单元。但是对于多道编程

的系统,计算机内存中同时转载了多个程序,程序员在编程之前根本无法预测程

序将会被装载到内存中的什么位置,就算是单道编程的系统也会因为硬件配置和

系统不同而装载位置不同。那么程序员编程时只能在一个相对的地址上进行编

程,称为“逻辑地址”或“虚地址”,并假设程序的首地址为 0,整个内存空间

中只有自己一个程序。那么在实际运行时,就要求操作系统能够根据程序的实际

转载位置和程序的虚拟地址计算出各条指令和数据的物理地址,这个翻译的过程

就是地址映射。

内存共享与保护:在多道编程的系统中,程序之间往往会存在着协作,或是

使用相同的程序代码,为了使程序之间能够进行交流,也为了节省内存空间,提

高内存利用率,多道程序有时需要能够访问同一个内存分区中的数据,使得这些

程序的物理空间出现了交叉的部分,这就是内存共享。同时,每道程序有自己私

有的空间,为保证程序运行的正确性,该部分空间不允许其他程序访问和修改,

这就需要内存保护,保证“私有财产神圣不可侵犯”。

内存扩充:这里所说的内存扩充

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值