寄存器,内存,硬盘,各就各位,预备,跑。。。

计算机运行一段程序须要经历哪些历程呢?

主人最近在学C语言,他按照书上的教程写了个最简单的程序:

主人编译完成后,在键盘上敲入执行程序的命令"./hello":

cup不敢怠慢,将主人的命令一字不落的从键盘交到寄存器手中,吩咐道:“快交给内存处理,不要让主人久等了”,寄存器速度飞快外号“火箭”,来无踪去无影,一瞬间就出现在内存面前,把主人从键盘上敲入的数据交给内存,说:“这是主人给的数据,尽快处理”,话音刚落,寄存器已经不见踪影,内存虽然容量很大能存很多东西,但是速度相比寄存器就慢很多了,内存的外号叫“大卡车”。

内存一看数据是执行程序的命令,在仓库里找了下,发现这个程序没运行过,仓库里没有,在硬盘家放着呢。内存暗暗叫苦,硬盘是个超级大仓库,能放海量的东西,主人什么东西都往里面塞,据说硬盘现在容量有1T之巨,比自己要大100多倍,但是要在里面找一个东西非常慢,慢得让你怀疑人生,大家都叫他“乌龟”,内存几分钟就办完的事情,交给硬盘干,要好几天,是的,好几天。。。

内存开车到了硬盘家门口,敲开门,说:“赶紧把hello程序的代码和数据找出来,主人要运行了”。硬盘慢悠悠的说:“好的我知道了,你得等几天了,这里太乱了,太大了,我要找好久。”内存知道硬盘这货就这效率,叹了口气:“知道了,我在家里慢慢等。”

三天后,硬盘终于把一个箱子拖了出来,运到了内存家,内存一分钟也不敢浪费,把箱子装上车,一脚油门,直奔寄存器的家去了。寄存器家就在cpu老大家的边上,他们是亲戚,据说寄存器的房子也是cpu家的。寄存器在门口望眼欲穿,终于看到内存带着数据箱,直奔大门而来,寄存器接过内存的箱子,立马交给了隔壁cpu,cpu拿着箱子进了工作室,房间里的机器疯狂的运转了起来,内存还没回过神来,寄存器已经拿着运行结果数据,往显示器家去了,不一会儿,显示器家的大屏上了显示出了“Hello,World!”的结果。

运行程序显示结果:

主人看到运行结果,开心的笑了。

cpu松了一口气,拉着寄存器说:“这样不行,内存和硬盘那两个家伙太慢了,特别是硬盘,时间全耗在他那里了,我们得自己搞几个仓库在家附近,重要的东西我们自己复制一份在仓库里,不用每次都去他们那里取了。”

后来cpu在家附件建了三个仓库:分别叫L1,L2,L3。L1仓库离家最近就100米,但是面积也最小只有32平米;L2仓库离家300米,面积大了点有256平米;L3仓库离家1.2公里,面积也是最大的,有8192平米。寄存器不解的问:“为什么不把L1仓库建的大一点啊,我们拿东西多方便啊”,cpu说:“我们家在市中心,你知道这里的房价多贵吗?建大了主人根本负担不起,主人才刚毕业呢,哪里有钱建这么大的仓库?大的仓库只能往郊区建,我们家旁边只能建两个小的,有的cpu家还只有L1,L2两个仓库呢,你就知足吧。”

“下次我们取数据的时候,先去离家最近的L1仓库看看有没有,如果没有的话再去L2仓库看,如果也没有就去L3仓库查一下,都没有找到的话,再去内存家取,取到数据后,我们就在我们自己家的仓库里备份一份,下次用到就直接拿来用,就不用去找内存和硬盘要了,这样我们的速度就快很多了。”cpu得意的说。

越往金字塔上面的设备速度越快,容量越小;越往金字塔下面的设备速度越慢,容量越大:

cup芯片的结构如下图,主要有寄存器,程序计数器(PC),算术/逻辑单元(ALU)和高速缓存存储器组成

以下是寄存器,高速缓存,主存,硬盘的速度和容量的大小:

  • 寄存器,速度0.3纳秒,大小约1K
  • L1一级高速缓存,速度0.9纳秒,大小约32K
  • L2二级高速缓存,速度2.8纳秒,大小约256K
  • L3三级高速缓存,速度12.9纳秒,大小约8M
  • 主存(内存),速度120纳秒,大小约8G
  • 硬盘,速度10 000 000纳秒,大小约1T

1s(秒) = 1000 ms(毫秒) = 1000 000 μs(微秒) = 1000 000 000 ns(纳秒)

如果把上图的0.3纳秒同步放大到1秒,cpu去寄存器取一个数据只需要1秒,但是到机械硬盘取要大约1年的时间。。。。。I/O是常见的速度瓶颈,我们写程序的时候尽量在内存,高速缓存上取数据,内存可比硬盘快100倍呢。

硬盘笑而不语,心想:“你们速度快有什么了不起的,一断电所有的数据都会清空,每次还不是都得重新从我这拿数据。”

第二天主人一开机,cpu:“我是谁?我在哪里?你们是谁?”,寄存器,内存,一脸懵逼:“我们什么都不记得了,我们是谁?”硬盘在一边乐了:“这帮逗比又开始了。。。”

欢迎关注我的微信公众号
发布了13 篇原创文章 · 获赞 169 · 访问量 6656

猜你喜欢

转载自blog.csdn.net/zhanyd/article/details/100182317
今日推荐