zoukankan      html  css  js  c++  java
  • Chapter Zero 0.2.2 内存

    内存

    CPU的数据都是来自主存储器(main memory),个人计算机的主寄存器主要组件是动态随机存取内存(Dynamic Random Access Memory,DRAM)
    随机存储内存只有在通电时才能记录使用,断电后就消失了,因此也称这种内存为挥发性内存。
    DRAM已经跟新了好几代,使用上较广泛的有SDRAM与DDR SDRAM两种,DDR SDRAM中又包含DDR1,DDR2,DDR3,DDR4,

    表格中缺少了DDR4的介绍,可以搜到淘宝店中DDR4的频率最低频率2133MHz,最高4000MHz左右:
    图片说明

    内存的多通道设计

    传统的总线宽度大约为64位,为了加大宽度,芯片厂商将两个主存储器汇整到一起,
    如果一个内存可以达到64位,那么两个内存就可以达到128位,也就是双通道的概念。
    一般主板的内存插槽颜色分两种,1/3一种颜色,2/4一种颜色,是两对双通道,一般首选插在2/4插槽上,
    使用双通道的两个内存最好是同一型号,更好兼容,不推荐放置三通道(即三个内存条),可能会使电压不稳。

    DRAM 和 SRAM

    除了主存储器,整部计算机中其实还有许多内存。
    我们需要了解的是CPU内的第二层高速缓存,

    缓存(cache),原始意义是指访问速度比一般随机存取存储器(RAM)快的一种高速存储器,通常它不像系统主存那样使用DRAM技术,而使用昂贵但较快速的SRAM技术。

    我们知道CPU的数据都是由主存储器提供的,但CPU到主存储器之间还要通过内存控制器
    但是如果某些很常用的程序可以放置到CPU内部,那么CPU的读取就不需要跑到主存储器重新读取了!
    这对于效能会有更大的提升,所以有第二层快取(缓存)的设计概念,CPU、第二层缓存与主存储器关旭如图:

    因为第二层缓存(L2 cache)整合到了CPU内部,所以这个L2内存的速度必须和CPU的频率相同,
    使用动态随机存取内存(Dynamic Random Access Memory,DRAM)无法达到这个频率速度,
    此时需要静态随机存储内存(Static Random Access Memory,SRAM)
    SRAM在设计上使用的晶体管数量较多,价格高,不易做成大容量,但速度快,整合到CPU成为高速缓存加速数据的存取。

    实际上除了第二层缓存,还有第一层缓存、第三层缓存,以下是概况,也可以了解更多详情:详情了解下各种高速缓存,走你!

    一级缓存,是CPU的第一层高速缓存,主要分为数据缓存和指令缓存,这是对CPU性能影响最大的一层。

    二级缓存,是CPU的第二层高速缓存,分内部和外部两种芯片,内部芯片速度基本上与CPU主频相同,而外部芯片只有主频的一半。

    三级缓存,离CPU较远,读取速度没一级二级快,但一般三级缓存容量比前面两级大很多。

    只读存储器(ROM)

    考虑一个问题,主板上如果有网络卡或者显示适配器时,关于该功能是否启动以及该功能的各项参数,如何设置?
    很多人设置过,也就是开机的时候按下Del,进入BIOS(Basic Input Output System)界面,BIOS是一套程序,
    这套程序是写死在主板上的一个CMOS内存芯片中,这个芯片需要借助额外的电源发挥记录功能,所以你的主板上会有一颗电池!

    这个CMOS内存芯片就是我们的主角:只读存储器(Read Only Memory,ROM)

    ROM是一种非挥发性的内存,对于个人计算机很重要,是系统开机时首先读取的一个小程序!

    引入一个新的概念韧体

    韧体是一种软件,对于硬件内部而言非常重要,很多硬件上用ROM来写入韧体这个软件,用来控制开机时的各项硬件参数,例如BIOS就是CMOS芯片的一个韧体。

    BIOS对于计算机系统是非常重要的,因为它掌握了系统硬件的详细信息和开机设备的选择等等,但随着计算机发展,BIOS程序代码也不是一成不变的,
    在很多主板官网一直会更新BIOS的版本,而BIOS原本使用的是无法改写的ROM,因此无法修改BIOS的程序代码!
    为此,我们现在用的BIOS通常是写入类似闪存(flash memory)或者EEPROM中的。

    EEPROM (Electrically Erasable Programmable read only memory)是指带电可擦可编程只读存储器。是一种掉电后数据不丢失的存储芯片。 EEPROM 可以在电脑上或专用设备上擦除已有信息,重新编程。一般用在即插即用。

    快闪存储器(flash memory),是一种电子式可清除程序化只读存储器的形式,允许在操作中被多次擦或写的存储器。这种科技主要用于一般性数据存储,以及在计算机与其他数字产品间交换传输数据,如储存卡与U盘。闪存是一种特殊的、以宏块抹写的EPROM。早期的闪存进行一次抹除,就会清除掉整颗芯片上的数据。

    EPROM(Erasable Programmable Read-Only Memory)可擦可编程只读存储器。EPROM只能用紫外线擦除已有信息。

    RAM、ROM以及硬盘的区别(转自百度)

    ROM是只读存储器(Read-Only Memory),是计算机内部存储器中的一种,而硬盘是外部存储器,所以对于大学学子来说,考试时你如果把这两个混为一种东西绝对是错误的,当然,如果出选择题让你选,那么BIOS应该是用到ROM的那个。那么ROM究竟是干什么的,ROM和硬盘是否就没有任何关系呢?这就要从其发展历程说起,早期,乃至现在,我们的主要存储介质都是磁性存储,也就是磁盘,分成硬盘和软盘两种,硬盘不太适合做移动存储,因为我们知道硬盘磁头容易损失,不耐摔,而且体积较大,就算是缩小容量仍然很难缩小其体积,软盘容量过于小,不够用,而光盘虽然容量大但不易擦写,同时体积也不够小,这时就适合使用半导体存储介质——ROM和RAM,RAM断电丢失数据,但是读写速度快,多用作电脑手机内存,ROM用来嵌入电脑主板或者做移动存储介质就很合适了,其体积够小,提供的容量可以比光盘和软盘的大,速度也更优,但缺点是成本更高,而早期的ROM因为技术不成熟所以无法擦写,出厂后就只能读数据,所以叫只读存储器,后来随着技术的发展,在ROM的基础上出现了新的半导体存储介质EPROM和EEPROM,这两种可擦写,这就不符合ROM的命名,但是由于是在ROM的技术上衍变出来的,所以延用了一部分原来的叫法,此时非易失的半导体存储介质开始得以广泛应用,被大量用于电脑主板的bios和嵌入式存储,而后来在这两种技术的发展上又发展出了NAND FLASH闪存,这就是我们现在用的U盘中用到的技术,同样,因为其体积小,容量和速度均不错,现在手机存储中的emmc颗粒也是用的这种技术,所以有手机厂商就把手机的存储容量约定俗成为ROM,其继承了ROM断电不丢失数据的特性,而且有着更快的速度。

    那么电脑硬盘和ROM有什么关系呢?由于ROM和硬盘都可以存储数据而且断电不会丢失,而有都广泛运用于电子产品中,所以有人就对两者产生了混淆。硬盘分为两种,一种是机械硬盘(即磁盘HDD),一种是固态硬盘(SSD),磁盘和ROM没什么关系,但是固态硬盘就不一样了,固态硬盘用到的颗粒也是基于NAND FLASH技术,和u盘以及手机存储有点相似,所以说硬盘和ROM还是有关系的,固态硬盘的储存颗粒是ROM技术发展的产物,但不能说ROM就是硬盘。

  • 相关阅读:
    android的原理,为什么我们不需要太多的剩余内存(转)
    简单制作RPM二进包实例(转)
    电源相关术语
    Linux 查找指定文件并删除
    Linux内核中的内存屏障(转)
    分压、分流原理
    Linux内核入门—— __attribute__ 机制
    如何手工释放linux内存
    多核编程中的负载平衡难题(转)
    linux2.6.26内核中ARM中断实现详解(转)
  • 原文地址:https://www.cnblogs.com/zzzwqh/p/12508039.html
Copyright © 2011-2022 走看看