计算机体系结构——CH3存储系统

右键点击查看图像,查看清晰图像

X-mind

计算机体系结构——CH3存储系统

存储系统原理

主要性能

  • 速度
  • 容量
  • 价格

两种存储系统

  • Cache与主存储器

  • 虚拟存储系统

    • 主存储器
    • 硬盘

存储系统的速度

  • 命中率

    • 在M1存储器中访问到的概率
    • H=N1 / (N1+N2)
  • 访问周期

    • T= HT1 + (1-H) T2
    • H趋向1, T趋向T1
  • 访问效率

    • 访问效率与命中率和两级存储器的速度之比有关
  • 预存储技术

    • 提高命中率
    • H‘ = (H + n - 1)/ n
    • n为数据块大小与数据重复利用率的乘积

存储系统的层次结构

  • 寄存器堆
  • cache
  • 主存储器
  • 硬盘

并行存储器

  • 增加字长
  • 直接进行地址选择
  • 访问冲突大

交叉访问存储器

  • 高位交叉

    • 扩展存储器容量
  • 低位交叉

    • 提高存储器访问速度
  • 并行存储器的加速比

虚拟存储器

原理

  • 将主存储器和磁盘,虚拟存储器都划分为固定大小的页

    • 主存储器为实业
    • 虚拟存储器为虚页面

三种虚拟存储器

  • 页式虚拟存储器

    • 使用页表
    • 固定式页表,使用页表进行地址变换
  • 段式虚拟存储器

    • 每段从0开始编码
    • 动态改变段的长度
    • 段过大,利用率低
  • 段页式虚拟存储器

    • 用户按段编写程序

    • 每段分为几个固定大小的页

    • 先使用段表跳转,再使用页表定位

    • 地址

      • 用户号
      • 段号
      • 虚页号
      • 页内地址
    • 可能会有多级页表

  • 目录表

    • 用一个小容量高速存储器存放页表
    • 查表速度快
    • 可扩展性差,主存大时效率变低
  • 快慢表

    • 两级存储系统
    • 先查块表
    • 查不到,则查慢表

页面替换算法

  • 含义

    • 也就是替换页面

      • 有时也是Cache或者目录表
    • 当页面失效时

      • 要从磁盘调入一页到主存
    • 如果主存页面均被占用

      • 必须淘汰一个不常使用的页面,以腾出空间
  • 好坏的评价标准

    • 命中率高
    • 算法容易实现
  • 随机算法

  • 先进先出算法(FIFO)

    • 实际可能采用
  • 近期最少使用算法(LFU)

  • 最久没有使用算法(LRU)

    • 实际可能采用

    • 堆栈型替换算法

      • 在分配给程序的主存页面数增加时,主存命中率也提高,至少不下降

        • FIFO不是
  • 最优替换算法(OPT)

    • 理想算法,作为评价其它算法的好坏

命中率H的影响因素

  • 页面大小

    • 当页面大小为某个值时,命中率最大
    • Sp(页面大小)增大,两次访问在同一页面的可能性增大,命中率增加
    • Sp继续增大(影响因素更强),主存页面数更小,页面替换更加频繁且耗时间,命中率减小
  • 主存容量

    • 命中率随着分配给该程序的主存容量S增加而单调上升
  • 页面调度方式

    • 请求式

    • 预取式

      • 在程序重新开始运行之前,将上次停止运行前一段时间用到的页面调入主存,再运行程序

高速缓存存储器(Cache)

特点

  • 提高速度
  • 全部硬件
  • 不命中时等待主存储器

地址映像方式

Cache替换算法

  • 用于组相联,段相联的映像方式中

  • 轮换法

    • 设置01计时器

    • 类似于FIFO

      • 最早装入的块,进行替换
    • 不考虑命中情况

  • 最久没有使用算法(LRU)

    • 实现LRU
  • 堆栈法

加速比

命中率

  • 随它的容量增加而增加

    • H = 1 - (1 / 根号S)

XMind - Trial Version

