【计算机组成原理】三、存储系统:5.页式存储、虚拟存储

2024-08-25 11:04

本文主要是介绍【计算机组成原理】三、存储系统:5.页式存储、虚拟存储,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

9.页式存储器

文章目录

    • 9.页式存储器
      • 9.1页表
      • 9.2地址变换过程
      • 9.3快表TLB
    • 10.虚拟存储器
      • 10.1页式虚拟存储器
      • 10.2段式虚拟存储器
      • 10.3段页式虚拟存储器

详见 操作系统 3.内存管理 存储器管理 分页存储管理

因为实际连续存放一段程序是不现实的,那样会使得利用率极低。所以,比如某程序4KB,就把4KB的程序分为4个“页”每个页面的大小和“物理块”的大小相同。

页式存储系统:一个程序(进程)在逻辑上被分为若干个大小相等的“页面”,“页面”大小与“块”的大小相同。每个页面可以离散地放入不同的主存块中。


  • 逻辑地址(地址):程序员视看到的地址。

逻辑地址=逻辑页号+页内地址

(虚地址=虚页号+页内地址)

  • 物理地址(地址):实际在主存中的地址。

物理地址=主存块号+页内地址

(实地址=实页号+页内地址)


也就是程序给出逻辑地址,然后操作系统会将其转换为物理地址。这个转换的过程,是通过页表

9.1页表

CPU执行的机器指令中,使用的是“逻辑地址”,因此需要通“页表”将逻辑地址转为物理地址。

页表的作用:记录了每个逻辑页面存放在哪个主存块中。

在这里插入图片描述

9.2地址变换过程

在这里插入图片描述

  • 优化:

但是,因为程序的局部性原理,很有可以频繁访问这一个页表项,那么就可以把近期访问的页表项放入更高速的存储器,可加快地址变换的速度。

所以添加快表。

9.3快表TLB

快表是一种“相联存储器”可以按内容寻访。设计成本高,复杂。

在这里插入图片描述

10.虚拟存储器

详见 操作系统 3.内存管理 虚拟内存管理

10.1页式虚拟存储器

虚拟存储系统,是内存和辅存之间的关系,有点类似cache和主存之间的关系,同样基于局部性原理、替换算法、页式存储。

在这里插入图片描述

逻辑页号有效位脏位引用位(访问位)主存块号(或外存块号)
#0逻辑地址bool(1或0)bool引用次数
  • 有效位:这个页面是否已调入主存(物理存储器)。
  • 脏位:这个页面是否被修改过。
  • 引用位(访问位):用于“页面置换算法”,比如,可以用来统计这个页面被访问过多少次。
  • 物理页:即主存块号
  • 磁盘地址:即外存块号。这个页面的数据在磁盘中的存放位置。

10.2段式虚拟存储器

在这里插入图片描述

10.3段页式虚拟存储器

把程序按逻辑结构分段,每段再划分为固定大小的页,主存空间也划分为大小相等的页。

程序对主存的调入、调出仍以页为基本传送单位。

每个程序对应一个段表,每段对应一个页表。

虚拟地址 = 段号+段内页号+页内地址。

在这里插入图片描述

这篇关于【计算机组成原理】三、存储系统:5.页式存储、虚拟存储的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1105377

相关文章

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

HDFS—存储优化(纠删码)

纠删码原理 HDFS 默认情况下,一个文件有3个副本,这样提高了数据的可靠性,但也带来了2倍的冗余开销。 Hadoop3.x 引入了纠删码,采用计算的方式,可以节省约50%左右的存储空间。 此种方式节约了空间,但是会增加 cpu 的计算。 纠删码策略是给具体一个路径设置。所有往此路径下存储的文件,都会执行此策略。 默认只开启对 RS-6-3-1024k

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

hdu4407(容斥原理)

题意:给一串数字1,2,......n,两个操作:1、修改第k个数字,2、查询区间[l,r]中与n互质的数之和。 解题思路:咱一看,像线段树,但是如果用线段树做,那么每个区间一定要记录所有的素因子,这样会超内存。然后我就做不来了。后来看了题解,原来是用容斥原理来做的。还记得这道题目吗?求区间[1,r]中与p互质的数的个数,如果不会的话就先去做那题吧。现在这题是求区间[l,r]中与n互质的数的和

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

hdu4407容斥原理

题意: 有一个元素为 1~n 的数列{An},有2种操作(1000次): 1、求某段区间 [a,b] 中与 p 互质的数的和。 2、将数列中某个位置元素的值改变。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.Inpu

hdu4059容斥原理

求1-n中与n互质的数的4次方之和 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.PrintWrit

速了解MySQL 数据库不同存储引擎

快速了解MySQL 数据库不同存储引擎 MySQL 提供了多种存储引擎,每种存储引擎都有其特定的特性和适用场景。了解这些存储引擎的特性,有助于在设计数据库时做出合理的选择。以下是 MySQL 中几种常用存储引擎的详细介绍。 1. InnoDB 特点: 事务支持:InnoDB 是一个支持 ACID(原子性、一致性、隔离性、持久性)事务的存储引擎。行级锁:使用行级锁来提高并发性,减少锁竞争

寻迹模块TCRT5000的应用原理和功能实现(基于STM32)

目录 概述 1 认识TCRT5000 1.1 模块介绍 1.2 电气特性 2 系统应用 2.1 系统架构 2.2 STM32Cube创建工程 3 功能实现 3.1 代码实现 3.2 源代码文件 4 功能测试 4.1 检测黑线状态 4.2 未检测黑线状态 概述 本文主要介绍TCRT5000模块的使用原理,包括该模块的硬件实现方式,电路实现原理,还使用STM32类

计算机视觉工程师所需的基本技能

一、编程技能 熟练掌握编程语言 Python:在计算机视觉领域广泛应用,有丰富的库如 OpenCV、TensorFlow、PyTorch 等,方便进行算法实现和模型开发。 C++:运行效率高,适用于对性能要求严格的计算机视觉应用。 数据结构与算法 掌握常见的数据结构(如数组、链表、栈、队列、树、图等)和算法(如排序、搜索、动态规划等),能够优化代码性能,提高算法效率。 二、数学基础