计算机组成原理:存储系统【四】

简介: 计算机组成原理:存储系统【四】



1 外存储器

1.1 总览

1.2 磁盘存储器

1.2.1 磁盘设备的组成

此外,一个盘面的正面、反面都可以进行读写,如图

1.2.2 磁盘的性能指标

(1)磁盘容量与记录密度

有一点要注意到:不同磁道所能记录的比特位数是一定的。

(2)平均存取时间

有时候还需要考虑磁盘控制器发出命令的延迟时间

(3)数据传输率

1.2.3 磁盘的地址

1.2.3 磁盘的工作过程

移位磁盘是串行工作的,所以在CPU使用磁盘时一定要添加一个并-串交换电路

1.3 磁盘阵列

1.3.1 解释

使用某些手段将磁盘组成磁盘阵列,再结合相应的算法与机制提高磁盘的访问速度、安全性等等。

1.3.2 分类

(1)RAID0:无冗余和无校验的磁盘阵列

无校验:无法得知读出的数据是否出错

无冗余:无法保证磁盘上的数据不会丢失

多个磁盘连接在一起:不同磁盘的读写速度不一样,而访问磁盘一般来说是要访问多个连续的数据,联系“低位交叉编址”,这样做可以提高访问速度

(2)RAID1:镜像磁盘阵列

镜像:相同的数据存两份

有冗余:备份了一份数据

有校验:只需查看两个磁盘相同位置上的数据是否一致就可以判断书是否发送错误

(3)RAID2:采用纠错的海明码的磁盘阵列

纠错:即使一个磁盘发送损坏,也可以根据海明码进行恢复

(4)RAID3:位交叉奇偶校验的磁盘阵列

(5)RAID4:块交叉奇偶校验的磁盘阵列

(6)RAID5:无独立校验的奇偶校验磁盘阵列

4、5、6不做介绍,它们都与RAID2类似,但是磁盘的可靠性是越来越高

(7)注意:

1.4 总结

2 固态硬盘

2.1 总览

2.2 硬盘的结构

对于磁盘而言,I/O总线发出的读/写逻辑块号应该包括磁盘号、扇区号等。而对于固态硬盘,其块对应磁盘的磁道,块中包含了许多页,这些页与扇区对应(一个磁道包含了很多扇区)。

需要注意的是,固态硬盘在进行读取时是以“页”为基本单位。

2.3 读写特性

1. 如果只需要对一个块中某个页的数据进行修改,那么SSD会首先将这一块的数据全部复制到另外一个块中,此时SSD还会改变这些数据的逻辑映射。接着,SSD擦除该块的数据重新写入

2. 在访问数据时,相比于磁盘每次移动机器臂、定位磁道的操作,SSD可以根据电路直接进行访问,具有随机访问的特点

2.4 磨损均衡

1. 当SSD中某个块的擦写次数过多时,可以将该块的数据迁移到其他快,并改变该数据的逻辑映射,即可。(较为方便)

3 页式存储器

3.1 虚地址与实地址

1. 假设有一个大小为4kb的应用程序,主存大小为4MB,每块的大小为1KB,则在实际的存储过程中,4KB的应用程序被分成4页,每页大小为1KB,离散的分布在实际存储空间中。

2. 我们使用2bit表示页的序号,即00、01、10、11表示第1、2、3、4个页。使用10位bit表示程序的页内地址(2^10 = 1KB).则每一个变量都可以使用这12位地址表示。

3. 对于管理员来说,该程序的地址组成是这样的:

这是一个逻辑地址,因为实际的物理地址往往不是这样,如图

但是对于管理员来说,记住物理地址是很苦难的,所以呈现在管理员面前的都是逻辑地址,比如说进行以下操作

使用的就是逻辑地址,这样更加方便。

4. CPU在执行机器指令时,使用的是“逻辑地址”,此时我们就需要一个逻辑地址与物理地址的对应关系,页表就实现了这样的功能。它的作用是记录每个逻辑页面存放在哪些主存块中。

3.2 地址的变换过程

3.2.1 示意图

注意到页表在计算机中是存储在主存中的,并且使用DRAM实现,所以访问速度较慢。

3.2.2 注意

我们知道程序的执行具有很强的局部性,即:一个被访问的变量在接下来很有可能会再次被访问。因此可以将被访问的变量放入一个类似于Cache的速度更快的存储表中,这就是快表(TLB),它使用SRAM实现,速度更快。此时的地址变换过程如图所示

