第三章 内存管理[1].ppt
《第三章 内存管理[1].ppt》由会员分享,可在线阅读,更多相关《第三章 内存管理[1].ppt(69页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章第三章内存管理内存管理(1)(1)内存管理内存管理l目的与要求:掌握程序处理基本过程中内存管理相目的与要求:掌握程序处理基本过程中内存管理相关环节的概念及内存管理的各种方法与技术。关环节的概念及内存管理的各种方法与技术。l重点与难点:重定位的基本概念,动态分区分配方重点与难点:重定位的基本概念,动态分区分配方式、分段和分页存储管理方式、虚拟存储器等主要式、分段和分页存储管理方式、虚拟存储器等主要内存管理方式的相关概念及关键技术。内存管理方式的相关概念及关键技术。l作业:作业:2,3,4,5,6,7,8,10,11,15,17,18第三章存储器管理3.1 3.1 存储器的层次结构存储器的层
2、次结构3.2 3.2 程序的装入和链接程序的装入和链接 3.3 3.3 连续分配方式连续分配方式 3.1.1 3.1.1 存储器的层次结构存储器的层次结构1.1.存储器的层次结构存储器的层次结构 在现代计算机系统在现代计算机系统中,存储器是信息外理中,存储器是信息外理的来源与归宿,占据重的来源与归宿,占据重要位置。但是,在现有要位置。但是,在现有技术条件下,任何一种技术条件下,任何一种存储装置,都无法同时存储装置,都无法同时从速度与容量两方面,从速度与容量两方面,满足用户的需求。实际满足用户的需求。实际上它们组成了一个速度上它们组成了一个速度由快到慢,容量由小到由快到慢,容量由小到大的存储装置
3、层次。大的存储装置层次。存储器的层次结构存储器的层次结构 2.2.各种存储器各种存储器l高速缓存高速缓存CacheCache:少量的、非常快速、昂贵、易变的少量的、非常快速、昂贵、易变的l内存内存RAMRAM:若干兆字节、中等速度、中等价格、易变的若干兆字节、中等速度、中等价格、易变的 l 磁盘:磁盘:数百兆或数千兆字节、低速、价廉、不易变数百兆或数千兆字节、低速、价廉、不易变的的 l由操作系统协调这些存储器的使用由操作系统协调这些存储器的使用 3.1.2 3.1.2 存储管理的目的存储管理的目的l内存分配l使各得其所、提高利用率及适应动态增长要求l连续分配/离散分配方式l地址映射l逻辑地址转
4、换为物理地址,与分配方式相关l内存保护l基于地址的保护、存取访问控制保护l内存扩充l对换技术、虚拟存储技术 3.1.3.3.1.3.基本概念基本概念1.1.定定位位(存存储储分分配配):为为具具体体的的程程序序和和数数据据等等分配存储单元或存储区工作。分配存储单元或存储区工作。2.2.映映射射:把把逻逻辑辑地地址址转转换换为为相相应应的的物物理理地地址址的的过程。过程。3.3.隔隔离离:按按存存取取权权限限把把合合法法区区与与非非法法区区分分隔隔,实现存储保护。实现存储保护。4.名空间l程序员在程序中定义的标识符程序员在程序中定义的标识符l程序符号集合程序符号集合l由程序员自定义由程序员自定义
5、l没有地址的概念没有地址的概念符号指令数据说明I/O说明 5.5.地址空间地址空间l程序用来访问信息所用地址单元的集合程序用来访问信息所用地址单元的集合l逻辑(相对)地址的集合逻辑(相对)地址的集合l由编译程序生成由编译程序生成6.6.存储空间存储空间l主存中物理单元的集合主存中物理单元的集合l物理(绝对)地址的集合物理(绝对)地址的集合l由装配程序等生成由装配程序等生成地址映射地址映射LoadA2003456。1200物理地址空间物理地址空间LoadAdata1data13456源程序源程序LoadA20034560100200编译编译连接连接逻辑地址空间逻辑地址空间BA=1000名空间 地
6、址空间 存储空间7.7.逻辑地址与物理地址逻辑地址与物理地址l逻辑地址逻辑地址(相对地址,虚地址)(相对地址,虚地址):用户的程序经过汇编或编译后形成目标代码,用户的程序经过汇编或编译后形成目标代码,目标代码通常采用相对地址的形式,其首地目标代码通常采用相对地址的形式,其首地址为址为0 0,其余指令中的地址都相对于首地址而,其余指令中的地址都相对于首地址而编址。编址。不能用逻辑地址在内存中读取信息不能用逻辑地址在内存中读取信息l物理地址物理地址(绝对地址,实地址)(绝对地址,实地址)内存中存储单元的地址,可直接寻址内存中存储单元的地址,可直接寻址8.8.存储共享存储共享l内存共享:两个或多个进
7、程共用内存中相内存共享:两个或多个进程共用内存中相同区域同区域l目的:节省内存空间,提高内存利用率目的:节省内存空间,提高内存利用率l实现进程通信(数据共享)实现进程通信(数据共享)l共享内容:共享内容:代码共享,要求代码为纯代码代码共享,要求代码为纯代码 数据共享数据共享 9.9.存储保护与安全存储保护与安全保护目的:保护目的:为多个程序共享内存提供保障为多个程序共享内存提供保障,使在内使在内存中的各道程序存中的各道程序,只能访问它自己的区域,只能访问它自己的区域,避免各道程序间相互干拢,特别是当一道程避免各道程序间相互干拢,特别是当一道程序发生错误时序发生错误时,不致于影响其他程序的运不致
8、于影响其他程序的运行。通常由硬件完成保护功能,由软件辅助行。通常由硬件完成保护功能,由软件辅助实现。(特权指令不能完成存储保护。)实现。(特权指令不能完成存储保护。)1)1)存储保护存储保护l保护系统程序区不被用户侵犯(有意或无意保护系统程序区不被用户侵犯(有意或无意的)的)l不允许用户程序读写不属于自己地址空间的数不允许用户程序读写不属于自己地址空间的数据(系统区地址空间,其他用户程序的地址据(系统区地址空间,其他用户程序的地址空间)空间)2)2)保护过程保护过程-防止地址越界防止地址越界 每个进程都有自己独立的进程空间,每个进程都有自己独立的进程空间,如果一个进程在运行时所产生的地址在其如
9、果一个进程在运行时所产生的地址在其地址空间之外,则发生地址越界。即当程地址空间之外,则发生地址越界。即当程序要访问某个内存单元时,由硬件检查是序要访问某个内存单元时,由硬件检查是否允许,如果允许则执行,否则产生地址否允许,如果允许则执行,否则产生地址越界中断,由操作系统进行相应处理。越界中断,由操作系统进行相应处理。10.10.内存内存“扩充扩充”通过虚拟存储技术实现通过虚拟存储技术实现 l用户在编制程序时,不应该受内存容量限用户在编制程序时,不应该受内存容量限制,所以要采用一定技术来制,所以要采用一定技术来“扩充扩充”内存内存的容量,使用户得到比实际内存容量大的的容量,使用户得到比实际内存容
10、量大的多的内存空间多的内存空间l具体实现是在硬件支持下,软硬件相互协具体实现是在硬件支持下,软硬件相互协作,将内存和外存结合起来统一使用。通作,将内存和外存结合起来统一使用。通过这种方法把内存扩充,使用户在编制程过这种方法把内存扩充,使用户在编制程序时不受内存限制序时不受内存限制3.2程序的装入和链接程序程序处理基本过程处理基本过程内存装入模块装入装入程序程序链接链接程序程序编译编译程序程序源程序库目标模块符号名符号名空间空间目标地址目标地址空间空间统一的统一的目标地址目标地址空间空间物理地址物理地址空间空间布局?3.2.1 程序的装入1.绝对装入方式绝对装入方式 程程序序中中所所使使用用的的
11、绝绝对对地地址址,可可在在编编译译或或汇汇编编时时给给出出,也也可可由由程程序序员员直直接接赋赋予予。但但在在由由程程序序员员直直接接给给出出绝绝对对地地址址时时,不不仅仅要要求求程程序序员员熟熟悉悉内内存存的的使使用用情情况况,而而且且一一旦旦程程序序或或数数据据被被修修改改后后,可可能能要要改改变变程程序序中中的的所所有有地地址址。因因此此,通通常常是是宁宁可可在在程程序序中中采采用用符符号号地地址址,然然后后在在编编译译或或汇汇编编时时,再再将将这这些些符符号号地地址址转转换换为绝对地址。为绝对地址。l绝对装入模块及绝对装入方式绝对装入模块及绝对装入方式2.可重定位装入方式可重定位装入方
12、式 l静态可重定位装入方式和动态可重定位装入方式静态可重定位装入方式和动态可重定位装入方式l如果在程序装入时一次性地完成程序中所有地如果在程序装入时一次性地完成程序中所有地址敏感指令及数据的地址修正且以后不再改变,址敏感指令及数据的地址修正且以后不再改变,则称对应的地址变换为则称对应的地址变换为静态重定位。静态重定位。l如果在程序装入时并不进行由相对地址到绝对如果在程序装入时并不进行由相对地址到绝对地址的转换过程,而是伴随程序执行进展来逐地址的转换过程,而是伴随程序执行进展来逐步进行程序中相关地址敏感指令及数据的地址步进行程序中相关地址敏感指令及数据的地址修正,则称对应的地址变换为修正,则称对
13、应的地址变换为动态重定位动态重定位。l静态可重定位装入方式并不允许程序在装静态可重定位装入方式并不允许程序在装入之后的运行过程中发生内存位置的移动入之后的运行过程中发生内存位置的移动l动态可重定位装入方式及动态重定位过程动态可重定位装入方式及动态重定位过程通常需要一定的硬件机构支持以使地址转通常需要一定的硬件机构支持以使地址转换不影响指令执行速度换不影响指令执行速度3.动态运行时装入方式 动动态态运运行行时时的的装装入入程程序序,在在把把装装入入模模块块装装入入内内存存后后,并并不不立立即即把把装装入入模模块块中中的的相相对对地地址址转转换换为为绝绝对对地地址址,而而是是把把这这种种地地址址转
14、转换换推推迟迟到到程程序序真真正正要要执执行行时时才才进进行行。因因此此,装装入入内内存存后后的的所所有有地地址址都都仍是相对地址。仍是相对地址。l运行时链接装入模块及运行时链接装入方式运行时链接装入模块及运行时链接装入方式 3.2.2 3.2.2 程序的链接程序的链接程序链接示意图1.静态链接方式2.装入时动态链接装入时动态链接方式有以下优点:装入时动态链接方式有以下优点:(1)便于修改和更新。便于修改和更新。(2)(2)便于实现对目标模块的共享。便于实现对目标模块的共享。3.运行时动态链接这这种种链链接接方方式式是是将将对对某某些些模模块块的的链链接接推推迟迟到到执执行行时时才才执执行行,
15、即即,在在执执行行过过程程中中,当当发发现现一一个个被被调调用用模模块块尚尚未未装装入入内内存存时时,立立即即由由OS去去找找到到该该模模块块并并将将之之装装入入内内存存,把把它它链链接接到到调调用用者者模模块块上上。凡凡在在执执行行过过程程中中未未被被用用到到的的目目标标模模块块,都都不不会会被被调调入入内内存存和和被被链链接接到到装装入入模模块块上上,这这样样不不仅仅可可加加快程序的装入过程,而且可节省大量的内存空间。快程序的装入过程,而且可节省大量的内存空间。3.2.3 3.2.3 重定位重定位 把把作作业业地地址址空空间间中中使使用用的的逻逻辑辑地地址址变变换换成成内内存存空空间间中中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三章 内存管理1 第三 内存 管理
限制150内