我觉得在冯诺依曼体系结构里,CPU和内存是最重要的设备 。如果没有CPU和内存,服务器将完全无法运行 。所以继第一阶段分享完了CPU篇之后,今天就开始内存篇 。我们以一个最简单的问题开篇,为什么内存地址0x0001和内存地址0x0002之间差的是一个byte,而不是一个bit?
【内存为什么是以字节为单位的?】我想你对内存存储的计算已经熟练于心,a变量占用内存多少字节,b变量占用内存多少字节 。但是你有没有深入思考过,为什么我们用的存储单位都是字节,而不是比特?可能你会说因为ASCII码的基本编码单位就是字节呀,你还有可能举出很多个原因来说明内存应该以字节进行计算的原因 。但那为啥网络带宽都是以bit,而不也用byte来计算的呢?
我们平时好像太过于习以为常,而没有去深想过具体的原因 。我今天呢,是想从一个特定的角度去看待这个问题,那就是从内存的硬件物理结构 。我们来了解一下内存的物理构造,一般内存的外形图片如图1:
文章插图
图1 内存外形
如图1所示,一个内存是由若干个黑色的内存颗粒构成的 。每一个内存颗粒叫做一个chip,所有的数据都是存在这些chip里的 。上面这个内存条有8个chip(正反面各四个) 。chip内部构造如图2:
文章插图
图2 chip内部结构
每一个chip内部,又是由8个bank组成的 。在每个bank内部,就是电容的行列二维矩阵结构了,如图3 。
文章插图
图3 bank内部构造
这个矩阵由多个方块状的元素构成,这个方块元素是内存管理的最小单位 。要注意的是每一个元素有8个小电容,存储8个bit,也就是一个字节 。换句话说,因为在内存物理结构中最小管理单位是元素,一个元素就是8bit 。所以操作系统在管理它的时候,自然最小单位也就是字节了 。
推荐阅读
- 为什么必须要上大学 为什么要上大学
- 手机为什么经常发烫 手机发烫是什么原因
- 干衣机为什么开一下停一下 干衣机开一下停一下正常吗
- 小米筋膜枪为什么这么贵 小米口袋筋膜枪好用吗
- 为什么女人到了中年,很需要男人,看见你就明白了
- 鳄鱼和美洲豹 鳄鱼为什么咬合力这么大
- 为什么食肉动物不吃冬眠的熊 冬眠的动物有哪些
- 苏麻喇姑为什么要喝洗澡水 苏麻喇姑真的不洗澡吗?
- 淘宝开店为什么发布不了商品? 淘宝发布商品品牌怎么没有其他怎么办
- 华为手机升级内存体验和教程