由此可知,TLB与Cache的作用其实类似,TLB也会遇到空间满的问题,采取的替换方式与Cache类似。

3.3 知识总结

4 总结

计算机组成原理如一座精密的交响乐团,微观中展现着电子的舞蹈,宏观中奏响着科技的交响曲。

它拆解复杂问题为简单指令,通过微处理器的默契协作,创造出无尽可能。

存储单元如记忆的灯塔,指引信息的航程。

总线是信息的大道,连接着各个功能模块,使计算机成为无比高效的智慧之器。

在计算机组成原理的魔法指导下,世界逐渐变得更加智能、便捷、创新。

渴望挑战计算机组成与原理的学习路径和掌握进阶技术?不妨点击下方链接,一同探讨更多CO的奇迹吧。我们推出了引领趋势的💻CO专栏:《计算机组成原理基础》 ,旨在深度探索CO的实际应用和创新。🌐🔍

相关文章
|
2月前
|
算法 内存技术
计算机组成原理:存储系统【二】
计算机组成原理:存储系统【二】
|
2月前
|
存储 芯片 内存技术
计算机组成原理:存储系统【三】
计算机组成原理:存储系统【三】
|
2月前
|
存储 芯片 内存技术
计算机组成原理:存储系统【一】
计算机组成原理:存储系统【一】
|
2月前
|
存储 算法 固态存储
【计算机组成原理】存储系统
【计算机组成原理】存储系统
1979 0
【计算机组成原理】存储系统
|
2月前
|
存储 固态存储 芯片
计算机组成原理(1)----存储器相关(2)
计算机组成原理(1)----存储器相关
53 1
|
2月前
|
存储
计算机存储系统
【1月更文挑战第5天】计算机存储系统。
44 3
|
存储 固态存储 数据安全/隐私保护
计算机组成原理/计算机硬件基础第五章:存储器
计算机组成原理/计算机硬件基础第五章:存储器
405 0
计算机组成原理/计算机硬件基础第五章:存储器
|
存储 固态存储 芯片
计算机组成原理<五>——存储系统(一)
计算机组成原理<五>——存储系统
计算机组成原理<五>——存储系统(一)
|
存储 算法 程序员
计算机组成原理<五>——存储系统(二)
计算机组成原理<五>——存储系统
计算机组成原理<五>——存储系统(二)
|
存储 传感器 缓存
计算机组成原理系列(三):计算机存储器结构体系详解
你是不是经常被以下名词弄得晕头转向。**ROM/RAM/DRAM/SRAM/SDRAM/DDR SDRAM**等等,下面,我尽力以上图为参考,从上到下,说明各个层次存储器的特点和区别,并对它们的工作原理做一些简要的说明

热门文章

最新文章

  • 1
    流量控制系统,用正则表达式提取汉字
    27
  • 2
    Redis09-----List类型,有序,元素可以重复,插入和删除快,查询速度一般,一般保存一些有顺序的数据,如朋友圈点赞列表,评论列表等,LPUSH user 1 2 3可以一个一个推
    26
  • 3
    Redis08命令-Hash类型,也叫散列,其中value是一个无序字典,类似于java的HashMap结构,Hash结构可以将对象中的每个字段独立存储,可以针对每字段做CRUD
    27
  • 4
    Redis07命令-String类型字符串,不管是哪种格式,底层都是字节数组形式存储的,最大空间不超过512m,SET添加,MSET批量添加,INCRBY age 2可以,MSET,INCRSETEX
    28
  • 5
    S外部函数可以访问函数内部的变量的闭包-闭包最简单的用不了,闭包是内层函数+外层函数的变量,简称为函数套函数,外部函数可以访问函数内部的变量,存在函数套函数
    24
  • 6
    Redis06-Redis常用的命令,模糊的搜索查询往往会对服务器产生很大的压力,MSET k1 v1 k2 v2 k3 v3 添加,DEL是删除的意思,EXISTS age 可以用来查询是否有存在1
    31
  • 7
    Redis05数据结构介绍,数据结构介绍,官方网站中看到
    22
  • 8
    JS字符串数据类型转换,字符串如何转成变量,+号只要有一个是字符串,就会把另外一个转成字符串,- * / 都会把数据转成数字类型,数字型控制台是蓝色,字符型控制台是黑色,
    20
  • 9
    JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
    21
  • 10
    定义好变量,${age}模版字符串,对象可以放null,检验数据类型console.log(typeof str)
    19