当前位置: 移动技术网 > 科技>操作系统>Linux > 计算机中存储体系的设计

计算机中存储体系的设计

2020年04月29日  | 移动技术网科技  | 我要评论

概述

在计算机运行过程中,存储器是各种信息存储和交换的中心,而计算机所有存储器所构成的存储系统更是整个计算机系统的核心组成部分。在一台计算机中通常有多个存储器:主存储器cache、通用寄存器磁盘寄存器各种缓冲存储器光盘存储器等。

为了评定不同存储器的性能差异,人们制定了一些主要的性能指标:速度,容量和价格。

其中速度我们用存储器的访问周期、读出时间、频带宽度等来进行表示。容量用字节b、千字节kb、兆字节mb和千兆字节gb等表示。价格则是用单位容量的价钱表示,例如$c/bit

讲了这么多存储器的内容,那什么叫做存储体系哪?

下边我们引入存储体系的定义:

两个或两个以上速度、容量和价格各不相同的存储器用硬件、软件、或软件与硬件相结合的方法连接建立起来的一个系统。

简单来说,就是一个将不同类型的存储器用软件或者硬件方法结合成一个整体。该系统对程序员透明,并且,从应用程序员来看,它仅仅是一个存储器。这个存储器的速度接近速度最快的那个存储器,存储容量与容量最大的那个存储器相等,单位容量的价格接近最便宜的那个存储器。

为了更加便于理解存储体系速度、容量和价格的关系,我们画出下图用更加严谨的方式来进行表述。

符号说明

\[m_i:i\text{号存储器} \]

\[t_i\text{:}i\text{存储器的速度性能} \]

\[s_i\text{:}i\text{号存储器的容量性能} \]

\[c_i\text{:}i\text{号存储的价格} \]

各个存储器的各个性能指标和其构成的存储体系的性能指标之间的关系为:

\[t≈min(t1,t2,……,tn),用存储周期表示 \]

\[s=max(s1,s2,……,sn),容量用mb或gb表示 \]

\[c≈min(c1,c2,……,cn),价格用每位的价格表示 \]

存储体系的分类

在计算机系统中一般来说存储器类别主要有cache、主存储器和辅助存储器三类组成,按照不同的组合方式构成了两种存储体系:

  1. chache存储体系:由cache和主存储器构成
    • 主要目的:提高存储器速度,或者说是为了贪图cache的存储速度
    • 系统程序员看:速度接近cache,存储器容量等于主存,每位的价格接近主存储器
  2. 虚拟存储体系:由主存储器和磁盘存储器构成
    • 主要目的:扩大存储器容量,或者说贪图磁盘存储器的容量。
    • 应用程序员看:速度接近主存储器,存储容量是虚拟地址空间,每位价格接近磁盘存储器。

看到这里可能大家会有疑问,三种存储器两两组合方式组中结果不是应该是三种吗?

或者说应该还有一种组合方式即cache+磁盘存储器??

坦白来讲此种存储体系理论上讲是可以有的,但是实际应用中,由于cache和虚拟存储器的速度差别太大,强行相互结合,根本不可能发挥出cache存储器的速度优势,实际上还会大大拖累cache的运行。因此此种组合方式在实际应用过程中根本不可能存在。

image-20200418100446764

存储效率

关于速度的评定我们一般通过,访问周期、存取周期、存储周期、存取时间等来进行表示。

关于这些指标的计算我们详细可以参照百度百科

提到了存储器的速度,我们就提另一个指标存储效率

首先我们给出命中率的定义:

\(m_1\)存储器中达到的访问效率,给出以下公式

相关文章:

验证码:
移动技术网