下载此文档

多道程序设计与内存管理.doc


文档分类:资格/认证考试 | 页数:约13页 举报非法文档有奖
1/13
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/13 下载此文档
文档列表 文档介绍
多道程序设计与内存管理.doc存储管理
多道程序设计与内存管理
是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制之下,相互穿插的运行。两个或两个以上程序在计算机系统中同处于开始到结束之间的状态。这就称为多道程序设计。多道程序技术运行的特征:多道、宏观上并行、微观上串行。
需要内存管理做更多的工作
需要支持地址重定位
程序中的地址不一定是最终的物理地址
在程序运行前无法计算出物理地址
因为不能确定程序被加载到内存什么地方
需要支持地址保护
进程间地址空间不能互访问
地址重定位
地址重定位:
将用户程序中的逻辑地址转换为运行时可由机器直接寻址的物理地址的过程
目的:保证CPU执行指令时可正确访问内存单元
逻辑地址(相对地址,虚拟地址)
用户程序经过编译、汇编后形成目标代码,目标代码通常采用相对地址的形式,其首地址为0,其余指令中的地址都相对于首地址而编址
不能用逻辑地址在内存中读取信息
物理地址(绝对地址,实地址)
内存中存储单元的地址,可直接寻址
静态地址映射(静态重定位):当用户程序被装入内存时,一次性实现逻辑地址到物理地址的转换,以后不再转换。(软件完成)
动态地址映射(动态重定位):在程序执行过程中要访问数据时再进行地址映射,即逐条指令执行时完成地址映射。(硬件地址映射机制)
基址寄存器(BR),在程序装入后,将其内存空间的起始地址 B 送入 BR,一旦遇到要访问地址的指令时,硬件便自动将其中的访问地址加上 BR 的内容形成世纪物理地址,然后按该地址执行。
存储共享、存储保护(防止地址越界、防止操作越权)
答:
存储共享是指两个或多个进程共用内存中相同区域,这样不仅能使多道程序动态地共享内存,提高内存利用率,而且还能共享内存中某个区域的信息。
包括: 代码共享和数据共享。代码共享的代码必须是纯代码!
目的:
1 通过代码共享节省内存空间
2 通过数据共享实现进程通信存储保护为多个程序共享内存提供保障,使在内存中的各道程序,只能访问它自己的区域,避免各道程序间相互干扰。特别是当一道程序发生错误时,不至于影响其他程序的运行,更要防止破坏系统程序。主要是硬件支持,软件配合实现的。
存储保护内容:
1 防止地址越界
2 防止操作越权
(对属于自己区域的信息,可读或写;对公共区域中允许共享的信息或获得授权可以使用的信息,可读而不可修改;对未授权使用的信息,不可读, 不可写)
一般由硬件提供一对寄存器:
基址寄存器:存放起始地址
界限寄存器:存放长度
或者是一对上界寄存器和下界寄存器
存储管理的基本目标
— 给进程分配内存——地址空间

— 往内存加载内容——映射进程地址空间到物理内存

— 管理共享的内存

— 最小化存储访问时间
内存
由存储单元(字节或字)组成的一维连续的地址空间,简称内存空间。用来存放当前正在运行程序的代码及数据,是程序中指令本身地址所指的、亦即程序计数器所指的存储器
系统区:用于存放操作系统
用户区:用于装入并存放用户程序和数据
存储管理的任务
(1)内存空间的管理、分配与回收
记住每个存储区域的状态(需要设置相应的非配表格,记录内存空间使用状态)
实施分配(分为静态非配和动态分配两种)
回收
为实现上述功能,必须引入分配表,统称为系统分配表,
组织方式有:
位示图表示法:用一位(bit)表示一个内存页面(0 表示空闲,1 表示占用)
空闲页面表:包括首页面号和空闲页面个数,连续若干的页面作为一组登记在表中;
空闲块链表:将所有空闲块链成一个链表
空闲区表、已分配区表:空闲块首址和空闲块长度,没有记录的区域即为进程所占用
静态分配:程序要求的内存空间是在目标模块连接装入内存是确定并分配的,并且在程序运行过程中不允许再申请或在内存中“搬家”,即分配工作是在程序运行前一次性完成。
动态分配:程序要求的基本内存空间实在目标模块装入时确定并分配的,但是程序运行过程中允许申请附加的内存空间或在内存中“搬家”,即分配工作可以在程序运行前及程序运行中逐步完成。
动态分配的好处:具有较大的灵活性;暂不使用的信息可以不进内存,对提高内存利用率大有好处;反映了程序的动态性,较之静态存储分配更为合理。
(2)内存共享
内存共享是指两个或多个进程共用内存中相同区域,这样不仅能使多道程序动态地共享
内存,提高内存利用率,而且还能共享内存中某个区域的信息。
包括:代码共享和数据共享。代码共享的代码必须是纯代码!
目的:
1 通过代码共享节省内存空间
2 通过数据共享实现进程通信
(3)存储保护
存储保护目的:
为多个程序共享内存提供保障,使在内存中的各道程序,只能访问它自己

多道程序设计与内存管理 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数13
  • 收藏数0 收藏
  • 顶次数0
  • 上传人lanyou1106
  • 文件大小1.46 MB
  • 时间2018-03-28