内存41本章知识点-欢迎光临舟山广播电视大学

欢迎光临本店  时间:2021-03-19  阅读:()

41本章知识点-欢迎光临舟山广播

电视大学

第4章存储管理辅导与自测

4.1本章知识点

存储器是计算机系统中的关键资源对内存如何处理在很大程度上将影响整个系统的性能。存储管理即对内存的管理存储管理目前仍是人们研究操作系统的中心问题之一 以至操作系统的命名也往往取决于存储管理的策略。

本章的主要知识点为

1本章的重要概念

本章涉及到的概念比较多主要有内存、外存、逻辑地址/相对地址、物理地址/绝对地址、逻辑地址空间/地址空间、 内存空间/物理空间/绝对空间、重

定位、静态重定位、动态重定位、对换技术、碎片、紧缩、虚拟存储器、页面抖动。

存储器作为计算机系统中最主要的组成部分 按照速度、容量和成本划分一个层次结构分别是寄存器、高速缓存、 内存、磁盘和磁带。用户程序必须装入到内存才能运行。进程的地址空间不同于内存的物理空间。经过重定位可以把逻辑地址转变为内存的物理地址。重定位分为静态和动态两种方式现在的计算机系统中都采用动态重定位方法。

对换技术可以利用外存来解决内存不足的问题。现在Linux系统中还采用这种技术。

2分区管理技术

分区分配是为支持多道程序运行而设计的一种最简单的存储管理方式可分为固定分区法和动态分区法。 固定分区就是内存中分区的个数固定不变各个分区的大小也固定不变但不同分区的大小可以不同。每个分区只可装入一个进程。动态分区是在进程要进入内存时才建立的 使其大小恰好适应进程的大小。动态分区法常用的分配策略有两种最先适应算法First-fit和最佳适应算法Best-fit,前者空闲表按位置排列后者空闲表以空闲分区的大小为序。

具有固定大小分配单元的系统如MFT 具有固定任务数的多道程序设计或分页系统会产生内部碎片而具有可变大小分配单元的系统如MVT 具有可变任务数的多道程序设计  会出现外部碎片。

为了有效解决碎片问题实现的方法是移动某些已分配区的内容使所有进程的分区紧挨在一起而把空闲区留在另一端。这种技术称为紧缩。 采用紧缩技术的分区方法称为可重定位分区法。 动态重定位由硬件实现包括基址寄存器和限长寄存器对CPU生成的所有地址进行合法性检查并映像到物理地址。

3 分页技术

除了用紧缩技术解决碎片问题还可以使用分页技术 即允许程序的存储空间不一定连续 可以把一个进程分散地放在各个空闲的内存块中。

分页存储管理的基本方法是逻辑空间分页 内存空间分块块与页的大小相等。页连续而块离散用页号查页表 由硬件作转换。

分页存储管理可以实现页面的共享但是这样做并不实际 因为逻辑上相对完整的内容不见得存在于一个或几个完整的页面中段式存储管理更便于

共享 。此外还可以在页表中设置存取控制字段进行页面保护禁止非法访问。

4 虚拟存储管理

虚拟存储器是用户能作为可编址内存对待的虚拟存储空间它使用户逻辑存储器与物理存储器分离是操作系统给用户提供的一个比真实内存空间大得多的地址空间。

虚拟存储技术允许把大的逻辑地址空间映射到较小的物理内存上这样就提高了多道程序并发执行的程度增加了CPU的利用率。虚拟存储器的特性包括虚拟扩充、部分装入、离散分配和多次对换等。

使用虚拟存储技术的页式管理为请求分页式存储管理。它是根据实际程序执行的顺序动态申请存储块。并不是把所有页面都放入内存。对一个程序的第一次访问将产生缺页中断 转入操作系统进行相应处理。操作系统依据页表确定页面在外存上的位置然后找一个空闲块把该页面从外存上读到内存块中。 同时修改页表有关项目 以反映这种变化产生缺页中断的那条指令被重新启动执行。这种方式允许一个程序即使它的整个存储映像并没有同时在内存中 也能正确运行。只要缺页率足够

低其性能还是很好的。

请求分页可用来减少分配给一个进程的块数 这就允许更多进程同时执行而且允许程序所需内存量超出可用内存总量。

5常用页面置换算法

当总内存的需求量超出实际内存量时为释放内存块给新的页面需要进行页面置换。有各种页面置换算法可供使用。先进先出法FIFO是最容易实现的但性能不是很好。最佳置换法

OPT需要未来知识仅有理论价值。最近最少使用置换法L RU是OP T的近似算法但实现时要有硬件的支持和软件开销。最近未使用置换法

NUR是LRU的近似算法。

置换算法的好坏直接影响系统的性能。好的页面置换算法能够适当降低页面更换频率减少缺页率 尽量避免系统抖动”

6Linux系统的存储管理技术