计算机体系结构——CH3存储系统的更多相关文章

  1. 计算机体系结构的铁律(iron law)

    计算机体系结构的铁律可由下面公式来描写叙述: 从Programmer的角度来看,处理器的性能就是运行程序的耗费的时间.所以用Time/Program来刻画处理器性能.而这个简单的公式背后是有很丰富的内 ...

  2. 计算机体系结构总结_Pipeline

    Textbook:<计算机组成与设计——硬件/软件接口>  HI<计算机体系结构——量化研究方法>          QR 在前面一节里我们有了一块简单的RISC CPU,包括 ...

  3. 计算机体系结构——CH5 标量处理机

    计算机体系结构--CH5 标量处理机 右键点击查看图像,查看清晰图像 X-mind 计算机体系结构--CH5 标量处理机 先行控制技术 指令得重叠执行方式 顺序执行方式 一次重叠执行方式 二次重叠技术 ...

  4. 计算机体系结构——CH4 输入输出系统

    计算机体系结构--CH4 输入输出系统 右键点击查看图像,查看清晰图像 X-mind 计算机体系结构--CH4 输入输出系统 输入输出原理 特点 实时性 与设备无关性 异步性 输入输出系统的组织方式 ...

  5. 计算机体系结构——CH1基本概念

    CH1基本概念 右键点击查看图像,查看清晰图像 CH1基本概念 目的与内容 了解计算机系统的完整概念 学习计算机系统的分析方法与设计方法 编写程序所必需了解的计算机属性 计算机系统结构简介 为什么要研 ...

  6. UNIX环境高级编程——计算机体系结构基础知识

    无论是在CPU外部接总线的设备还是在CPU内部接总线的设备都有各自的地址范围,都可以像访问内存一样访问,很多体系结构(比如ARM)采用这种方式操作设备,称为等都会产生异常. 通常操作系统把虚拟地址空间 ...

  7. 计算机体系结构——流水线技术(Pipelining)

    本文导读: 一.并行技术 .并行技术分类 .新技术的设计与实现 .指令周期 二.流水线技术 .什么是流水线 .指令重叠方式 .流水工作设计 .流水线的描述方法(时空图) .流水线特点 三.流水线的分类 ...

  8. 计算机体系结构——CH2 指令系统

    CH2 指令系统 右键点击查看图像,查看清晰图像 X-mind CH2 指令系统 数据表示 定义 指计算机硬件能够直接识别,可以被指令系统直接调用的那些数据类型 确定哪些数据类型用哪些数据表示实现,是 ...

  9. 计算机体系结构-内存调优IPC OOMK

    man ipc [root@server1 proc]# man ipcIPC(2)                     Linux Programmer’s Manual             ...

随机推荐

  1. Next.js & SSR & CSR & SG

    Next.js & SSR & CSR & SG getStaticPaths, getStaticProps, getServerSideProps getStaticPro ...

  2. web & js & touch & gesture

    web & js & touch & gesture 触摸 & 手势 https://caniuse.com/#feat=touch js https://develo ...

  3. js jsonParse

    mdn const rx_one = /^[\],:{}\s]*$/; const rx_two = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g; // 匹配 ...

  4. Flutetr flutter_downloader 1.3.1

    flutter_downloader 此库更新极慢,所以问题及多,可以看文档 安装 dependencies: flutter_downloader: ^1.3.1 配置 Java: // MyApp ...

  5. APC体育全力打造高端体育服务品牌

    近年来,a private company(以下简称APC体育,公司编号:08703733)坚持以人为本,努力满足各个行业运动达人多元化及多层次的体育需求,在倡导体育公共健康服务和水平的同时,还向运动 ...

  6. 行业动态 | Apache Pulsar 对现代数据堆栈至关重要的四个原因

    与 Kafka 相比,Pulsar 的架构使它在跨地域复制.扩展.多租户和队列等方面具有重要的优势.   1 月 27 日,DataStax 宣布收购Kesque(Pulsar 即服务),加入到了 P ...

  7. django学习-20.python3中的特殊方法【__str__】的作用

    目录结构 1.前言 2.[__str__]特殊方法的具体使用 2.1.当使用print打印一个类被实例化后生成的对象的时候,若类里有定义了[__str__]特殊方法,是打印出这样的数据:[__str_ ...

  8. git log的常用命令

    git config --global alias.lg "log --graph --oneline --pretty='%Cred%h%Creset -%C(yellow)%d%Cblu ...

  9. Laravel Queues 队列应用实战

    队列,顾名思义,排着队等着做事情.在生活场景中,凡是排队的人,都是带有目的性的.要完成某件事情,才去排队的,要不没有谁会闲到排队玩儿.而在软件应用层面,队列是什么,队列有什么优点,我们什么时候需要用队 ...

  10. AWS Switching to an IAM role (AWS CLI)

    一,引言 今天额外分享一篇 AWS 的技术内容,需要在 EC2 切换到跨账号 IAM 角色(AWS CLI).假设我们使用两个 AWS 账户,A账号,B账号.我们希望允许 A 账号用于 "i ...