欢迎访问拔笔兔范文大全网!

操作系统内存管理知识

天下 分享 时间: 加入收藏 我要投稿 点赞

什么是内存管理?总的来说系统内存管理包括物理内存管理和虚拟内存管理。这里给大家分享一些关于操作系统内存管理知识,希望对大家能有所帮助。

物理内存管理概述:

操作系统负责内存空间的分配与回收

内存空间的扩展:操作系统需要提供某种技术从逻辑上对内存空间进行扩充

操作系统需要提供地址转换功能,负责程序的逻辑地址与物理地 址的转换

操作系统需要提供内存保护功能。保证各进程在各自存储空间内 运行,互不干扰

内存空间的扩展:

覆盖技术:将程序分为多个段(多个模块)。 常用的段常驻内存,不常用的段在需要时调入内存。内存中分为一个“固定区”和若干个“覆盖区”。 需要常驻内存的段放在“固定区”中,调入后就不再 调出(除非运行结束) 不常用的段放在“覆盖区”,需要用到时调入内存, 用不到时调出内存。

交换技术:交换(对换)技术的设计思想:内存空间紧张时,系统将内存中某些进程暂时换出外存,把外存中 某些已具备运行条件的进程换入内存(进程在内存与磁盘间动态调度)

于操作系统内存管理知识,希望对大家能有所帮助。

非连续分配管理方式

连续分配:为用户进程分配的必须是一个连续的内存空间。

非连续分配:为用户进程分配的可以是一些分散的内存空间。

什么是分页存储:

将内存空间分为一个个大小相等的分区(比如:每个分区4KB),每个分区就是一个“页框”(页框=页帧=内存块=物理 块=物理页面)。每个页框有一个编号,即“页框号”(页框 号=页帧号=内存块号=物理块号=物理页号),页框号从0开始。

将进程的逻辑地址空间也分为与页框大小相等的一个个部分, 每个部分称为一个“页”或“页面” 。每个页面也有一个编号, 即“页号”,页号也是从0开始。

操作系统以页框为单位为各个进程分配内存空间。进程的每个页面分别放入一个页框中。也就是说,进程的页面与内存的页 框有一一对应的关系。 各个页面不必连续存放,可以放到不相邻的各个页框中。

(注:进程的最后一个页面可能没有一个页框那么大。也就是 说,分页存储有可能产生内部碎片,因此页框不能太大,否则 可能产生过大的内部碎片造成浪费)

具有快表的地址变换机 构:

快表,又称联想寄存器(TLB, translation lookaside buffer ),是一种访问速度比内存快很多的高速缓存(TLB不是内存!),用来存放最近访问的页表项的副本,可以加速地址变换的速度。 与此对应,内存中的页表常称为慢表。

引入快表后,地址的变换过程:

① CPU给出逻辑地址,由某个硬件算得页号、页内偏移量,将页号与快表中的所有页号进行比较。

② 如果找到匹配的页号,说明要访问的页表项在快表中有副本,则直接从中取出该页对应的内存块 号,再将内存块号与页内偏移量拼接形成物理地址,最后,访问该物理地址对应的内存单元。因此, 若快表命中,则访问某个逻辑地址仅需一次访存即可。

③ 如果没有找到匹配的页号,则需要访问内存中的页表,找到对应页表项,得到页面存放的内存块 号,再将内存块号与页内偏移量拼接形成物理地址,最后,访问该物理地址对应的内存单元。因此, 若快表未命中,则访问某个逻辑地址需要两次访存(注意:在找到页表项后,应同时将其存入快表, 以便后面可能的再次访问。但若快表已满,则必须按照一定的算法对旧的页表项进行替换)

局部性原理:

时间局部性:如果执行了程序中的某条指令,那么不久后这条指令很 有可能再次执行;如果某个数据被访问过,不久之后该数据很可能再 次被访问。(因为程序中存在大量的循环)

空间局部性:一旦程序访问了某个存储单元,在不久之后,其附近的 存储单元也很有可能被访问。(因为很多数据在内存中都是连续存放 的)

分段存储管理方式:

进程的地址空间:按照程序自身的逻辑关系划分为若干个段,每个段都有一个段名(在低级语言 中,程序员使用段名来编程),每段从0开始编址 内存分配规则:以段为单位进行分配,每个段在内存中占据连续空间,但各段之间可以不相邻。

分段、分页管理的对比:

页是信息的物理单位。分页的主要目的是为了实现离散分配,提高内存利用率。分页仅仅是系统管 理上的需要,完全是系统行为,对用户是不可见的。

段是信息的逻辑单位。分段的主要目的是更好地满足用户需求。一个段通常包含着一组属于一个逻辑模块的信息。分段对用户是可见的,用户编程时需要显式地给出段名。

