概述
存储器的主要功能是存储程式和各种资料,并能在电脑运行过程中高速、自动地完成程式或资料的存取。存储器是具有“记忆”功能的设备,它採用具有两种稳定状态的物理器件来存储信息。这些器件也称为记忆元件。在电脑中採用只有两个数码“0”和“1”的二进位来表示资料。中国联保网记忆元件的两种稳定状态分别表示为“0”和“1”。日常使用的十进位数必须转换成等值的二进位数才能存入存储器中。电脑中处理的各种字元,例如英文字母、运算符号等,也要转换成二进位代码才能存储和操作。
存储器:存放程式和资料的器件
存储位:存放一个二进位数位的存储单元,是存储器最小的存储单位,或称记忆单元
存储字:一个数(n位二进位位)作为一个整体存入或取出时,称存储字
存储单元:存放一个存储字的若干个记忆单元组成一个存储单元
存储体:大量存储单元的集合组成存储体
存储单元地址:存储单元的编号
字编址:对存储单元按字编址
位元组编址:对存储单元按位元组编址
定址:由地址寻找资料,从对应地址的存储单元中访存资料。
构成
构成存储器的存储介质,目前主要採用半导体器件和磁性材料。存储器中最小的存储单位就是一个双稳态半导体电路或一个CMOS电晶体或磁性材料的存储元,它可存储一个二进位代码。由若干个存储元组成一个存储单元,然后再由许多存储单元组成一个存储器。一个存储器包含许多存储单元,每个存储单元可存放一个位元组(按位元组编址)。每个存储单元的位置都有一个编号,即地址,一般用十六进位表示。一个存储器中所有存储单元可存放资料的总和称为它的存储容量。假设一个存储器的地址码由20位二进位数(即5位十六进位数)组成,则可表示2的20次方,即1M个存储单元地址。每个存储单元存放一个位元组,则该存储器的存储容量为1MB。
分类
按存储介质分
半导体存储器:用半导体器件组成的存储器。
磁表面存储器:用磁性材料做成的存储器。
按存储方式分
随机存储器:任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关。
顺序存储器:只能按某种顺序来存取,存取时间和存储单元的物理位置有关。
按存储器的读写功能分
唯读存储器(ROM):存储的内容是固定不变的,只能读出而不能写入的半导体存储器。
随机读写存储器(RAM):既能读出又能写入的半导体存储器。
按信息的可储存性分
非永久记忆的存储器:断电后信息即消失的存储器。
永久记忆性存储器:断电后仍能储存信息的存储器。
按存储器用途分
根据存储器在电脑系统中所起的作用,可分为主存储器、辅助存储器、高速缓沖存储器、控製存储器等。
为了解决对存储器要求容量大,速度快,成本低三者之间的矛盾,目前通常採用多级存储器体系结构,即使用高速缓沖存储器、主存储器和外存储器。
名称简称用途特点
高速缓沖存储器 Cache 高速存取指令和资料存取速度快,但存储容量小
主存储器 记忆体存放电脑运行期间的大量程式和资料 存取速度较快,存储容量不大
外存储器 外存存放系统程式和大型资料档案及资料库 存储容量大,位成本低
工作原理
这裏只介绍动态存储器(DRAM)的工作原理。
动态存储器每片只有一条输入资料线,而地址引脚只有8条。为了形成64K地址,必须在系统地址汇流排和晶片地址引线之间专门设计一个地址形成电路。使系统地址汇流排信号能分时地加到8个地址的引脚上,借助晶片内部的行锁存器、列锁存器和解码电路选定晶片内的存储单元,锁存信号也靠着外部地址电路产生。
当要从DRAM晶片中读出资料时,CPU首先将行地址加在A0-A7上,而后送出RAS锁存信号,该信号的下降沿将地址锁存在晶片内部。接着将列地址加到晶片的A0-A7上,再送CAS锁存信号,也是在信号的下降沿将列地址锁存在晶片内部。然后保持WE=1,则在CAS有效期间资料输出并保持。
当需要把资料写入晶片时,行列地址先后将RAS和CAS锁存在晶片内部,然后,WE有效,加上要写入的资料,则将该资料写入选中的存贮单元。
由于电容不可能长期保持电荷不变,必须定时对动态存储电路的各存储单元执行重读操作,以保持电荷稳定,这个过程称为动态存储器重新整理。PC/XT机中DRAM的重新整理是利用DMA实现的。首先套用可程式定时器8253的计数器1,每隔1⒌12μs产生一次DMA请求,该请求加在DMA控製器的0通道上。当DMA控製器0通道的请求得到回响时,DMA控製器送出到重新整理地址信号,对动态存储器执行读操作,每读一次重新整理一行。
功能
存储器功能定址方式掉电后说明随机存取存储器(RAM)读、写随机定址资料丢失唯读存储器(ROM)读随机定址资料不丢失工作前写入资料快闪记忆体(Flash Memory)读、写随机定址资料不丢失
先进先出存储器(FIFO)读、写顺序定址资料丢失
先进后出存储器(FILO)读、写顺序定址资料丢失
层次
按照与CPU的接近程度,存储器分为记忆体储器与外存储器,简称记忆体与外存。记忆体储器又常称为主存储器(简称主存),属于主机的组成部分;外存储器又常称为辅助存储器(简称辅存),属于外部设备。CPU不能像访问记忆体那样,直接访问外存,外存要与CPU或I/O设备进行资料传输,必须通过记忆体进行。在80386以上的高档微机中,还配置了高速缓沖存储器(cache),这时记忆体包括主存与高速快取两部分。对于低档微机,主存即为记忆体。
把存储器分为几个层次主要基于下述原因:
1、合理解决速度与成本的矛盾,以得到较高的性能价格比。半导体存储器速度快,但价格高,容量不宜做得很大,因此仅用作与CPU频繁交流信息的记忆体储器。磁碟存储器价格较便宜,可以把容量做得很大,但存取速度较慢,因此用作存取次数较少,且需存放大量程式、原始资料(许多程式和资料是暂时不参加运算的)和运行结果的外存储器。电脑在执行某项任务时,仅将与此有关的程式和原始资料从磁碟上调入容量较小的记忆体,通过CPU与记忆体进行高速的资料处理,然后将最终结果通过记忆体再写入磁碟。这样的配置价格适中,综合存取速度则较快。
为解决高速的CPU与速度相对较慢的主存的矛盾,还可使用高速快取。它採用速度很快、价格更高的半导体静态存储器,甚至与微处理器做在一起,存放当前使用最频繁的指令和资料。当CPU从记忆体中读取指令与资料时,将同时访问高速快取与主存。如果所需内容在高速快取中,就能立即获取;如没有,再从主存中读取。高速快取中的内容是根据实际情况及时更换的。这样,通过增加少量成本即可获得很高的速度。
2、使用磁碟作为外存,不仅价格便宜,可以把存储容量做得很大,而且在断电时它所存放的信息也不丢失,可以长久储存,且复製、携带都很方便。
管理
伺服器在存储器环境按这样的方法分配存储器:在某个环境分配的存储器可以被环境析构器释放而不会影响其他环境中分配的存储器.所有存储器分配(通过 palloc 等)都被当作在当前环境的区域中分配存储器.如果你尝试释放(或再分配)不在当前环境的存储器,你将得到不可预料的结果.
建立存储器环境和切换存储器环境是 SPI 管理器中存储器管理器的任务.
SPI过程处理两种存储器环境:上层执行器存储器环境和过程存储器环境(如果已联接).
在一个过程与 SPI管理器联接之前,当前存储器环境是上层执行器环境,所以所有由过程自身通过 palloc/repalloc 或通过SPI 套用函式在联接到SPI 管理器之前分配的存储器都在这个环境裏.
在进行SPI_connect 调用之后,当前环境是过程自身所有的.通过 palloc/repalloc 或通过SPI 套用函式分配的存储器(除了SPI_copytuple,SPI_modifytuple,SPI_palloc 和SPI_repalloc 以外)都在这个环境中分配.
当进程与 SPI 管理器断开(通过调用SPI_finish)后,当前环境恢复为上层执行器环境并且所有在过程存储器环境分配的存储器都被释放,并且不可继续使用!
如果你想返回一些东西给上层执行器,那麽你必须为此在上层环境分配一片存储器!
SPI 不能自动释放在上层执行器环境裏分配的存储器!
SPI 在查询完成后自动释放查询执行期间的存储器分配!
实体
可以是一张卡,也可以是软碟,可以是活动的,也可以是固定的,用于储存图像。
cf快闪记忆体卡
一种迷你快闪记忆体卡,(compact flash card)。像pc卡那样插入数码相机,它可用适配器,(又称转接卡),使之适应标準的pc卡阅读器或其他的pc卡设备。cf存储卡的部分结构採用强化玻璃及金属外壳,cf存储卡採用standard ata/ide接口介面,配备有专门的pcm-cia适配器(转接卡),笔电的使用者可直接在pcmcia插槽上使用,使资料很容易在数码相机与电脑之间传递。
sm快闪记忆体卡
即smart media,智慧型媒体卡,一种存储媒介。sm卡採用了ssfdg/flash记忆体卡,具有超小超薄超轻等特徵,体积37(长)×45(宽)×0.76(厚)毫米,重量是1.8g,功耗低,容易升级,sm转换卡也有pcmcia介面,方便使用者进行资料传送。
memory stick duo
memory stick duo即微型记忆棒,微型记忆棒的体积和重量都为普通记忆棒的三分之一左右,目前最大存储容量可以达到4g。
sd快闪记忆体卡
即SecureDigital, 32×24×2.11 存储的速度快,非常小巧,面板和MMC一样,目前市面上较多数数码相机使用这种格式的存储卡,市场佔有率第一。
xd快闪记忆体卡
即Fuji film(富士胶卷)和OLYMPUS(奥林巴斯)联合推出的xD-Picture卡,体形很小,传输速度很快,不过价格很昂贵。
mmc快闪记忆体卡
即MultiMedia Card ,外型和SD完全一样,很多时候也通用。
微硬碟
是一种比较高端的存贮产品,目前“Hitachi(日立)”和国产品牌“南方汇通”都推出了自己的微硬碟产品。微型硬碟外型和CF卡完全一样,使用同一型号接口。
优卡
优卡是lexar公司生产的一种数码相机存储介质,外形和一般的cf卡相同,可以用在使用cf卡的数码相机、pda、mp3等数码设备上,同时可以直接通过usb接口与电脑系统在线上,用作移动存储器。
数位胶卷
数位胶卷是lexar公司生产的的一种数码相机的存储介质,同日立的sm卡、松下的sd卡、新力的memorystick属同类的数位存储媒体。
pc卡转换器
一种接外挂程式,可以把cf卡或sm卡插入其中,然后,整体作为一个pc卡插入电脑的pcmica插口,这是常用于便携机的一种通用扩展接口,可以接入pcmica记忆体卡、pcmica硬碟、pcmica数据机等。
选用
存储器的类型将决定整个嵌入式系统的操作和性能,因此存储器的选择是一个非常重要的决策。无论系统是採用电池供电还是由市电供电,套用需求将决定存储器的类型(易失性或非易失性)以及使用目的(存储代码、资料或者两者兼有)。另外,在选择过程中,存储器的尺寸和成本也是需要考虑的重要因素。对于较小的系统,微控製器自带的存储器就有可能满足系统要求,而较大的系统可能要求增加外部存储器。为嵌入式系统选择存储器类型时,需要考虑一些设计参数,包括微控製器的选择、电压範围、电池寿命、读写速度、存储器尺寸、存储器的特徵、擦除/写入的耐久性以及系统总成本。
选择存储器时应遵循的基本原则
1.内部存储器与外部存储器
一般情况下,当确定了存储程式代码和资料所需要的存储空间之后,设计工程师将决定是採用内部存储器还是外部存储器。通常情况下,内部存储器的性价比最高但弹性最低,因此设计工程师必须确定对存储的需求将来是否会成长,以及是否有某种途径可以升级到代码空间更大的微控製器。基于成本考虑,人们通常选择能满足套用要求的存储器容量最小的微控製器,因此在预测代码规模的时候要必须特别小心,因为代码规模增大可能要求更换微控製器。
目前市场上存在各种规模的外部存储器器件,我们很容易通过增加存储器来适应代码规模的增加。有时这意味着以封装尺寸相同但容量更大的存储器替代现有的存储器,或者在汇流排上增加存储器。即使微控製器带有内部存储器,也可以通过增加外部串列EEPROM或快闪记忆体来满足系统对非易失性存储器的需求。
2.引导存储器
在较大的微控製器系统或基于处理器的系统中,设计工程师可以利用引导代码进行初始化。套用本身通常决定了是否需要引导代码,以及是否需要专门的引导存储器。例如,如果没有外部的定址汇流排或串列引导接口,通常使用内部存储器,而不需要专门的引导器件。但在一些没有内部程式存储器的系统中,初始化是操作代码的一部分,因此所有代码都将驻留在同一个外部程式存储器中。某些微控製器既有内部存储器也有外部定址汇流排,在这种情况下,引导代码将驻留在内部存储器中,而操作代码在外部存储器中。这很可能是最安全的方法,因为改变操作代码时不会出现意外地修改引导代码。在所有情况下,引导存储器都必须是非易失性存储器。
3.配置存储器
对于现场可程式门阵列(FPGA)或片上系统(SoC),人们使用存储器来存储配置信息。这种存储器必须是非易失性EPROM、EEPROM或快闪记忆体。大多数情况下,FPGA採用SPI接口,但一些较老的器件仍採用FPGA串列接口。串列EEPROM或快闪记忆体器件最为常用,EPROM用得较少。
4.程式存储器
所有带处理器的系统都採用程式存储器,但设计工程师必须决定这个存储器是位于处理器内部还是外部。在做出了这个决策之后,设计工程师才能进一步确定存储器的容量和类型。当然有的时候,微控製器既有内部程式存储器也有外部定址汇流排,此时设计工程师可以选择使用它们当中的任何一个,或者两者都使用。这就是为什麽为某个套用选择最佳存储器的问题,常常由于微控製器的选择变得复杂起来,以及为什麽改变存储器的规模也将导致改变微控製器的选择的原因。
如果微控製器既利用内部存储器也利用外部存储器,则内部存储器通常被用来存储不常改变的代码,而外部存储器用于存储更新比较频繁的代码和资料。设计工程师也需要考虑存储器是否将被线上重新编程或用新的可程式器件替代。对于需要重编程功能的套用,人们通常选用带有内部快闪记忆体的微控製器,但带有内部OTP或ROM和外部快闪记忆体或EEPROM的微控製器也满足这个要求。为降低成本,外部快闪记忆体可用来存储代码和资料,但在存储资料时必须小心避免意外修改代码。
在大多数嵌入式系统中,人们利用快闪记忆体存储程式以便线上升级韧体。代码稳定的较老的套用系统仍可以使用ROM和OTP存储器,但由于快闪记忆体的通用性,越来越多的套用系统正转向快闪记忆体。
5.资料存储器
与程式存储器类似,资料存储器可以位于微控製器内部,或者是外部器件,但这两种情况存在一些差别。有时微控製器内部包含SRAM(易失性)和EEPROM(非易失)两种资料存储器,但有时不包含内部EEPROM,在这种情况下,当需要存储大量资料时,设计工程师可以选择外部的串列EEPROM或串列快闪记忆体器件。当然,也可以使用并行EEPROM或快闪记忆体,但通常它们只被用作程式存储器。
当需要外部高速资料存储器时,通常选择并行SRAM并使用外部串列EEPROM器件来满足对非易失性存储器的要求。一些设计还将快闪记忆体器件用作程式存储器,但保留一个扇区作为资料存储区。这种方法可以降低成本、空间并提供非易失性资料存储器。
针对非易失性存储器要求,串列EEPROM器件支持I2C、SPI或微线(Microwire)通讯汇流排,而串列快闪记忆体通常使用SPI汇流排。由于写入速度很快且带有I2C和SPI串列接口,FRAM在一些系统中得到套用。
6.易失性和非易失性存储器
存储器可分成易失性存储器或者非易失性存储器,前者在断电后将丢失资料,而后者在断电后仍可保持资料。设计工程师有时将易失性存储器与后备电池一起使用,使其表现犹如非易失性器件,但这可能比简单地使用非易失性存储器更加昂贵。然而,对要求存储器容量非常大的系统而言,带有后备电池的DRAM可能是满足设计要求且性价比很高的一种方法。
在有连续能量供给的系统中,易失性或非易失性存储器都可以使用,但必须基于断电的可能性做出最终决策。如果存储器中的信息可以在电力恢复时从另一个信源中恢复出来,则可以使用易失性存储器。
选择易失性存储器与电池一起使用的另一个原因是速度。尽管非易失存储器件可以在断电时保持资料,但写入资料(一个位元组、页或扇区)的时间较长。
7.串列存储器和并行存储器
在定义了套用系统之后,微控製器的选择是决定选择串列或并行存储器的一个因素。对于较大的套用系统,微控製器通常没有足够大的内部存储器,这时必须使用外部存储器,因为外部定址汇流排通常是并行的,外部的程式存储器和资料存储器也将是并行的。
较小的套用系统通常使用带有内部存储器但没有外部地址汇流排的微控製器。如果需要额外的资料存储器,外部串列存储器件是最佳选择。大多数情况下,这个额外的外部资料存储器是非易失性的。
根据不同的设计,引导存储器可以是串列也可以是并行的。如果微控製器没有内部存储器,并行的非易失性存储器件对大多数套用系统而言是正确的选择。但对一些高速套用,可以使用外部的非易失性串列存储器件来引导微控製器,并允许主代码存储在内部或外部高速SRAM中。
8.EEPROM与快闪记忆体
存储器技术的成熟使得RAM和ROM之间的界限变得很模糊,如今有一些类型的存储器(如EEPROM和快闪记忆体)组合了两者的特徵。这些器件像RAM一样进行读写,并像ROM一样在断电时保持资料,它们都可电擦除且可程式,但各自有它们优缺点。
从软体角度看,独立的EEPROM和快闪记忆体器件是类似的,两者主要差别是EEPROM器件可以逐位元组地修改,而快闪记忆体器件只支持扇区擦除以及对被擦除单元的字、页或扇区进行编程。对快闪记忆体的重新编程还需要使用SRAM,因此它要求更长的时间内有更多的器件在工作,从而需要消耗更多的电池能量。设计工程师也必须确认在修改资料时有足够容量的SRAM可用。
存储器密度是决定选择串列EEPROM或者快闪记忆体的另一个因素。市场上目前可用的独立串列EEPROM器件的容量在128KB或以下,独立快闪记忆体器件的容量在32KB或以上。
如果把多个器件级联在一起,可以用串列EEPROM实现高于128KB的容量。很高的擦除/写入耐久性要求促使设计工程师选择EEPROM,因为典型的串列EEPROM可擦除/写入100万次。快闪记忆体一般可擦除/写入1万次,只有少数几种器件能达到10万次。
今天,大多数快闪记忆体器件的电压範围为2.7V到3.6V。如果不要求位元组定址能力或很高的擦除/写入耐久性,在这个电压範围内的套用系统採用快闪记忆体,可以使成本相对较低。
9.EEPROM与FRAM
EEPROM和FRAM的设计参数类似,但FRAM的可读写次数非常高且写入速度较快。然而通常情况下,使用者仍会选择EEPROM而不是FRAM,其主要原因是成本(FRAM较为昂贵)、质量水準和供货情况。设计工程师常常使用成本较低的串列EEPROM,除非耐久性或速度是强製性的系统要求。
DRAM和SRAM都是易失性存储器,尽管这两种类型的存储器都可以用作程式存储器和资料存储器,但SRAM主要用于资料存储器。DRAM与SRAM之间的主要差别是资料存储的寿命。只要不断电,SRAM就能保持其资料,但DRAM只有极短的资料寿命,通常为4毫秒左右。
与SRAM相比,DRAM似乎是毫无用处的,但位于微控製器内部的DRAM控製器使DRAM的性能表现与SRAM一样。DRAM控製器在资料消失之前周期性地重新整理所存储的资料,所以存储器的内容可以根据需要保持长时间。
由于比特成本低,DRAM通常用作程式存储器,所以有庞大存储要求的套用可以从DRAM获益。它的最大缺点是速度慢,但电脑系统使用高速SRAM作为高速缓沖存储器来弥补DRAM的速度缺陷。
小结
尽管我们几乎可以使用任何类型的存储器来满足嵌入式系统的要求,但终端套用和总成本要求通常是影响我们做出决策的主要因素。有时,把几个类型的存储器结合起来使用能更好地满足套用系统的要求。例如,一些PDA设计同时使用易失性存储器和非易失性存储器作为程式存储器和资料存储器。把永久的程式储存在非易失性ROM中,而把由使用者下载的程式和资料存储在有电池支持的易失性DRAM中。不管选择哪种存储器类型,在确定将被用于最终套用系统的存储器之前,设计工程师必须仔细折中考虑各种设计因素。
测试
存储器测试的目的是确认在存储设备中的每一个存储位置都在工作。换一句话说,如果你把数50存储在一个具体的地址,你希望可以找到存储在那裏的那个数,直到另一个数写入。任何存储器测试的基本方法是,往存储器写入一些资料,然后根据记忆体设备的地址,校验读回的资料。如果所有读回的资料和那些写入的资料是一样的,那麽就可以说存储设备通过了测试。只有通过认真选择的一组资料你才可以确信通过的结果是有意义的。
当然,像刚才描述的有储器的测试不可避免地具有破坏性。在记忆体测试过程中,你必须覆盖它原先的内容。因为重写非易失性存储器内容通常来说是不可行的,这一部分描述的测试通常只适用于RAM 的测试。
一,普通的存储器问题
在学习具体的测试演算法之前,你应该了解可能遇到的各种存储器问题。在软体工程师中一个普遍的误解是,大部分的存储器问题发生在晶片的内部。尽管这类问题一度是一个主要的问题,但是它们在日益减少。存储设备的製造商们对于每一个批量的晶片都进行了各种产品后期测试。因此,即使某一个批量有问题,其中某个坏晶片进人到你的系统的可能性是微乎其微的。
你可能遇到的一种类型的存储晶片问题是灾难性的失效。这通常是在加工好之后晶片受到物理或者是电子损伤造成的。灾难性失效是少见的,通常影响晶片中的大部分。因为一大片区域受到影响,所以灾难性的失效当然可以被合适的测试演算法检测到。
存储器出问题比较普遍的原因是电路板故障。典型的电路板故障有:
(1)在处理器与存储设备之间的连线问题
(2)无存储器晶片
(3)存储器晶片的不正确插人
二,测试策略
最好有三个独立的测试:资料汇流排的测试、地址汇流排的测试以及设备的测试。前面两个测试针对电子连线的问题以及晶片的不正确插入;第三个测试更倾向于检测晶片的有无以及灾难性失效。作为一个意外的结果,设备的测试也可以发现控製汇流排的问题,尽管它不能提供关于问题来源的有用信息。
执行这三个测试的顺序是重要的。正确的顺序是:首先进行资料汇流排测试,接着是地址汇流排测试,最后是设备测试。那是因为地址汇流排测试假设资料汇流排在正常工作,除非资料汇流排和地址汇流排已知是正常的,否则设备测试便毫无意义。如果任何测试失败,你都应该和一个硬体工程师一起确定问题的来源。通过查看测试失败处的资料值或者地址,应该能够迅速地找出电路板上的问题。
1,资料汇流排测试
我们首先要测试的就是资料汇流排。我们需要确定任何由处理器放置在资料汇流排上的值都被另一端的存储设备正确接收。最明显的测试方法就是写人所有可能的资料值并且验证存储设备成功地存储了每一个。然而,那并不是最有效率的测试方法。一个更快的测试方法是一次测试汇流排上的一位。如果每一个资料上可被设定成为 0 和1,而不受其他资料位的影响,那麽资料汇流排就通过了测试。
2,地址汇流排测试
在确认资料汇流排工作正常之后,你应该接着测试地址汇流排。记住地址汇流排的问题将导致存储器位置的重叠。有很多可能重叠的地址。然而,不必要测试每一个可能的组合。你应该努力在测试过程中分离每一个地址位。你只需要确认每一个地址线的管脚都可以被设定成0和 1,而不影响其他的管脚。
3,设备测试
一旦你知道地址和资料汇流排是正确的,那麽就有必要测试存储设备本身的完整性。要确认的是设备中的每一位都能够保持住0和 1。这个测试实现起来十分简单,但是它花费的时间比执行前面两项测试花费的总时间还要长。
对于一个完整的设备测试,你必须访问(读和写)每一个存储位置两次。你可以自由地选择任何资料作为第一步测试的资料,只要在进行第二步测试的时候把这个值求反即可。因为存在没有存储器晶片的可能性,所以最好选择一组随着地址变化(但是不等于地址)的数。
最佳化措施
目前市场上并不缺少提高资料存储效率的新技术,然而这些新技术绝大多数都是关注备份和存档的,而非主存储。但是,当企业开始进行主存储资料缩减时,对他们来说,了解主存储最佳化所要求的必要条件十分重要。
主存储,常常被称为1级存储,其特征是存储活跃资料――即经常被存取并要求高性能、低时延和高可用性的资料。主存储一般用于支持关键任务套用,如资料库、电子邮件和交易处理。大多数关键套用具有随机的资料取存模式和不同的取存要求,但它们都生成机构用来运营它们的业务的大量的资料。因此,机构製作资料的许多份拷贝,复製资料供分布使用,库存资料,然后为安全储存备份和存档资料。
绝大多数资料是起源于主资料。随着资料存在的时间增加,它们通常被迁移到二级和三级存储储存。因此,如果机构可以减少主资料存储佔用空间,将能够在资料生命期中利用这些节省下来的容量和费用。换句话说,更少的主存储佔用空间意味着更少的资料复製、库存、存档和备份。
尝试减少主存储佔用空间存储管理人员可以考虑两种减少资料的方法:即时压缩和资料去重。
直到不久前,由于性能问题,资料压缩一直没有在主存储套用中得到广泛套用。然而,Storwize等厂商目前提供利用即时、随机存取压缩/解压技术将资料佔用空间压缩15:1的解决方案。更高的压缩率和即时性能使压缩解决方案成为主存储资料缩减的可行的选择。
在备份套用中广泛採用的资料去重技术也在被套用到主存储。目前为止,资料去重面临着一大挑战,即资料去重处理是离线处理。这是因为确定数量可能多达数百万的档案中的多余的资料块需要大量的时间和存储处理器做大量的工作,因此非常活跃的资料可能受到影响。当前,推出资料去重技术的主要厂商包括NetApp、Data Domain和Ocarina Networks。
部署主存储最佳化解决方案有6项要求:
一、零性能影响
与备份或存档存储不同,活跃资料集的性能比能够用某种形式的资料缩减技术节省的存储容量更为关键。因此,选择的资料缩减技术必须不影响到性能。它必须有效和简单;它必须等价于“拨动一个开关,就消耗更少的存储”。
目前,活跃存储缩减解决方案只在需要去重的资料达到非活跃状态时才为活跃存储去重。换句话说,这意味着实际上只对不再被存取但仍储存在活跃存储池中的档案――近活跃存储级――进行去重。
去重技术通过建议只对轻I/O工作负载去重来避免性能瓶颈。因此,IT基础设施的关键组件的存储没有得到最佳化。资料库排在关键组件清单之首。由于它们是1级存储和极其活跃的组件并且几乎始终被排除在轻工作负载之外,去重处理从来不分析它们。因此,它们在主存储中佔据的空间没有得到最佳化。
另一方面,即时压缩系统即时压缩所有流经压缩系统的资料。这导致节省存储容量之外的意外好处:存储性能的提高。当所有资料都被压缩时,每个I/O请求提交的资料量都有效地增加,硬碟空间增加了,每次写和读操作都变得效率更高。
实际结果是佔用的硬碟容量减少,整体存储性能显着提高。
主存储去重的第二个好处是所有资料都被减少,这实现了包括资料库在内的所有资料的容量节省。尽管Oracle环境的即时资料压缩可能造成一些性能问题,但迄今为止的测试表明性能提高了。
另一个问题是对存储控製器本身的性能影响。人们要求今天的存储控製器除了做伺服硬碟外,还要做很多事情,包括管理不同的协定,执行复製和管理快照。再向这些功能增加另一个功能可能会超出控製器的承受能力――即使它能够处理额外的工作负载,它仍增加了一个存储管理人员必须意识到可能成为潜在I/O瓶颈的过程。将压缩工作交给外部专用设备去做,从性能问题中消除了一个变数,而且不会给存储控製器造成一点影响。
二、高可用性
许多关注二级存储的资料缩减解决方案不是高可用的。这是由于它们必须立即恢复的备份或存档资料不像一级存储中那样关键。但是,甚至在二级存储中,这种概念也逐渐不再时兴,高可用性被作为一种选择增加到许多二级存储系统中。
可是,高可用性在主存储中并不是可选的选项。从资料缩减格式(被去重或被压缩)中读取资料的能力必须存在。在资料缩减解决方案中(其中去重被集成到存储阵列中),冗余性是几乎总是高可用的存储阵列的必然结果。
在配件市场去重系统中,解决方案的一个组件以资料的原始格式向客户机提供去重的资料。这个组件就叫做读出器(reader)。读出器也必须是高可用的,并且是无缝地高可用的。一些解决方案具有在发生故障时在标準伺服器上载入读出器的能力。这类解决方案经常被用在近活跃的或更合适的存档资料上;它们不太适合非常活跃的资料集。
多数在线上压缩系统被插入系统中和网路上,放置(逻辑上)在交换机与存储之间。因此,它们由于网路基础设施级上几乎总是设计具有的高可用性而取得冗余性。沿着这些路径插入在线上专用设备实现了不需要IT管理人员付出额外努力的无缝的故障切换;它利用了已经在网路上所做的工作。
三、节省空间
部署这些解决方案之一必须带来显着的容量节省。如果减少佔用容量的主存储导致低于标準的使用者性能,它没有价值。
主资料不具有备份资料通常具有的高冗余存储模式。这直接影响到整体容量节省。这裏也有两种实现主资料缩减的方法:资料去重和压缩。
资料去重技术寻找近活跃档案中的冗余资料,而能取得什麽水準的资料缩减将取决于环境。在具有高冗余水準的环境中,资料去重可以带来显着的ROI(投资回报),而另一些环境只能取得10%到20%的缩减。
压缩对所有可用资料都有效,并且它在可以为高冗余资料节省更多的存储容量的同时,还为主存储套用常见的更随机的资料模式始终带来更高的节省。
实际上,资料模式冗余度越高,去重带来的空间节省就越大。资料模式越随机,压缩带来的空间节省就越高。
四、独立于套用
真正的好处可能来自所有跨资料类型(不管产生这些资料是什麽套用或资料有多活跃)的资料缩减。虽然实际的缩减率根据去重资料的水準或资料的压缩率的不同而不同,但所有资料都必须合格。
当涉及存档或备份时,套用特有的资料缩减具有明确的价值,并且有时间为这类资料集定製缩减过程。但是对于活跃资料集,套用的特殊性将造成性能瓶颈,不会带来显着的容量缩减的好处。
五、独立于存储
在混合的厂商IT基础设施中,跨所有平台使用同样的资料缩减工具的能力不仅将进一步增加资料缩减的ROI好处,而且还简化了部署和管理。每一个存储平台使用一种不同的资料缩减方法将需要进行大量的培训,并造成管理级上的混乱。
六、互补
在完成上述所有最佳化主存储的工作后,当到了备份主存储时,最好让资料保持最佳化的格式(被压缩或去重)。如果资料在备份之前必须扩展恢复为原始格式,这将是浪费资源。
为备份扩展资料集将需要:
使用存储处理器或外部读出器资源解压资料;
扩展网路资源以把资料传送给备份目标;
把额外的资源分配给储存备份资料的备份存储设备。
同名歌曲
MEMORY
薛之谦词:薛之谦曲:薛之谦
当你的手从我的手中滑落
我不知道该怎麽隐藏
隐藏那滴流过嘴角很鹹的泪
事到如今已过了这麽多年
我还是无法忘记
分手的那天天空飘下雪
谁说时间可以沖淡一切
可是我怎麽做也做不到
记忆总是提醒我
要看着你睡着我才能睡
怎麽相信
失去你了
Memory
无法忘记当时我多麽爱你
Memory
你总是说我太孩子气
Memory
还记得在你楼下淋雨哭泣
Memory
你为我擦干说我傻的可以
Memory
事到如今我还是那麽爱你
Memory
你曾许诺过的我无法忘记
Memory
我会在分手的地方等你
Memory把结婚戒指给你
(独白)其实当我醒来的时候
已经只剩我自己了
但是我坚信
maybe it's just my memory
你曾深深的爱过我了
音乐剧《猫》主题曲《记忆》
Memory (from the Cats)
Daylight
See the dew on the sunflower
And a rose that is fading
Roses whither away
Like the sunflower
I yearn to turn my face to the dawn
I am waiting for the day . . .
Midnight
Not a sound from the pavement
Has the moon lost her memory?
She is smiling alone
In the lamplight
The withered leaves collect at my feet
And the wind begins to moan
Memory
All alone in the moonlight
I can smile at the old days
I was beautiful then
I remember the time I knew what happiness was
Let the memory live again
Every streetlamp
Seems to beat a fatalistic warning
Someone mutters
And the streetlamp gutters
And soon it will be morning
Daylight
I must wait for the sunrise
I must think of a new life
And I musn't give in
When the dawn comes
Tonight will be a memory too
And a new day will begin
Burnt out ends of smoky days
The stale cold smell of morning
The streetlamp dies, another night is over
Another day is dawning
Touch me
It's so easy to leave me
All alone with the memory
Of my days in the sun
If you touch me
You'll understand what happiness is
Look
A new day has begun