Linux采用对换和请求分页存储管理技术 页面置换采用L RU算法。对换任务是由内核的对换守护进程kswapd完成 以保证系统中有足够的空闲内存页。 Linux系统采用三级页表的方式 以节省内存资源。采用位图和链表两种方法来管理内存

页。

4.2典型例题解析

【例1】在目标程序装入内存时一次性完成地址修改的方式是  .

A.静态重定位 B.动态重定位C•静态连接D.动态连接

答案A

分析回答这道题需要清楚静态重定位和动态重定位的不同。

静态重定位是在目标程序装入内存时 由装入程序对目标程序中的指令和数据的地址进行修改 即把程序的逻辑地址都改成实际的内存地址。对每个程序来说这种地址变换只是在装入时一次完成在程序运行期间不再进行重定位。 按照静态重定位方式一个程序A装入内存时的情况就变成图4.1所示的样子。

从图中可以看出经过静态重定位原100号单兀中的指令放到内存5100号单兀该指令中的相对地址500相应变成5500。 以后程序A执行时CPU是从绝对地址5500号单元中取出数据12345,装入到寄存器A中。

静态重定位的优点是无须增加硬件地址转换机构便于实现程序的静态连接。在早期计算机系统中大多采用这种方案。它的主要缺点是程序的存储空间只能是连续的一片区域而且在重定位之后就不能再移动这不利于内存空间的有效使用另外各个用户进程很难共享内存中的同一程序的副本。

图4.1静态重定位示意图

动态重定位是在程序执行期间每次访问内存之前进行重定位。这种变换是靠硬件地址变换机构实现的。通常采用一个重定位寄存器其中放有当前正在执行的程序在内存空间中的起始

地址而地址空间中的代码在装入过程中不发生变化。动态重定位的过程如图4.2所示。 这时操作对象的绝对地址就是重定位寄存器中的

内容+操作对象的相对地址

动态重定位的主要优点是程序占用的内存空间动态可变LOA也 A 5不00—必—连续存放在一处 比较容易实现几个进程对同一程序副本的共享使用。它的主要缺点是需要附1加2345的硬件支持增加了机器成本而且实现存储管理的软件算法比较复杂。

以现在一般计算机系统中都采用动态重定位方法。

【例2】动态分区分配按进程的需求量分配内存分区所以  。

A•分区的长度是固定的

免费注册宝塔面板账户赠送价值3188礼包适合购买抵扣折扣

对于一般的用户来说,我们使用宝塔面板免费版本功能还是足够的,如果我们有需要付费插件和专业版的功能,且需要的插件比较多,实际上且长期使用的话,还是购买付费专业版或者企业版本划算一些。昨天也有在文章中分享年中促销活动。如今我们是否会发现,我们在安装宝塔面板后是必须强制我们登录账户的,否则一直有弹出登录界面,我们还是注册一个账户比较好。反正免费注册宝塔账户还有代金券赠送。 新注册宝塔账户送代金券我们注册...

bluehost32元/月,2核2G/20GB空间,独立ip,新一代VPS美国云主机!

bluehost怎么样?bluehost推出新一代VPS美国云主机!前几天,BlueHost也推出了对应的周年庆活动,全场海外虚拟主机月付2.95美元起,年付送免费的域名和SSL证书,通过活动进入BlueHost中文官网,购买虚拟主机、云虚拟主机和独立服务器参与限时促销。今天,云服务器网(yuntue.com)小编给大家介绍的是新一代VPS美国云主机,美国SSD云主机,2核2G/20GB空间,独立...

DMIT$10.9/月,日本VPS/三网直连/1核1.5G内存/20GB存储/1Gbps端口

优惠码年付一次性5折优惠码:TYO-Lite-Open-Beta-1y-50OFF永久8折优惠码:TYO-Lite-Open-Beta-Recur-20OFF日本vpsCPU内存SSD流量带宽价格购买1核1.5G20 GB4 TB1Gbps$10.9/月购买2核2 G40 GB6 TB1Gbps$16.9/月购买2核4 G60 GB8 TB1Gbps$21.9/月购买4核4 G80 GB12 TB...

欢迎光临本店为你推荐
操作httpsns平台sns是什么平台阅读http抢米网抢小米手机需要下什么软件 速求tumblr上不去吃鸡更新完打不开,成这样了,怎么办在线等,挺急的如何发帖子怎么发表贴子?站点管理dreamweaver 合作制作网站站点如何管理店铺统计店铺运营数据分析,运营要看哪些店铺数据dz论坛DZ论坛Discuz论坛如何DIY门户首页和论坛首页邮件管理系统哪个邮件管理软件好?
哈尔滨域名注册 香港服务器租用99idc 鲨鱼机 天猫双十一秒杀 patcha 国内加速器 发包服务器 1g内存 最好的qq空间 metalink 我的世界服务器ip 存储服务器 websitepanel restart globalsign ftp是什么东西 iptables 挂马检测工具 neobux 电脑主机 更多