存储器
- 格式:doc
- 大小:129.50 KB
- 文档页数:5
什么是存储器(存储器是计算机用来存储数据和指令的设备包括内存和外存)在计算机领域中,存储器是一种用于存储数据和指令的设备,它包括内存和外存。
存储器在计算机系统中扮演着重要的角色,它们负责存储和管理计算机使用到的数据和程序,为计算机的正常运行提供必要的支持和保障。
一、内存的概念和作用内存是计算机系统中的一种重要组成部分,它主要用于存储计算机运行时所需要的数据和指令。
内存是计算机的临时存储器,它具备存取速度快、容量较小的特点。
在计算机启动时,操作系统和各种应用程序会加载到内存中,当计算机需要执行某个程序时,它会从内存中读取相应的指令执行。
内存的速度非常快,能够满足计算机对数据和指令的高速读写需求。
二、内存的分类内存按照存储介质和特性可以分为主存和高速缓存。
1. 主存主存是计算机中的主要存储器,也是计算机系统的核心组成部分。
主存储器以芯片的形式集成在计算机主板上,其容量通常以字节为单位。
主存有两个重要的特性,一是易失性,也就是说当计算机断电时,其中的数据将会丢失;二是可读写,在计算机运行时,可以通过读取和写入的方式对其进行操作。
2. 高速缓存高速缓存是主存的一种扩展,其作用是提高计算机的运行效率。
高速缓存的容量相对于主存要小得多,但其读写速度更快。
高速缓存通过存储计算机经常使用的数据和指令,以减少对主存的访问次数,从而提高计算机的运行速度。
高速缓存分为一级缓存(L1 Cache)、二级缓存(L2 Cache)和三级缓存(L3 Cache)等多级缓存,根据其与主存和处理器之间的距离和速度差异,也有不同的命名方式。
三、外存的概念和作用外存是计算机系统中的一种辅助存储设备,主要用于长期存储数据和程序。
与内存相比,外存的容量较大,但存取速度相对较慢。
外存的代表设备是硬盘,它能够稳定地存储大量的数据和程序,而且可以长期保存。
当计算机需要使用外存中的数据和程序时,它们将会被加载到内存中进行处理。
四、内存与外存的比较内存和外存在计算机系统中有不同的作用和特点,它们各自适用于不同的存储需求。
存储器的分类与选择存储器是计算机系统中重要的组成部分,它用于存储和读取数据。
在计算机发展的过程中,存储器也经历了多个阶段的发展与改进。
本文将介绍存储器的分类及如何选择适合自己需求的存储器。
一、存储器的分类1. 随机存取存储器(Random Access Memory,简称RAM):RAM是计算机中最常见的存储器类型,其特点是可以随机存取数据,并且读写速度快。
目前,常见的RAM包括动态随机存取存储器(Dynamic RAM,简称DRAM)和静态随机存取存储器(Static RAM,简称SRAM)。
2. 只读存储器(Read-Only Memory,简称ROM):ROM是一种只能读取数据而不能写入数据的存储器。
它的内容在制造过程中被固化,无法更改。
常见的ROM包括只读存储器(Read-Only Memory,简称PROM)、可擦写可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM)和电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM)。
3. 快闪存储器(Flash Memory):快闪存储器是一种介于RAM和ROM之间的存储器类型。
它有着类似于RAM的读写速度,同时又可以像ROM一样保持数据的稳定性。
快闪存储器被广泛应用于个人电脑、平板电脑、智能手机等电子设备中。
二、如何选择存储器在选择存储器时,我们需要根据自己的需求来确定合适的存储器类型和规格。
1. 容量:首先,我们需要根据自己的需求确定所需的存储容量。
如果只是进行简单的办公、上网等任务,较小的存储容量可能已经足够。
但是,如果需要处理大量的数据、运行复杂的软件或者进行大型游戏,较大的存储容量将更加适合。
2. 读写速度:除了容量外,读写速度也是一个需要考虑的因素。
如果你需要进行大量的数据传输或者执行高性能的任务,选择读写速度较快的存储器将能提升工作效率。
存储器的基本概念及分类
存储器(Memory)是计算机中用于存储和读取数据的一种硬件设备,是数据和程序的载体。
存储器分为内存和外存,其中内存又可分为读写存储器和只读存储器。
1. 读写存储器(RAM)
读写存储器(Random Access Memory,RAM)是计算机中内存的一种,能够进行随机读写操作,数据可被任意读取。
RAM分为静态随机存取存储器(SRAM)和动态随机存取存储器(DRAM)两类。
- 静态随机存取存储器(SRAM):采用Flip-Flop触发器存储数据,速度快,但容量小。
- 动态随机存取存储器(DRAM):采用电容存储数据,速度慢,但容量大,常用于主存储器。
2. 只读存储器(ROM)
只读存储器(Read-Only Memory,ROM)是计算机中用于存放固定数据和程序的一种存储器,数据无法被改变。
ROM分为可编程只读存储器(PROM)、擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)和闪存等。
- 可编程只读存储器(PROM):可以根据需要编程,但只能进行一次,不可擦除重写。
- 擦除可编程只读存储器(EPROM):需要使用紫外线灯进行擦除,可以被重新编程,但擦除次数有限。
- 电可擦除可编程只读存储器(EEPROM):可以通过电信号进行擦除,可重复擦写。
- 闪存:一种快速可擦写非易失性存储器,常用于存储固件和操作系统。
3. 外部存储器
外部存储器(External Storage)用于长时间存放数据,分为磁盘存储器、光盘存储器、固态硬盘等。
它们的特点是容量大,但读写速度较内存慢。
常用于备份数据、扩展存储等方面。
什么是计算机存储器常见的计算机存储器有哪些计算机存储器是一种用来存储数据和指令的设备,是计算机系统的一个重要组成部分。
计算机存储器一般分为主存储器和辅助存储器两种。
主存储器:主存储器是计算机中用来存储数据和指令的地方,也被称为内存。
主存储器是在计算机运行时被CPU直接访问的一种存储设备,主要用来存储当前正在执行的程序和数据。
主存储器的速度比较快,但容量有限。
主存储器的存取速度取决于存储介质的类型,常见的主存储器包括动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)。
1. DRAM(Dynamic Random Access Memory):动态随机存取存储器是一种常见的主存储器,使用电容和晶体管来存储数据。
DRAM需要不断地刷新存储的数据,因此速度比较慢,但成本低廉,容量大。
DRAM广泛应用于个人电脑和其他计算设备上。
2. SRAM(Static Random Access Memory):静态随机存取存储器也是一种常见的主存储器,使用触发器来存储数据。
相比于DRAM,SRAM的读写速度更快,但成本更高,容量较小。
SRAM通常用于缓存和高性能计算机系统中。
辅助存储器:辅助存储器是计算机中用来存储数据和程序的一种永久性存储设备,主要是用来存储不常用的数据和程序。
辅助存储器通常比主存储器容量更大,但速度较慢。
1. 硬盘驱动器(Hard Disk Drive,HDD):硬盘驱动器是一种机械存储设备,使用磁性记录技术来存储数据。
硬盘驱动器容量大,价格便宜,但读写速度较慢。
硬盘驱动器广泛用于个人电脑和服务器上。
2. 固态硬盘(Solid State Drive,SSD):固态硬盘是一种电子存储设备,使用闪存芯片来存储数据。
固态硬盘读写速度快,耐用性强,但价格相对较高。
固态硬盘逐渐取代了传统的硬盘驱动器,成为计算机存储器的主要形式之一3.光盘和闪存盘(CD-ROM、DVD-ROM、USB闪存盘):光盘和闪存盘是一种便携式存储设备,用来存储数据和程序。
存储器分类及其特点存储器是计算机重要的组成部分,用于存储和读取数据。
根据存储器的特点和功能分类,可以将存储器分为多种类型,包括主存储器、辅助存储器和缓存存储器等。
1.主存储器主存储器是计算机中最重要的一种存储器,也被称为内存或随机存取存储器(RAM)。
主存储器在计算机工作过程中扮演了数据传输和运算的角色。
其特点如下:(1)速度快:主存储器与中央处理器(CPU)之间的数据传输速度非常快,可以满足CPU对数据的高速读写要求。
(2)容量限制:主存储器容量相对较小,通常以MB或GB为单位。
较小的容量限制了主存储器所能存储的数据量。
(3)易失性:主存储器是易失性存储器,意味着当计算机断电或重启时,存储在主存储器中的数据将会丢失。
2.辅助存储器辅助存储器是计算机中用于长期存储数据的一种存储器。
它可以永久性地保存数据,即使在计算机关机或断电的情况下。
辅助存储器的特点如下:(1)容量大:相比主存储器,辅助存储器的容量通常更大,可以以TB或PB为单位。
这使得辅助存储器可以存储大量的数据。
(2)速度慢:辅助存储器与CPU之间的数据传输速度相对较慢,远远低于主存储器的速度。
这增加了数据的访问时间。
(3)非易失性:与主存储器不同,辅助存储器是非易失性的,可以永久性地保存数据。
常见的辅助存储器包括硬盘驱动器(HDD)、光盘、闪存盘、磁带机等。
3.缓存存储器缓存存储器是位于计算机中的高速存储器,用于减少CPU对主存储器的访问时间。
缓存存储器的特点如下:(1)非常快:缓存存储器的读写速度非常快,远快于主存储器。
这使得缓存存储器成为提高计算机性能的关键因素。
(2)容量小:相比主存储器和辅助存储器,缓存存储器的容量通常较小。
由于成本和空间限制,通常只有几MB或几十MB的容量。
(3)层次结构:计算机系统中通常有多级缓存存储器,按照速度和容量的关系进行划分,分为一级缓存、二级缓存、三级缓存等。
每一级缓存存储器都负责存储最常用的数据。
计算机存储器的种类及其特点计算机存储器是计算机系统中的重要组成部分,用于存储程序和数据。
随着计算机技术的进步,各种类型的计算机存储器相继出现。
本文将详细介绍计算机存储器的种类及其特点。
一、内存的种类及特点1. 随机存储器(RAM)随机存储器(Random Access Memory,RAM)是计算机中应用最为广泛的存储器。
RAM以字节为单位存储数据,并可以随机访问任意存储单元,具有读写速度快的特点。
RAM一般分为静态随机存储器(SRAM)和动态随机存储器(DRAM)两种。
SRAM的读写速度更快,但体积较大,价格较高;DRAM则具有体积小、价格低的优势。
2. 只读存储器(ROM)只读存储器(Read-Only Memory,ROM)是一种只能读取而不能写入的存储器。
ROM中的数据在生产之前被录入,用户不能更改。
ROM一般用于存储系统的启动程序和固化数据,具有稳定性高、可靠性好的特点。
3. 可擦写可编程存储器(EPROM)可擦写可编程存储器(Erasable Programmable Read-Only Memory,EPROM)是一种介于ROM和RAM之间的存储器。
EPROM中的数据可被用户编程,并可多次擦写。
EPROM的一大特点是数据可以长期保存,即使在断电或断电后重新上电也能保持数据。
但擦写需要特殊的设备和操作。
4. 闪存存储器闪存存储器(Flash Memory)是一种可擦写的存储器,也被广泛用于存储数据。
与EPROM相比,闪存存储器具有容量大、体积小、功耗低、擦写速度快等优点。
闪存存储器一般分为NAND Flash和NOR Flash两种类型,用途不同。
NANDFlash主要用于存储大容量数据,如移动设备中的存储卡;而NOR Flash更适用于读取频繁的应用,如固态硬盘。
二、外存的种类及特点1. 硬盘驱动器(HDD)硬盘驱动器(Hard Disk Drive,HDD)是一种机械式的存储设备,常用于计算机的外部存储。
4.6.2 虚拟存储器的管理与保护机制
1. 虚拟存储管理机制
和三种地址映像方式相对应,虚拟存储管理机制也有三种,即段式管理、页式管理和段页式管理。
段式管理的虚拟存储器是以各级存储器的分段作为内存分配、管理和保护的基础。
段的大小取决于程序的逻辑结构,可长可短,一般将一个具有共同属性的程序代码和数据定义在一个段中。
每个任务和进程对应一个段表(Segment Table),段表由若干段表项(STE)组成,每个段表项对应一个逻辑段,内含地址映像信息(段基址和段长度)等内容。
段表在内存的位置由段表基址寄存器指明。
页式管理的虚拟存储器将虚拟存储空间、内存空间和辅存(外存)空间划分成固定大小的块——页,然后以页为单位来分配、管理和保护内存。
每个任务或进程对应一个页表(Page Table),页表由若干页表项(PTE)组成,每个页表项对应一个虚页,内含有关地址映像的信息和一些控制信息。
页表在内存的位置由页表基址寄存器定位。
段页式管理虚拟存储器在分段的基础上再分页,即每段分成若干个固定大小的页。
每个任务或进程对应有一个段表,每段对应有自己的页表。
在访问存储器时,由CPU经页表对段内存储单元进行寻址。
在段页式虚拟存储器中,从虚地址变换为实地址要经过两级表的转换,使访问效率降低,速度变慢。
为此,常为每个进程引入一个由相联存储器构成的转换后援缓冲器TLB,它相当于Cache中的地址索引机构,里面存放着最近访问的内存单元所在的段、页地址信息。
80386/80486和Pentium系列处理器采用的都是段页式虚拟存储管理。
以80386/80486为例,其段页式管理的实现机制是:
首先使用分段机制,将虚拟地址空间分成一个个大小不等的逻辑段。
将虚拟地址用间接指向段基址的段选择符和段内偏移量两部分表示,并将虚拟地址转换为一个中间地址空间的地址,这一中间地址空间称为线性地址空间,其地址称为线性地址。
线性地址空间是一个不分段的连续的地址空间。
然后再使用分页机制,将线性地址空间分成若干固定大小的页,将线性地址用页基址和页内偏移量表示,并将线性地址转换为物理地址。
图4.25给出的是该管理机制的基本思想示意图。
图4.25 80486存储器分段分页机制示意图
虚拟地址空间是二维的,它所包含的段数最大可到16K个,每个段最大可到4GB,从而构成64KGB(=64TB)容量的庞大虚拟地址空间。
线性地址空间和物理地址空间都是一维的,其容量为232=4GB。
事实上,分页机制可通过设置80386/80486中控制寄存器CR0的PG位为1或0来确定是否启用,当被禁止使用时,线性地址就是物理地址。
分段是虚拟存储器管理机制的基础。
虚拟地址中的段部分指的是CS、DS、SS、ES、GS、FS六个16位段寄存器,由段选择符标识,段选择符在程序执行时装载到相应的段寄存器中;偏移量的计算方法因指令的寻址方式不同而异,由于80486的寻址方式很多,所以为偏移量的形成提供了灵活的机制。
每个段均由三个参数定义:
(1) 段的基地址,即线性空间中段的开始地址。
它是线性地址空间对应于段内偏移量为0的虚拟地址。
(2) 段的界限(Limit),即指段内可以使用的最大偏移量,它指明该段的长度。
启动分页功能时,段的最大长度为232=4GB,不启动分页功能时则为220=1MB。
(3) 段属性,如可读出或写入段的特权级等。
以上三个参数都存储在段的描述符中。
分页是存储器管理机制的第二部分。
当控制寄存器CR0中的PG位等于1时,启用分页机制。
它把线性地址空间中的任何一页映射到物理地址空间的一页。
无论分段、分页,都是使用驻留在内存中的转换表来完成相应的地址变换,如图4.26所示。
图4.26 80486的虚拟地址向物理地址的转换
虚拟地址—线性地址变换时要访问段描述符,而段描述符又存于段描述符表中。
显然,有多少个段就有多少个段描述符,因此最多有16K个段描述符;每个段描述符中含有32位段基址,以选择4G个内存地址中之任一个作为基地址;为了区分16K个段描述符,段选择符应使用14位。
32位段基址加上虚拟地址中的32位段内偏移量,即得32位线性地址。
分页转换函数由称为页表的存储器常驻表来描述。
为了节省页表所占的内存空间,80486中采用两级页表机构:第一级用210个表项构成页目录表,每项4个字节,共占4KB内存;第二级再用210个表项构成页表,每项也是4个字节,共占4KB内存。
这样,两级表组合起来只占8KB内存,即可描述220个表项。
(如果用一级页表机构来描述这220个表项,则页表所占内存将达4MB(4B×220)。
)
为了与两级页表机构相适应,将32位线性地址分成页目录索引(10位)、页表项索引(10位)和页内偏移量(12位)三个字段。
通过依次访问页目录表和页表,即可找到与线性地址相对应的
物理地址所在的页号(即物理地址的31~12位),再根据页内偏移量,即可知道物理地址。
采用两级页表机构固然具有节省内存的优点,但也将带来多访问一级页表、使地址变换速度
图4.27 TLB结构及原理示意图
降低的缺陷。
为此,80486的页部件中特设置了一个转换后援缓冲器TLB,将当前最可能访问的32个页表项存于其中,构成一个内存页表的局部副本。
TLB的结构及地址变换原理如图4.27所示。
TLB由两个字段组成:页表数据字段中存有页表项;标记字段里存有与其页表项对应的线性地址的位31~12。
TLB中共可保存32个页表项。
页部件将线性地址变换为物理地址时,先用TLB的标记字段来搜索线性地址位31~12,若搜索到,说明TLB命中,则使用TLB中对应的页表数据字段作为页物理地址位31~12;若未搜索到(TLB未命中),才经内存中的二级页表机构去寻找物理地址页号(页表项),同时将它复制到TLB中。
如复制时TLB已满,则按LRU算法进行置换。
Pentium处理器与80386/80486的段页式管理机制大同小异,小异主要异在三方面:一是存储管理部件MMU中的分段部件SU和分页部件PU,在Pentium中均允许单独工作和同时工作。
因此,其保护虚地址方式又可细分为分段不分页方式、分段分页方式和分页不分段方式三种,前两种方式下,一个进程可拥有的最大虚拟地址空间和80386/80486中是一样的,也为246=64TB,第三种方式下则为232=4GB。
二是分页机制方面,Pentium除继承了386/486的4KB 分页方式,通过使用两级页表来进行地址转换外,还增加了一种4MB分页方式。
4MB分页方式使用单级页表,把32位线性地址分为高10位的页面(页号)和低22位的页内偏移量两个字段,这样,虚—实地址转换时可减少一次内存访问,加速转换过程。
三是片内TLB方面,Pentium 中设置了一个指令Cache TLB和两个数据Cache TLB,指令TLB有32项,采用单端口结构,对4KB分页方式和4MB分页方式都支持;两数据TLB中一个有64项,支持4KB分页方式,一个有8项,支持4MB分页方式,两个都是双端口结构,可同时为两次数据访问提供互不相
关的两个物理地址。
TLB实质上也是一种高速缓存器(Cache),两者都依赖于程序访问的局部性原理而工作,结构和操作都有很多相似处。
但功能显著不同:TLB接受的是访问存储器的虚拟地址(线性地址),TLB命中可立即得到访问内存的物理地址,未命中则要访问内存中的页表以完成地址转换,并置换TLB中一项;而Cache接受的是访问内存的物理地址,Cache命中立即得到的是该地址单元中的内容,未命中则要以此地址去访问内存以获得所需的操作数,并置换Cache 中一行。
如果TLB和一级Cache接连命中,那么CPU中的逻辑地址只要一给出,几乎立即就可得到操作数。
地址转换和取数据都在CPU内部完成,指令执行速度必然加快。
Pentium 正是以这种方式为指令流水线的高速运行提供支持。