从我的世界这一款游戏去看存储器

机组和OS都有存储系统,所以为了区分开来我把它稍微分类,再机组模块仅仅总结了存储器的种类,结构,指标,以及一些常用存储器。而在OS中我则是以OS控制存储的方式记录存储管理的一些事情。
那么让我们开始吧。

初识存储器

首先我们来说一下存储器,就我个人而言我喜欢这样理解,我不知道大家有没有玩过开放世界游戏,比如我的世界。我们有一个背包,有一个箱子,一个腰带;腰带的东西我们仅仅通过控制鼠标滑轮就可以调用它们,背包的东西我们需要打开放到这一行来进行调用,箱子里的东西我们则可以通过两种方式,一种是放到背包,背包放腰带,一种是直接放到腰带里。
大家可以感受到,他们的调用时间大不一样。但是我们还知道因为腰带,背包,箱子的容量依次增大,我们需要把暂时不用的东西放到不同的容器(存储器中)进去,还有一点要表明当你被僵尸打死或者跌落悬崖等意外死亡,背包和腰带的东西会丢失但是箱子里的东西应该不会丢,而且箱子里东西除了史蒂夫别的角色也可以拿。
现在让我们从游戏回到机组。

我们按作用分

高速缓冲存储器(腰带):简称是Cache,他可以存放当前你正在执行的程序段,比如你探险路上需要砍树,这个斧头就在你的Cache上方便你快速拿取,同样的害怕遇到僵尸所以你还在Cache里放了一把剑,你放心的走着,因为你知道你只需要迅速滚动鼠标滑轮就可以使用它们。CPU快速调用Cache如出一辙。
它的特点:容量最小,速度最快,价格最贵。
辅助存储器(箱子):这里边的东西可以永久保存,当然暂时不需要的东西也可以先放进去需要的时候再拿。
所以它的特点:容量极大,成本低;唯一不好的是存取速度太慢。
主存储器(背包):背包里存的是你本次探险需要的装备和食物,那么主存储器就是用来存储大量计算机运行期间的程序和数据,你可以随时的进行访问,最重要的你可以随时把他放到腰带上,去使用它。当然出门的时候你从箱子里拿食物和装备是必须的事情。
所以它的特点:容量相对较小,成本较高,存取速度稍快。

下面是一些其他的分类方式,大家也可以看看,其实根据名字我们也能感觉到哪个属于哪一类。

我们按存储介质分

1)磁盘表面存储器:磁盘,磁带

2)磁芯存储器,半导体存储器:MOS型存储器,双极型存储器

3)光存储器:光盘

我们按存取方式分

1)随机存储器(RAM):存储单元可以随机存储,并且存取时间和物理地址无关。读写方便,使用灵活,主要作用于主存或高速缓冲存储器。RAM分动态(电容充电原理寄存)和静态(触发器原理寄存)。

2)只读存储器(ROM):存储器的内容可以随机读出,但是不能写入,也就是说信息一旦写入就不会改变,即使断电也不会消失。常放存放不变的程序,常量和汉字字库,它和RAM可以共同作为主存的一部分,一同构成主存的地址域。

注意:ROM派生的存储器也可以反复重写,ROM和RAM其实均为随机存储,因为ROM可以通过电擦除,紫外线擦除等方式进行写入,只读仅仅是保留了断电内容保留和随机读取的特性,但是写入速度比读取速度慢好多。

3)串行访问存储器:对存储单元进行读写操作时,需按其物理位置的先后顺序寻地址,包括顺序存储存储器(磁带,CD-ROM(只读性光盘存储器)),直接存取存储器(磁盘)。

顺序存储:存取时间的长短与信息在存储体上的位置有关,特点是存取速度慢。直接存储:介于顺序和随机之间:即先随机找个大的地方(如磁盘的磁道),在按顺序存储进行存储。

我们按信息的可保存性分

1)易失性存取:断电后存储信息就消失。

2)非易失性存取:断电后存储信息也不消失。ROM,磁表面,光存储器。

3)破坏性读出:数据被读出后就会被破坏。

4)非破坏性读出:不破坏数据的存储器。

注意:破坏性读出后会有一个再生操作,恢复被破坏的数据。

性能指标

那么让我们接着来大概了解一下,如何判断什么样的存储器是好存储器。
存储器的性能指标包括存储容量,存储速度和单位成本。三者相互制约我们想要的是一个空间大,速度快,成本低的存储器。

1.2.2.1 存储容量

存储字数X字长(1MB X 8);单位为B(1B=8b);

存储字数表示存储地址空间大小,字长是一次存取操作的数据量;

1.2.2.2 存储速度

数据传输速率=数据宽度/存储周期

存取时间:从启动存储器到完成该操作需要的时间(分为读出时间和写入时间)。

存取周期:指存储器完整运行一次所需要的时间,换句话说就是两次独立运行程序之间的最短时间间隔。(比存取时间多了一个恢复时间)。

主存带宽:也就是数据传输速率,一秒可以传多少数据。

存储器的层次结构

我们在我的世界中出门探险,我们的手上最多拿两个物件(左右手),我们最多再腰带上放一些常用物资,但是我们仅仅有这些是不够的,我们想要拿更多的东西,哪怕取的速度变慢点也是可以忍受的,所以我们利用我们的背包,可是每一次的探险都会有新的东西需要去带回来,背包似乎是不够大的,这些乱七八糟的收藏似乎平时也帮不上忙,我们做了箱子。而这便是存储层次的一个缩影:
为了解决容量大速度快和成本低这几个问题我们采用层次结构,与CPU离得最近的也就是寄存器,依次是Cache,主存,副存,磁盘,磁带与光盘。CPU的访问频率也依次下降,这些存储器的存取速度也一次下降,但是容量在增大,成本在降低。
注意
1)“Cache-主存”的结构主要是为了解决主存与CPU速度无法匹配的问题。
2)“主存-辅存”的结构则是为了解决内存容量的问题。
3)Cache和主存可以和CPU交换信息;
4)主存可以和Cache,辅存,CPU交换信息。

在“主存-辅存”这一层次不断发展,逐渐形成了虚拟存储系统,在这个系统中程序员编程的地址范围与虚拟存储器的地址空间相对应。对具有虚拟存储系统的计算机系统而言,编程可用的地址远大于主存空间。(具体后续我会在操作系统中说明)。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值