【操作系统】——基本分页存储管理

这篇具有很好参考价值的文章主要介绍了【操作系统】——基本分页存储管理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


一、什么是分页存储

将内存分为一个个大小相等的分区, 这些分区称作为(页框、页帧、内存块、物理块、物理页面)若对分区进从编号,则又有了对应的(页框号、页帧号、内存块号、物理块号、物理页号),从0开始

进程的信息都是要存在内存中的,既然内存有了分区,那么进程逻辑地址空间上也会有相应的大小相等的分区,称为
(页、页面),对应编号为(页号、页面号),从0开始。

上面这么多名称着实是难记,但是我们只需要记住只有(页、页面)/(页号、页面号)是和进程相关的,其他的都是和内存相关的即可。

【操作系统】——基本分页存储管理
【操作系统】——基本分页存储管理

二、页表(存PCB中)

分页存储是一种不连续存储,进程的每个页在内存的页框存储不一定连续(页框间不一定连续,但是页框内部是连续的),那也就是说页号为0的页可能会存在0号页框也有可能存在100号页框中,那由页到页框的关系是如何被记录的呢??

这就是页表的功能!!
为了知道进程每个页面在内存中的存储位置,操作系统会为每一个进程建立一张页表,页表反映的是页和页框的一一对应关系。

【操作系统】——基本分页存储管理
页表是由页号和页框号(即内存块号)组成的。

页表项就是指页表中的一行,包括一个页号和一个块号。页号一般是隐含的(pc+"1"实现),而块号是由内存内被分为多少个页框决定的,在字节编址中,最大页框号所对应的字节数(字节数向上取整,不够一个字节数的,取够),即为页表项的大小。

页号和块号都是一个分区的顺序编号,并不代表着实际大小或者实际大小,比如:块号为2并不一定代表着起始地址就为2,若分区大小为1,则起始地址就是2,若分区大小为n,则起始地址为2*n

j号内存块的起始地址 = j * 内存块大小

三、如何实现地址转换

Q: 将进程地址空间分页后,操作系统该如何实现从逻辑地址到物理地址间的转换??
A: 物理地址是指内存中的实际地址,逻辑地址是由页号和页内偏移量组成。

