- 📢博客主页:盾山狂热粉的博客_CSDN博客-C、C++语言,机器视觉领域博主
- 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
- 📢努力努力再努力嗷~~~✨
一、存储系统
存储器是计算机系统中的记忆设备,分为内部存储器、外存储器
内存的存取速度快、容量小,一般用来临时存放计算机运行时所需的程序、数据及中间结果
外存的容量大、存取的速度相对较慢,可用于长期保存信息,需要时会将信息调入内存
寄存器是CPU中的记忆设备,用来临时存放指令、数据及运算结果
与内存储器相比,寄存器的速度要更加快
二、存储器的分类
1、所处位置:内存、外存
2、构成存储器的材料:磁存储器、半导体存储器、光存储器
磁内存储器:用磁性介质做成的,如磁芯、磁泡、磁膜、磁鼓、磁带和磁盘等
半导体存储器:根据所用元件(双极型、MOS型)、根据是否需要刷新(静态、动态)
光存储器:光盘存储器
3、工作方式:读写存储器、只读存储器
-
读写存储器(RAM):可读可写;存储信息易失,掉电信息丢失
-
只读存储器:所存信息是非易失的,掉电后信息仍然在
-
固定只读存储器(ROM):厂家生产时就写好数据
-
可编程的只读存储器(PROM):由用户一次性地写入
-
可擦除可编程的只读存储器(EPROM):内容既可以读出,也可以改写。修改方法:写入之前先用紫外线照射15~20分钟以擦去所有信息,然后再用特殊的电子设备写入信息
-
电擦除的可编程的只读存储器(EEPROM):内容既可以读出,也可以改写,用电擦除的方法进行数据的改写
-
闪速存储器:闪存的特性介于EPROM和EEPROM之间,类似于EEPROM,闪存也可以使用电信号进行信息的擦除操作。整块闪存可以在数秒内删除,速度远快于EPROM
4、访问方式:按地址访问、按内容访问
5、寻址方式:随机存储器、顺序存储器、直接存储器
随机存储器:可对任何存储单元存入或读取数据,访问任何一个存储单元所需的时间是相同的
顺序存储器:访问数据所需要的时间与数据所在的存储位置相关,磁带是典型的顺序存储器
直接存储器:介于随机存取和顺序存取之间的一种寻址方式。磁盘是一种直接存取存储器,它对磁道的寻址是随机的,而在一个磁道内,则是顺序寻址
三、存储系统的层次结构(三级存储系统)
-
若将CPU内部的寄存器(最接近CPU速度)也看做是存储器的一个层次,则可将存储系统分为四层结构
-
CPU处理的速度很快,直接从辅存取的话太慢了,只能借助主存来过渡。借助主存可以加快数据传输速度,如果主存的速度仍然跟不上,那就需要借助高速缓存来进行了
(一)高速缓存(cache)—— 在存储系统中是非必要的
-
由半导体储存器制成,位于主存与CPU之间,其内容是主存内容的副本(对程序员来说是透明的)
-
优点:容量小;速度比主存快5~10倍;可显著提高计算机系统工作速度
-
缺点:信息存储时间短、造价高
-
组成:控制部分和cache存储器部分
cache存储器部分:存放主存的部分拷贝(副本)
控制部分的功能:判断CPU要访问的信息是否存在cache存储器中。若存在即为命中,若不在则没有命中。命中时直接对cache存储器寻址。未命中时,若是读取操作,则从主存中读取数据并按照确定的替换原则把该数据写入cache存储器中;若是写入操作,则将数据写入主存即可
(二)主存储器
-
内存也称为主存,用来存放机器当前运行所需要的程序和数据,以便向CPU提供信息
-
由RAM和ROM这两种工作方式的存储器组成,其绝大部分存储空间由RAM构成
1、组成
-
存储体(主要存储信息)、控制线路、地址寄存器、数据寄存器和地址译码电路
地址寄存器(MAR):用来存放由地址总线提供的将要访问的存储单元的地址码,MAR的位数N决定了其可寻址的存储单元的个数M,即M=
数据寄存器(MDR):用来存放要写入存储器的数据或从存储体中读取的数据
存储体:存放程序和数据的存储空间
译码电路:根据存放在地址寄存器中的地址码,在存储体中找到相应的存储单元(根据房间号找住在哪)
控制线路:根据读写命令,控制主存储器的各部分协作完成相应的操作
2、操作:读写
读出时,CPU把要读取的存储单元的地址送入MAR,经地址译码线路分析后选中主存的某一存储单元,在控制线路的作用下,将被选存储单元的内容读取到MDR中,读操作完成
写入时,CPU将要写入的存储单元的地址送入MAR,经地址译码线路分析后选中主存的某一存储单元,在控制线路的作用下,将MDR的内容写入到MAR指定的存储单元中,写操作完成
3、反映主存性能的主要术语(考点)
储存周期(MCT):连续两次进行存储器的访问的最小时间间隔,记作Tm
带宽(bandwidth):指存储器的数据传送速率,即每秒钟由存储器读出的二进制数据的位数,记作Bm。假设存储器传送的数据宽度为W位(即一个存储周期中读取或写入的位数),那么:Bm=W/Tm(b/s)
4、编址
-
主存是由多个存储芯片组合而成的
-
一个格子是一个二进制位,需要三个二进制位,3根地址线才能把000变换到111
-
16K需要4根地址线,64K需要16根地址线
(三)外存储器
外存也称为辅存,如磁盘、磁带、光盘等,用来存放当前不参加运行的大量信息,在需要时,可把需要的信息调入内存
外存上的信息以文件的形式存储。CPU不能直接访问外存中的程序和数据,只有将其以文件为单位调入主存方可访问
外存储器由电磁表面存储器(如磁盘、磁带)及光盘存储器构成
1、磁盘存储器
-
在磁表面存储器中,磁盘的存取速度较快,且具有较大的存储容量,是目前广泛使用的外存储器
-
组成:由盘片、驱动器、控制器和接口构成
盘片:存储信息
驱动器:用于驱动磁头沿盘面作径向运动以寻找目标磁道位置,驱动盘片以额定速率稳定旋转,并实现控制数据的写入和读出
控制器:接受主机发来的命令,将它转换成磁盘驱动器的控制命令,并实现主机和驱动器之间数据格式的转换及数据传送,以控制驱动器的读/写操作。一个控制器可以控制多台驱动器
接口:主机和磁盘存储器之间的连接部件
2、硬盘(考点)
-
分类
按盘片是否固定、磁头是否移动:移动磁头固定盘片的磁盘存储器、固定磁头的磁盘存储器、移动磁头可换盘片的磁盘存储器、温彻斯特磁盘存储器(简称温盘)
按盘片的直径:14英寸、8英寸、5.25英寸、3.5英寸
-
组成
记录面:硬盘中可记录信息的磁介质表面
磁道:每一个记录面上都分布着若干同心的闭合圆环,数据就记录在磁道上(从外到里编号,最外一圈为0道)。最内圈的位密度称为最大位密度
扇区:磁盘上的每个磁道又分为若干段,每一段称为一个扇区
-
一个硬盘驱动器内可装有多个盘片,组成盘片组,每个盘片可以提供两个记录面,每个记录面都配有一个独立的磁头。所有记录面上相同序号的磁道构成一个圆柱面,其编号与磁道编号相同
-
硬磁盘的主要技术指标
-
道密度
为了减少干扰,磁道之间要保持一定的间隔。沿着磁盘半径方向,单位长度内磁道的数目称为道密度
常用的道密度单位是:道/毫米、道/英寸
-
位密度
指在磁道圆周上单位长度内存储的二进制位的个数
常用的位密度单位是:b/mm、b/in
为了简化电路设计,规定每个磁道上记录的位数是相同的。由于磁盘中各个磁道的圆的周长不同,因此不同磁道上记录的位密度是不一样的,越靠近盘芯的磁道位密度就越高
由最内圈磁道的位密度来定义磁盘的位密度
-
存储容量
是指整个磁盘所能存储的二进制位信息的总量
磁盘的容量有非格式化容量和格式化容量之分。一般情况下磁盘容量是指格式化容量
非格式化容量 = 位密度 * 内圈磁道周长 * 每个记录面上的磁道数 * 记录面数
格式化容量 = 每个扇区的字节数 * 每道的扇区数 * 每个记录面的磁道数 * 记录面数
-
平均存取时间:指从发出读写命令开始,磁头从某一位置移动到指定位置并开始读写数据所需时间。它包括寻道时间和等待时间
-
寻道时间:是指磁头移动到目标磁道(或柱面)所需要的时间,由驱动器的性能决定
-
等待时间:指等待读写的扇区旋转到磁头下方所用的时间,一般选用磁道旋转一周所用时间的一半作为平均等待时间,提高磁盘转速可缩短这个时间
-
数据传输率:是指磁头找到数据的地址后,单位时间内写入或读出的字节数。计算公式:数据传输率 = 每个扇区的字节数 * 每道扇区数 * 磁盘的转速
四、I/O设备
输入/输出(I/O)系统是计算机与外界进行数据交换的通道
主机和I/O设备间不是简单地用系统总线连接起来就可以,还需要进行控制,因此需要一个I/O系统负责协调和控制CUP、存储器和各种外部设备之间的数据通信
主机——I/O接口——I/O设备
(一)接口的功能与分类
1、功能
-
接口是指两个相对独立子系统之间的相连部分,也常被称为界面
-
I/O接口并非仅仅完成设备间物理上的连接,一般来说它还应具有下述主要功能
地址译码功能:由于一个计算机系统中连接有多个I/O设备,相应的接口也有多个,必须给它们分配不同的地址码进行区别和选择
在主机与I/O设备间交换数据、控制命令及状态信息等
支持主机采用程序查询、中断和DMA等访问方式
提供主机和I/O设备所需的缓冲、暂存、驱动能力,满足一定的负载要求和时序要求
进行数据的类型、格式等方面的转换
2、分类
-
数据传送的格式:并行接口、串行接口
并行接口采用并行传送方式,即一次把一个字节(或一个字)的所有位同时输入或输出,同时(并行)传送若干位。并行接口一般指主机与I/O设备之间、接口与I/O设备之间均以并行方式传送数据
串行接口采用串行传送方式,数据的所有位按顺序逐位输入或输出。一般情况下,串行接口与I/O设备之间采用串行传送方式,而串行接口与主机之间则采用并行方式(按照每个二进制位进行传输)
一般来说,并行接口适用于传输距离较近、速度相对较高的场合,接口电路相对简单;串行接口则适用于传输距离较远、速度相对较低的场合
-
主机访问I/O设备的控制方式:程序查询接口、中断接口、DMA接口、以及更复杂一些的通道控制器、I/O处理机等
-
时序控制方式:同步接口、异步接口
(二)主机与外设之间的连接
在不同的计算机系统中,主机与I/O设备之间的连接模式可能不同,常见的有总线型、星型、通道方式和I/O处理机方式等,其中总线方式是互连的基本方式,也是其他连接模式的基础
总线是一组能为多个部件分时共享的信息传送线,用来连接多个部件并为之提供信息交换通路。共享,是指连接到总线上的所有部件都可通过它传递信息;分时性是指某一时刻只允许一个部件将数据发送到总线上
总线不仅是一组信号线,还包括相关的协议(总线协议:信号线定义、数据格式、时序关系、信号电平和控制逻辑等)
(三)常见的内存与接口地址的编址方式
-
与主存中的存储单元统一编址
将I/O接口中有关的寄存器或存储部件看作存储器单元,与主存中的存储单元统一编址。内存地址和接口地址统一在一个公共的地址空间里,对I/O接口的访问就如同对主存单元的访问一样
优点:用于内存的指令全都可用于接口,增强了对接口的操作功能,无须设置专门的I/O操作指令
缺点:地址空间被分为两部分供接口与内存使用,会导致内存地址不连续。另外,由于对内存操作的指令和对接口操作的指令不加区分,读程序时就需根据参数定义表仔细加以辨认,才能区分指令是对内存操作还是对接口操作
-
I/O接口单独编址
缺点:通过设置单独的I/O地址空间,为接口中的有关寄存器或存储部件分配地址码,需要设置专门的I/O指令进行访问
优点:不占用主存的地址空间,访问主存的指令和访问接口的指令不同,在程序中很容易使用和辨认
(四)CPU与外设之间交换数据的方式
1、直接程序控制
-
主要特点:CPU直接通过I/O指令对I/O接口进行访问操作,主机与外设之间交换信息的每个步骤在程序中表示出来,整个的输入/输出过程是由CPU执行程序来完成的
-
具体实现方式:立即程序传送方式和程序查询方式
立即程序传送方式(为无条件传送或同步传送):I/O接口总是准备好接收来自主机的数据,呈随时准备向主机输入数据,CPU无须查看接口的状态,就执行输入/输出指令进行数据传送
程序查询方式:CPU通过程序查询外设的状态,判断外设是否准备好接收数据或准备好了向CPU输入的数据
-
程序查询方式
计算机系统中的外设如果是用查询方式工作,则CPU应对这些外设逐一进行查询,发现哪个外设准备就绪就对此外设服务
优点:简单且容易实现
缺点:降低了CPU的利用率,CPU的大量时间消耗在查询外设的状态上;对外部的突发时间无法做出实时响应
2、中断方式
-
定义
在CPU执行程序的过程中,由于某一个外部的或CPU内部事件的发生,使CPU暂时中止正在执行的程序,转去处理这一事件,当事件处理完毕后又回到原先被中止的程序,接着中止前的状态继续向下执行
中断源:引起中断的事件,根据引起中断的地方分为内部中断源、外部中断源
-
中断方式下的数据传送
当I/O接口准备好接收数据或准备好向CPU传送数据时,就发出中断信号通知CPU。对中断信号进行确认后,CPU保存正在执行的程序的现场,转而执行提前设置好的I/O中断服务程序,完成一次数据传送的处理
优点:CPU就不需要主动查询外设的状态,在等待数据期间可以执行其他程序,从而提高了CPU的利用率,能处理随机事件和实时任务
采用中断方式管理I/O设备,CPU和外设可以并行地工作
缺点:一次中断处理过程需要经历保存现场、中断处理和恢复现场等阶段,需要执行若干条指令才能处理一次中断事件;这种方式无法满足高速地批量数据传送要求,所以引入DMA方式
-
直接存储器存取方式(DMA)
通过硬件控制实现主存与I/O设备间地直接数据传送,数据的传送过程由DMA控制器(DMAC)进行控制,不需要CPU的干预
在DMA方式下,由CPU启动传送过程,即向设备发出“传送一块数据”的命令,在传送过程结束时,DMAC通过中断方式通知CPU进行一些后续处理工作
优点:简化了CPU对数据传送的控制,提高了主机与外设并行工作的程度,实现了快速外设和主存之间成批的数据传送,使系统的效率明显提高
缺点:由于DMA控制器只能控制简单的数据传送操作,因此对外设的管理和某些控制操作仍由CPU承担。所以在外设数量较多、输入/输出频繁的大、中型机中,通常设置通道使CPU摆脱管理和控制外设的沉重负担
-
通道控制方式
通道是一种专用控制器,它通过执行通道程序进行I/O操作的管理,为主机与I/O设备提供一种数据传输通道
用通道指令编制的程序存放在存储器中,当需要进行I/O操作时,CPU只要按约定格式准备好命令和数据,然后启动通道即可,通道则执行相应的通道程序,完成所要求的操作
优点:用通道程序可完成较复杂的I/O管理和预处理,从而在很大程度上将CPU从繁重的I/O管理工作中解脱出来,提高了系统的效率
随着通道的进一步发展,其结构越来越复杂,功能逐渐变得通用,发展为现在广泛使用的输入/输出处理器(I/O Processor,IOP)
查看全文
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dgrt.cn/a/71487.html
如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!
相关文章:
软考知识点—01计算机的基本组成—02存储系统
📢博客主页:盾山狂热粉的博客_CSDN博客-C、C语言,机器视觉领域博主📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!📢努力努力再努力嗷~~~✨一、存储系统 存储器是计算机系统中的记忆设备&……
都2022年了,你还不会在PyCharm中使用Git ?
🐟 个人主页 :https://blog.csdn.net/qq_52007481⭐个人社区:【小鱼干爱编程】📰最近专栏:Git教程专栏 文章目录在Pycharm中准备环境配置忽略文件(可选)初始化&添加&提交初始化添加暂存……
数字孪生在电网系统开发建设,如何选择可视化平台?
随着新能源发展规模持续增大,电网作为能源转换利用和输送配置的枢纽平台,其功能、结构和形态发生了深刻变化。同时,随着现代计算机技术发展,数字孪生成为电网向数字化转型、提高电网调度运行决策的准确性与实时性提供关键技术支撑……
LeetCode最大的异或
剑指 Offer II 067. 最大的异或
给你一个整数数组 nums ,返回 nums[i] XOR nums[j] 的最大运算结果,其中 0 ≤ i ≤ j < n 。 输入:nums [3,10,5,25,2,8] 输出:28 解释:最大运算结果是 5 XOR 25 28. 来源:LeetCo……
(六)Shell编程之函数、脚本引用、符号展开、重定向
一、定义函数 shell中函数的定义格式如下:
[ function ] funname [()]
{action;[return int;]
}说明:
可以带function fun()定义,也可以直接fun()定义,如果带function函数名后的小括号可以省略。返回值语句[return int;]可以不写……
武汉星起航——深度回顾!亚马逊卖家该知道的近期亚马逊相关消息
亚马逊推出发货软件Veeqo,供卖家免费使用
目前Veeqo已由亚马逊收购,将其在美国由付费转为免费推出供卖家使用。Veeqo有多渠道库存管理、多渠道运输管理、控制仓库管理、轻松管理采购订单、查看详细的效果报告和分析、智能手机应用以及适用于任何规模零售……
【Unity数据持久化_Json】(四)LitJson是什么?使用LitJson序列化、反序列化
一、LitJson是什么?
LitJson是一个第三方库,用于处理Json的序列化和反序列化 LitJson是用C#编写的,它体积小、速度快、易于使用 它可以很容易的嵌入代码中 只需要将LitJson代码拷贝到工程中即可
二、获取LitJson
1.前往LitJson官网 2.通过……
【JavaSE】之注解与反射
【JavaSE】注解与反射前言一、注解1.注解概述2.内置注解3.元注解4.自定义注解二、反射1.静态语言&动态语言2.反射概述3.Class类及获取Class类实例4.类的加载过程5.类加载器6.获取运行类的完整结构7.调用运行类的指定结构8.反射获取泛型信息9.反射获取注解信息后记前言
本文……
高新技术企业认定审计内容是什么?
高新技术企业认定的审计包括: 1、核心自主知识产权问题。《高新技术企业认定管理办法》规定,高新技术企业需通过自主研发、受让、受赠、并购等方式,获得对其主要产品(服务)在技术上发挥核心支持作用的知识产权的所有权。 2、人员判定问题。《高新……
数字孪生技术在交通运输领域管理应用【案例解析】
数字交通的理念是在现实交通的基础上,复制一个完整的数字映射,数字孪生交通的运 作管控和运行机制与现实交通都是一致的,因此可以用数字孪生交通预测现实交通的状态。 数字孪生技术在交通运输领域管理应用
北京智汇云舟科技有限公司成立于20……
深度分析Palantir的投资价值,Palantir2023年将实现强劲反弹?
来源:猛兽财经 作者:猛兽财经 在本文中,猛兽财经将通过对Palantir的股票关键指标、商业模式、盈利能力、影响Palantir2023年股价的关键利好因素等方面,对Palantir进行全面、深度的分析。 Palantir股票的关键指标 自从Palantir(PL……
Pandas入门实践2 -数据处理
为了准备数据进行分析,我们需要执行数据处理。在本节中,我们将学习如何清理和重新格式化数据(例如,重命名列和修复数据类型不匹配)、对其进行重构/整形,以及对其进行丰富(例如,离散化……
一、lua基础知识1
一、lua 的数据类型
–类型 a1; –number print(type(a)) –number b"HelloWorld"; print(type(b)) –string 两种数据类型 ctrue; print(type(c)) –boolean true 或者 false d print; d("HelloWorld"); print(type(d)); –function类型 ……
二、lua语言基础2
1.lua的类型有哪些?答:lua的数据类型有:number,string,nil function,table,thread,userdata(用户自定义的类型),boolean(布尔类型) 2.什么是尾调用,尾调用有什么优点尾调用:在一个函数的最后一步开始调用另……
quick-cocos2dx-luaUI控件讲解
–MyApp部分 require("config") require("cocos.init") require("framework.init") local MyApp class("MyApp", cc.mvc.AppBase) function MyApp:ctor() MyApp.super.ctor(self) end function MyApp:run() cc.FileUti……
quick-cocos2dx lua语言讲解 (动作,定时器,触摸事件,工程的类的讲解)
–MainScene部分
— display.newScene 创建一个场景 — 在quick里面我们的控件、精灵 一般是加载到场景上的 local MainScene class("MainScene", function() return display.newScene("MainScene") end) function MainScene:ctor() –创……
使用quick-cocos2dx-lua 实现的小游戏(包含碰撞检测,触屏发子弹)
–主界面local MainScene class("MainScene", function()return display.newScene("MainScene")end)ON true;function MainScene:ctor()local bg cc.Sprite:create("main_background.png");bg:setScale(2);bg:setPosition(display.cx,display……
cocos2d-js 中scrollview详解
/****
开头的一些废话:
1、多思考,善于思考
2、懂得变通
3、多多查询API首先复制一段 API中的源码:(UIScrollView.js)这段代码可以看出 scrollview
中的容器是一个node,并且他的位置是:代码最后……
cocos2d-js中的回调函数中世界坐标系和节点坐标系的相互转换
世界坐标系和节点坐标系都是OPENGL 坐标系 1、世界坐标系原点就是屏幕的左下角; 2、节点坐标系的原点就是一个节点的左下角; 3、两个坐标系可以通过已经写好的cocosAPI进行想换转换; 4、所有的节点需要转为一个节点上或者是统一的世界坐标系……
通过JavaScript实现漂浮
<html>
<head><meta http-equiv"Content-Type" content"text/html"; charset"gb2312" /><title>漂浮广告</title><style type"text/css">div{position:absolute;}</style>
</head>
&……
编程日记2023/4/16 15:01:23