小白扫盲之-计算机为何需要内存
很多人在购买计算机时,在碰到内存时会 有点懵比。
不知道 选多大内存, 对计算机的影响,或者说对计算机的作用是什么。 其本质的问题就是。(老子不知道内存是个什么鬼,还他妈这么贵!)
so 简单剖析一下。
first:
计算机必备的几大组件:
CPU:
CPU和人脑差不多。 人脑有两大功能。 1.提供逻辑的运算, 2.记忆/存储功能。
but CPU 和人脑的区别就是,CPU只有逻辑运算的功能。所以CPU能做的事情,就只有运算。 CPU是没办法记忆数据的。
so CPU想要进行数据的运算,比如 1+1=2 那么 数字 1 就是数据源。 没有数据CPU算个屁啊。
那么 数据源从哪里来呢? 就是从内存中来。
内存:
所以内存的作用就是存储运算的数据。 然后又有问题了,内存的数据又从哪里来? 那肯定不是自己造出来的。
内存里面的数据,是从硬盘来的。
硬盘:
所以 CPU 计算的数据。 是从硬盘来的。 也就是真正的数据源。
平时存各种东西,word文档,资料,小黄片。 都是存储到硬盘上面的。
主板:
主板就是一块电路板, 作用就是链接 CPU 内存 硬盘 等,让他们之间的数据可以传递。
显卡:
比如想玩游戏,那你就要有显卡。 显卡其实很像CPU也是用提供计算的。 显卡里面用的那个叫 GPU
不同之处举例来说就是:
CPU == 10000个小学生 每天计算 + – * / 这种简单的计算
GPU == 1 个大学生。 用来算一点超级复杂的东西。
一般平时大家的工作大部分都是,简单的计算计算就好了,涉及不到很牛逼的东西。所以有10000个小学生,就能很快的计算完了
但是你要用一个大学生去计算这个简单的东西, 那他的效率,拍马都赶不上10000个小学生。
网卡声卡等等就不谈了!
然后问题就是, 硬盘也提供数据,内存也提供数据。 CPU计算用的数据,最终是从硬盘来的。那么为啥子还需要一个内存在中间 当个中间商?为啥不让硬盘直接就给CPU呢?
绕这么一大圈的原因;就是因为 硬盘的传输速度太慢了。非常的慢。
硬盘跟进结构不同可以分两种硬盘:
1. 机械硬盘(HDD)
基本原理就像,留声机。 一个探针在一个盘上,就这么转。 然后声音就出来了。(讲不清 随便一个硬盘就够你研究一辈子)
HDD 分 5400转 7200转。 5400的每秒钟可以读写 60到80兆这样。 7200的每秒钟可以读写 100到150兆这样子。
企业级的一般可以到10000转这样。 每秒钟也就 200兆这样子。不过很贵。
2. 固态硬盘(SSD)
普通的500MB每秒, 你用了PCI-E的专业的插口, 也就到 1500MB每秒。
那有多慢呢? 做个比喻:
先说CPU的速度: 我的电脑是 i7CPU 2.67赫兹的主频。 大概每秒钟的运算次数是30亿次。 64位的CPU每一次的吞吐量换算成大小的话,就是 8个字节(bytes)。速度那是相当的快。
比如处理全国人的身份证号:
全国 14亿的人口, 每个人的身份证号是 18位。 那么存起来的话 大概在 23G 这样子的一个大文件里面。
1024bytes == 1KB
1024kb == 1MB
1024mb == 1GB
那么让CPU把这个文件 从头到尾扫描一遍需要多少时间呢?
每次吞吐量是8个字节。那么每秒钟CPU就可以吞吐 240亿的字节。 240亿的字节 大概就等于 22.3GB。 那么也就意味着把这个文 件扫描一遍 CPU 就用一秒钟就好了。(这么一想真是相当的快啊。 一秒钟全国人的信息就被搞定了)
然后问题就来了, CPU只是用来运算的,他自己又没有数据。
如果没有内存,光靠硬盘的话来看一下:(就以普通的每秒钟100兆的这种硬盘。)
23GB / 100MB 大概就需要 230秒。 4分钟不到。
同志们!同志们!同志们! 这下差距就来了, 一个23G的文件。 CPU一秒钟就搞定的事,但是苦于数据要从硬盘拿CPU要等着硬盘把数据拿出来才能处理。 原本1秒就干完, 硬生生的等了 4 分钟。(这就是犯罪啊, 前戏半小时,正事一秒钟。 一秒钟好男人就是你。)
即使使用最快的固态硬盘,那也需要大概20秒钟。 但是相对于CPU来讲,还是太慢了。 1秒比20秒,没得比。
还有一个大问题就是, CPU运算完数据之后。这个数据就直接丢掉了。他是不会存储的。 那么也就意味着如果想再算一遍,那就又要从硬盘里面把数据拿出来一便。(这个速度不能忍啊)
所以!所以!所以! 这个时候内存就出世了。
内存的作用就是,在CPU运算之前,把这23G的数据从硬盘先读取的内存里面。(依然是4分钟,这个是节省不掉的)。 然后一般主流的内存的读写速度是多少呢? 大概在 10G到15G 美每秒。(这就很接近CPU的吞吐量了,CPU和内存相互等待的时间,就可以忍受了)。 并且好处是如果你扫描到一半又想从头开始从新的扫描一下。 那么也不需要再到硬盘拿数据。直接从内存拿就好了。
内存这么牛逼为啥不直接用内存,干嘛还要用硬盘?
1. 内存的原理是用的 电脉冲的信号,电流的速度是很快的都接近光速了。 所以内存速度快。 但是问题就是 有电的时候还好,一断电内存中所有的数据,就全部丢失了。(比如平时写个word文档,突然断电了。你没保存 那就白写了,因为内存里的数据都没了)
2. 所以硬盘就必须存在,虽然速度慢,但是可以长期的保存。 也就是常说的 持久化存储。
所以 硬盘 和 内存那个都不能少。
一般买电脑:
内存: 8G 家用 办公 就够了。 想玩游戏 配置到16G 或者32G。 (尽量选择两根8G, 不要选单根16G。 性能能高出3成到4成)