逻辑地址: 是程序编译后,生成的目标模块进行编址时都是从0号单元开始编址,称之为目标模块的相对地址,即为逻辑地址。

	1、给出逻辑地址,可由页号在页表中寻找对应的页表项,由页表项找到块号(内存块号),经过公式换算即可得到当前块号所对分区的 起始地址。
	(逻辑地址——页号——页表项——块号——块起始地址)
	2、由逻辑地址可以得到页内偏移量(同时也是块内偏移量,这是因为页和内存块大小相等)
	(逻辑地址——页内偏移量——“块内偏移量”
	3、物理地址由块的起始地址加上“块内偏移量”组成

【操作系统】——基本分页存储管理
内存被分为大小相等的各个页框,某个逻辑地址就对应某个页框内的某个地址,
逻辑地址除以页框大小——》

  1. 整数部分

    整数部分表示该逻辑地址所在的块号(若以逻辑地址大小为总空间,则表示在总空间内一共可以容纳多少个相应大小的页框)

  2. 余数部分

    余数部分表示逻辑地址在对应块内的偏移量(若以逻辑地址大小为总空间,则逻辑地址除以页框大小表示,整数是总空间内可容纳多少个页框,余数部分表示在不够容纳一个页框的部分中,最多能容纳多少,就好像你)
    

在计算机中采用的是二进制记录数据,若页面大小的二进制表示刚好是2的整数次幂,则计算机可以直接区分出页号和块号。
【操作系统】——基本分页存储管理
在二进制中,一般情况下都符合:逻辑地址等于块号和页内偏移量的拼接
【操作系统】——基本分页存储管理
【操作系统】——基本分页存储管理
【操作系统】——基本分页存储管理

四、基本地址变换机构

进程未执行的时候页表的始址和页表长度都是存放在PCB中的,当进程被调度时操作系统会将它放到页表寄存器中(PTR)。

页表寄存器记录了页表始址和页表长度!

【操作系统】——基本分页存储管理

  1. 进程被调度,操作系统内核将系统区PCB中的页表始址和页表长度放置在页表寄存器中
  2. 由逻辑地址分出页号和页内偏移量
  3. 将页号和页表长度对比,页号是页面的编号(从0开始),页表长度是指页表项的个数、页面的个数。页号>=页表长度,则非法,反之,执行下一步
  4. 由页号和页表始址可以计算出页表项的地址,之后可访问页表项,页表项中的内容是块号,最终可读取块号。
  5. 从页表项中读出得块号,再和逻辑地址的页内偏移量组合在一起就得到了物理地址

五、具有快表的地址变换机构

【操作系统】——基本分页存储管理
快表,又称联想寄存器(TLB),是一种高速缓存,用来存放最近访问的页表项副本,注意快表不是内存,快表中页表项是内存中部分页表项的副本,内存中的页表又称慢表。

【操作系统】——基本分页存储管理

  1. 进程被调度,操作系统内核将系统区PCB中的页表始址和页表长度放置在页表寄存器中
  2. 由逻辑地址分出页号和页内偏移量
  3. 将页号和页表长度对比,页号是页面的编号(从0开始),页表长度是指页表项的个数、页面的个数。页号>=页表长度,则非法,反之,执行下一步
  4. 对快表中的页表项进行逐一核对,看看是否匹配,是否命中,若命中,则进行第6步,若不命中,则执行第5步。
  5. 由页号和页表始址可以计算出页表项的地址,之后可访问页表项,页表项中的内容是块号,最终可读取块号。
  6. 从页表项中读出得块号,再和逻辑地址的页内偏移量组合在一起就得到了物理地址

若快表命中,则一次访存,反之,两次!文章来源地址https://www.toymoban.com/news/detail-457361.html

到了这里,关于【操作系统】——基本分页存储管理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 操作系统实验五 存储管理

    ★观前提示 : 本篇内容为操作系统实验内容 ,代码等内容经测试没有问题,但是 可能会不符合每个人实验的要求 ,因此以下内容建议 仅做思路参考 。 一、实验目的 掌握 虚拟内存 的管理机制。 了解虚拟存储技术的 特点 。 掌握请求分页存储管理的 页面置换算法 。 二、

    2024年02月06日
    浏览(42)
  • 【操作系统】存储器管理练习

    12.(考研真题) 假设一个分页存储系统具有 快表 ,多数活动页表项都可以存在于其中。 若页表放在内存中,内存访问时间是1ns,快表的命中率是85%,快表的访问时间为0.1ns, 则 有效存取时间 为多少? 15.  已知某分页系统,内存容量为64KB,页面大小为1KB,对一个4页大的作业

    2024年02月05日
    浏览(94)
  • 操作系统实验(一)——可变分区存储管理

    湖南师范大学信息科学与工程学院计算机科学与技术非师范班操作系统实验报告 一、实验目的: 加深对可变分区存储管理的理解; 提高用C语言编制大型系统程序的能力,特别是掌握C语言编程的难点:指针和指针作为函数参数; 掌握用指针实现链表和在链表上的基本操作。

    2024年02月06日
    浏览(40)
  • 操作系统-请求页式存储管理中常用页面置换算法模拟

    (1)先进先出调度算法(FIFO) 先进先出调度算法根据页面进入内存的时间先后选择淘汰页面,先进入内存的页面先淘汰,后进入内存的后淘汰。本算法实现时需要将页面按进入内存的时间先后组成一个队列,每次调度队首页面予以淘汰。 (2)最近最少调度算法(LRU) 先进

    2024年02月06日
    浏览(45)
  • 【操作系统复习之路】存储器管理(第四章 &超详细讲解)

    目录 一、存储器的层次结构 二、程序的装入和链接 2.1 逻辑地址和物理地址 2.2 绝对装入方式 2.3 可重定位装入方式 2.4 动态运行时装入方式 2.5 静态链接  2.6 装入时动态链接 2.7 运行时动态链接 三、连续分配存储器管理方式 3.1 单一连续分配 3.2 固定分区分配 3.3 动态分区

    2024年04月27日
    浏览(39)
  • 操作系统考试复习——第四章 存储器管理 4.1 4.2

    存储器的层次结构: 存储器的多层结构: 存储器至少分为三级:CPU寄存器,主存和辅存。 但是 一般分为6层 为寄存器,高速缓存,主存储器,磁盘缓存,固定磁盘,可移动存储介质。 这几个部分是 速度依次减小 但是 存储容量是依次增大 的。  只有固定磁盘和可移动存储

    2024年02月03日
    浏览(42)
  • 操作系统实验三虚拟存储器管理之模拟页面置换算法(FIFO&LRU)

    一、概述  (1)置换算法  (2)缺页率与命中率 二、先进先出置换算法(FIFO)    (1)定义    (2)示例  (3)Belady异常  三、最近最久未使用置换算法(LRU) (1)定义 (2)示例 四、FIFOLRU置换算法的模拟    (1)流程图  (2)完整代码  (3)实验结果         进程运行

    2024年02月04日
    浏览(38)
  • 银河麒麟高级服务器操作系统V10-系统管理员手册:01 基本系统配置

    目录 第一章 基本系统配置 1.1. 系统地区和键盘配置 1.1.1. 配置系统地区 1.1.1.1. 显示当前配置 1.1.1.2. 显示可用地区列表 1.1.1.3. 配置地区 1.1.2. 配置键盘布局 1.1.2.1. 显示当前配置 1.1.2.2. 显示可用键盘布局列表 1.1.2.3. 配置键盘 1.1.3. 其他资源 1.2. 网络访问配置 1.2.1. 动态网络配置

    2024年02月15日
    浏览(70)
  • 2.3.1操作系统-存储管理:页式存储、逻辑地址、物理地址、物理地址逻辑地址之间的地址关系、页面大小与页内地址长度的关系、缺页中断、内存淘汰规则

    在存储管理当中,操作系统会负责将外存的一些文件调入到内存当中,以便给CPU调用,如果调用的内容不在内存当中,那么会产生一种中断,叫做缺页中断。然后从外存调数据,调完数据再返回,接着访问之前的断点部分。 在调用的过程当中,如果是一个几十G的文件,调入

    2024年02月03日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包