页的大小固定且由系统决定。段的长度却不固定,决定于用户编写的程序。

分页的用户进程地址空间是一维的,程序员只需给出一个记忆符即可表示一个地址。

分段的用户进程地址空间是二维的,程序员在标识一个地址时,既要给出段名,也要给出段内地址。

分段比分页更容易实现信息的共享和保护。不能被修改的代码称为纯代码或可重入代码(不属于临 界资源),这样的代码是可以共享的。可修改的代码是不能共享的。

虚拟内存管理

传统存储管理方式的特征、缺点:

一次性:作业必须一次性全部装入内存后才能开始运行。这会造成两个问题:

①作业很大时,不能全 部装入内存,导致大作业无法运行;

②当大量作业要求运行时,由于内存无法容纳所有作业,因此只 有少量作业能运行,导致多道程序并发度下降。

驻留性:一旦作业被装入内存,就会一直驻留在内存中,直至作业运行结束。事实上,在一个时间段 内,只需要访问作业的一小部分数据即可正常运行,这就导致了内存中会驻留大量的、暂时用不到的 数据,浪费了宝贵的内存资源。

虚拟内存的定义和特征:

基于局部性原理,在程序装入时,可以将程序中很快 会用到的部分装入内存,暂时用不到的部分留在外存, 就可以让程序开始执行。

在程序执行过程中,当所访问的信息不在内存时,由 操作系统负责将所需信息从外存调入内存,然后继续 执行程序。

若内存空间不够,由操作系统负责将内存中暂时用不 到的信息换出到外存。

在操作系统的管理下,在用户看来似乎有一个比实际 内存大得多的内存,这就是虚拟内存

虚拟内存有三个主要特征:

多次性:无需在作业运行时一次性全部装入内存,而是允许被分成多次调入内存。

对换性:在作业运行时无需一直常驻内存,而是允许在作业运行过程中,将作业换 入、换出。

虚拟性:从逻辑上扩充了内存的容量,使用户看到的内存容量,远大于实际的容量。


操作系统内存管理知识相关文章:

★ 全国统考计算机真题及答案解答

★ c语言学习心得

★ 电脑学习

★ 如何合理设置电脑虚拟内存,提高电脑运行速度

★ BIOS常见字母对照表附带解释

★ 关于毕业软件专业实习报告范文大全

★ 2020疫情期间各行业总结范文五篇

★ linux实习心得范文

★ 最新计算机实训心得体会5篇

★ 关于最新计算机电脑维修专业实习报告总结{范文}

精选图文

信息流广告 网络推广 周易 易经 代理招生 二手车 网络营销 招生代理 旅游攻略 非物质文化遗产 查字典 精雕图 戏曲下载 抖音代运营 易学网 互联网资讯 成语 成语故事 诗词 工商注册 注册公司 抖音带货 云南旅游网 网络游戏 代理记账 短视频运营 在线题库 国学网 知识产权 抖音运营 雕龙客 雕塑 奇石 散文 自学教程 常用文书 河北生活网 好书推荐 游戏攻略 心理测试 好做题 石家庄人才网 考研真题 汉语知识 心理咨询 手游安卓版下载 兴趣爱好 网络知识 十大品牌排行榜 商标交易 单机游戏下载 短视频代运营 宝宝起名 范文网 电商设计 职业培训 免费发布信息 服装服饰 律师咨询 搜救犬 Chat GPT中文版 经典范文 优质范文 工作总结 二手车估价 实用范文 爱采购代运营 古诗词 衡水人才网 石家庄点痣 养花 名酒回收 石家庄代理记账 女士发型 搜搜作文 石家庄人才网 铜雕 词典 围棋 chatGPT 读后感 玄机派 企业服务 法律咨询 chatGPT国内版 chatGPT官网 励志名言 河北代理记账公司 文玩 朋友圈文案 语料库 游戏推荐 男士发型 高考作文 PS修图 儿童文学 买车咨询 工作计划 礼品厂 舟舟培训 IT教程 手机游戏推荐排行榜 暖通,电采暖, 女性健康 苗木供应 主题模板 短视频培训 优秀个人博客 包装网 创业赚钱 养生 民间借贷律师 绿色软件 安卓手机游戏 手机软件下载 手机游戏下载 单机游戏大全 免费软件下载 网赚 手游下载 游戏盒子 职业培训 资格考试 成语大全 英语培训 艺术培训 少儿培训 苗木网 雕塑网 好玩的手机游戏推荐 汉语词典 中国机械网 美文欣赏 红楼梦 道德经 网站转让 鲜花
22748
领取福利

微信扫码领取福利

微信扫码分享