zoukankan      html  css  js  c++  java
  • 【计算机组成原理】:存储系统学习(下)

    Cache等存储系统请参考:存储系统学习(上)

    一、虚拟存储器

    冯诺依曼计算机的工作原理是存储程序和程序控制。那么,如果程序比主存容量大该怎么运行呢?于是,虚拟存储器的概念被提出来。利用主存-辅存存储层次,解决主存容量不足的问题,为程序设计者提供比主存空间大的编程空间。常见的虚拟存储器划分为:页式虚拟存储器、段式虚拟存储器、段页式虚拟存储器。

    image

    虚拟存储器的设计有两个必须要解决的问题:

    (1)CPU如何访问存储系统的地址属性(逻辑地址、物理地址)?

    (2)如何判断CPU要访问的信息是否在主存中?


    针对虚拟存储器的这两个问题,提出了解决方案。

    (1)采用MMU(Memory Management Unit):管理虚拟存储器与物理存储器

    (2)采用页表来判断CPU要访问的内容是否在主存,并与MMU配合实现逻辑地址与物理地址之间的转换?

    image

    具体而言,虚拟存储器是如何工作的呢?

    首先CPU会根据虚拟地址进行访问,判断页表上的有效位,也即是判断该地址是否在主存上。如果该虚拟地址有效,就将虚拟地址转化为物理地址进行访问。如果该地址无效,就从磁盘上访问。

    image

    虚拟地址和物理地址之间的转换:

    首先会将虚拟地址拆分成虚拟页号(VPN)和页内偏移地址(VPO)。MMU根据虚拟页号在页表中找到对应的物理地址。若物理地址有效,则将对应的物理页号(PPN)和页内偏移地址(VPO)拼起来作为物理地址。

    image


    二、TLB

    虚实地址的转换会带来一些问题,与Cache类似,虚拟地址转换过程中存在页面命中和缺页的情况。不管是否命中都需要多次访问主存,会带来性能下降。缺页异常处理后再次进行虚实地址转换将再次访问主存。

    image

    image

    因此,提出了一种TLB(Translation Lookaside Buffer,地址转换后备缓冲器)。TLB类似于Cache的映射方法,对来自CPU的虚页号进行逻辑划分,得到相应的标记和索引字段。根据索引找到对应行号,判断标记位,最后生成对应的物理地址。

    image



    三、RAID

    RAID(Redundant Arrays of Independent Disks )的提出背景:

    (1)很多人都有因磁盘故障而导致数据丢失的经历;

    (2)磁盘访问速度过慢;

    (3)多磁盘管理不方便


    RAID的核心技术:

    (1)将数据条带化后,存放在不同磁盘上,通过多磁盘的并行操作提高磁盘系统的读写速率。

    (2)使用基于异或运算作为基础的校验技术恢复损坏的数据。如下图所示,异或和=可以交换,即其中一块儿磁盘损坏,可以用剩下两块磁盘异或得出。

    image


    常见的几种RAID技术:

    (1)RAID0 - 数据以条带式方式均匀分散在各个磁盘

    image

    (2)RAID1 – 数据采用镜像的冗余方式,同以数据有多份拷贝

    image

    (3)RAID3/4 – 数据按位/条并行传输到多个磁盘上,同时校验数据存放到专用校验盘上。

    image

    (4)RAID5 – 数据按条带分布在不同磁盘上,校验信息被均匀分散到各磁盘上

    image

    (5)RAID10 - 结合RAID1和RAID0,先镜像。再条带化

    image

    RAID的实现方式分为软件实现和硬件实现。

    软件RAID:功能都依赖于主机CPU完成,没有第三方的控制处理器和IO芯片。

    硬件RAID:专门RAID控制处理器和IO处理芯片处理RAID任务,不占用主机CPU资源。

  • 相关阅读:
    SSL JudgeOnline 1194——最佳乘车
    SSL JudgeOnline 1457——翻币问题
    SSL JudgeOnlie 2324——细胞问题
    SSL JudgeOnline 1456——骑士旅行
    SSL JudgeOnline 1455——电子老鼠闯迷宫
    SSL JudgeOnline 2253——新型计算器
    SSL JudgeOnline 1198——求逆序对数
    SSL JudgeOnline 1099——USACO 1.4 母亲的牛奶
    SSL JudgeOnline 1668——小车载人问题
    SSL JudgeOnline 1089——USACO 1.2 方块转换
  • 原文地址:https://www.cnblogs.com/keeptry/p/15497900.html
Copyright © 2011-2022 走看看