首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
操作系统-存储管理
时间:
2020-10-31 02:22:31
阅读:
8
评论:
0
收藏:
0
[点我收藏+]
标签:
链接
先进先出
大小
开始
运行
实现
符号
计算机系统
地址
基本概念
地址空间
名空间
:程序中
由符号名组成的空间
称之为名空间。
逻辑地址空间
:指地址的集合。程
序经编译连接之后的编制是相对地址
,以0为基址。
相对地址也称为逻辑地址或虚拟地址
,逻辑地址的集合称为逻辑地址空间,简称地址空间。
存储空间
:
计算机系统实际的内存地址是绝对地址
,亦称为物理地址或者实地址。地址的集合称为物理地址空间,亦称为存储空间。
地址重定位
地址重定位:将程序的
逻辑地址转化为主存的物理地址
。该工作由操作系统中的
装入程序Loader和地址重定位机构
来完成。分为
静态重定位、动态重定位
。
实存管理
分页存储管理
在分页存储管理系统中,将逻辑地址划分为若干大小相等的片,称为页面或页,相应的,主存空间也分为跟页一样大小的片,称为物理块或者页框。
快表
快表是用来保持当前访问频率高的少数活动页的页号、对应页框号及其它信息的相联存储器。
分段存储管理
在分段存储管理中,作业的地址空间被分为若干个大小不必相等的段,每个段定义了一组逻辑信息。其地址结构是二维的。
分段系统中地址变换的过程如下:
虚存管理
局部性原理
局部性原理
:程序在执行时,在
一段时间内
,程序的执行
仅局限于
某个特定的部分;相应的,其访问的
存储空间也局限于某个区域
内。程序的
局限性
表现在
时间局限性和空间局限性
两个方面。
时间局限性
:如果
程序中的某一条指令一旦
执行,则不久以后该指令
可能再次
被执行;如果某个数据结构被访问,则不就之后它可能
再次被访问
。
空间局限性
:一旦程序访问了
某个存储
单元,在不久之后,其
附近
的存储单元也被访问。即程序在一段时间内所访问的地址,
可能集中在一定范围内,其典型情况是程序顺序执行
。
虚拟存储器的定义
基于
局部性
原理,一个作业在运行之前,没必要全部装入内存,而仅将那些
当前要运行的那部分页面或段装入内存
便即可启动,其余部分可暂时留在磁盘了。
程序运行时,若要访问的页(段)已在内存,则
继续执行下去
;若不在,则要利用
OS的请求调页(段)的功能将缺页(段)调入主存
。
若在调入过程中,发现内存已满,就得
利用页(段)的置换
功能,将主存中暂时不用的页(段)调出到外存,腾出空间将需要的页(段)装入。
这样就可以使一个
大的用户程序
在
较小的内存空间
中运行;也可使内存中同时装入更多的进程
并发执行
。从用户的角度来看,
该系统所具有的内存容量比实际容量大得多,因此,称其为虚拟存储器
。
分页虚拟存储器
分页虚拟存储器亦称请求分页系统,它是在前述管理实存的分页系统上,增加了请求调页功能和页面置换功能的虚拟存储系统。
最佳页面置换算法
选择那些永不使用,或者是在最长时间内不再被访问的页面置换出去,这是一种理论上的算法,因为人们不可能确定下一步到底使用哪个页面。最佳替换算法OPT在现实中不能实现,只是作为评价其他置换算法的标准。
最近最久未使用置换算法
最近最久未使用置换算法LRU,选择近期最久未用的页面予以淘汰,系统在每个页面设置一个访问字段,记录这个页面自上次被访问以来所经历的时间T,当要选择页面淘汰时,就选T最大的那个页面。
先进先出置换算法
先进先出置换算法FIFO,选择最先调入内存的页面予以淘汰。在内存页表中设置一个计数器,每当有一个页面装入内存,就让该页面的计数器清零,而其他已经装入到主存的页面的计数器加1,在需要替换页时,选择计数器值最大的淘汰即可。亦可将调入内存的页面按先后次序链接成一个队列,每次淘汰队首页面即可,该算法会发生贝来迪异常现象。
最近未用置换算法
最近未用置换算法NUR是一种LRU近似算法,在每个页面设置一个访问为,将内存中所有页面按照调入内存的先后次序连接成一个循环队列。当某页被访问时,将该页访问位置1。在选择某一页淘汰时,就从队头开始,依次检查各页面的访问位,如果是0就将选择该页换出;若为1,则重新置0,并暂不换出,接着队头指针加1检查下一个页面,直到找到一个访问位为0的页面为止。
操作系统-存储管理
标签:
链接
先进先出
大小
开始
运行
实现
符号
计算机系统
地址
原文地址:https://www.cnblogs.com/dankon/p/13903986.html
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!