一站式电子元器件采购平台

华强商城公众号

一站式电子元器件采购平台

元器件移动商城,随时随地采购

华强商城M站

元器件移动商城,随时随地采购

半导体行业观察第一站!

芯八哥公众号

半导体行业观察第一站!

专注电子产业链,坚持深度原创

华强微电子公众号

专注电子产业链,
坚持深度原创

电子元器件原材料采购信息平台

华强电子网公众号

电子元器件原材料采购
信息平台

CPU是内存吗,还是说两者有区别?它们的关系是怎样的?

来源:华强商城 发布时间:2020-05-26

摘要: CPU是内存吗,还是说两者有区别?CPU不是内存。CPU,中央处理器(Central Processing Unit,简写为CPU),是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit),也是整个系统最高的执行单位。它的功能主要是解释计算机指令以及处理计算机软件中的数据...

 CPU是内存吗,还是说两者有区别?CPU不是内存。CPU,中央处理器(Central Processing Unit,简写为CPU),是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit),也是整个系统最高的执行单位。它的功能主要是解释计算机指令以及处理计算机软件中的数据...

CPU是内存吗


  CPU是内存吗?还是说两者有区别?


  CPU不是内存。 

 

  CPU,中央处理器(Central Processing Unit,简写为CPU),是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit),也是整个系统最高的执行单位。它的功能主要是解释计算机指令以及处理计算机软件中的数据,负责整个系统指令的执行,数学与逻辑的运算,数据的存储与传送,以及对内对外输入与输出的控制。 


  cpu主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲存储器及实现它们之间联系的数据、控制及状态的总线。它与内部存储器和输入/输出设备合称为电子计算机三大核心部件。


  内存,是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。


  内存最小的物理单元是位,从本质上来讲,位是一个位于某种二值状态(通常是0和1)下的电气单元。八位组成一个字节,这样组合的可能有256种(2的8次方)。 字节是内存可访问的最小单元,每个这样的组合可代表单独的一个数据字符或指令。


  CPU是负责运算和处理的,内存是交换数据的。


  当程序或者操作者对CPU发出指令,这些指令和数据暂存在内存里,在CPU空闲时传送给CPU,CPU处理后把结果输出到输出设备上,输出设备就是显示器,打印机等。在没有显示完之前,这些数据也保存在内存里,如果内存不足,那么系统自动从硬盘上划分一部分空间作为虚拟内存来用。但写入和读取的速度 跟物理内存差的很远很远,所以,在内存不足的时候,会感到机器反应很慢,硬盘一直在响。


  512M的物理内存如果增加到2GB,你会感到电脑变得飞快。但内存512,即使你把CPU从单核换成双核,加速感觉也不明显。


  如果你本来就有2G内存,再增加2G,使用起来几乎没有多少性能的改变。


  在理论上,物理内存太大反而会减慢速度,因为它增加了寻址的时间。


  所以家用机器推荐使用2GB-4GB足矣。


  内存相当于一个漏斗口一样,内存越大,寄存或运算的数据也就越多。


  CPU是计算机的核心,主要是处理数据和运算数据的。



  内存和外存是一样的吗,还是有什么区别呢?


  内存(内部存储器):内存也叫主存,在一些特殊情况下不等同,但是大多数情况下都是同一含义。内存是用来存储临时数据的(即断电后数据消失),它主要负责硬盘等硬件上的数据和CPU之间的数据交换处理,也起到缓存系统中的临时数据的作用。在计算机中,它直接和CPU交换数据。


  外存(外部存储器):常见的外存有U盘、硬盘光盘等。外存是用来保存大量数据的,它的主要特点是容量大、断电数据不会消失。



  CPU,内存和外存三者之间的关系是怎样的?


  简单来说,硬盘用来存储我们的程序和数据,当我们运行程序的时候,CPU首先接收到我们的命令,之后CPU告诉硬盘, 我们运行你的程序A了,你把程序A送到内存中去。CPU对内存说,我让硬盘把程序A送到你这里了,你接收一下。此时程序会在外存的后备队列中等待,当内存空间足够时,这时内存会创建一个空白PCB,接着为进程分配资源,然后初始化PCB中的数据,最后将其插入内存的就绪队列中,等待CPU运行程序。


  所以说它们之间的关系就是:如果把硬盘比作一个大仓库,CPU比作加工车间,那么内存就是一个临时的小仓库。从距离上来看,CPU到内存的距离小于到硬盘的距离。因为仓库是用来存储原料和商品的,仓库大了,资源自然也就不好找出来,取出原料和存储商品时间太长,效率太低。所以内存的主要作用还是平衡CPU与外设的数据传输速率问题。



  CPU是如何访问内存的?


  答案很简单,通过内存管理单元(MMU)。


  CPU在MMU开启的情况下,访问的都是虚拟地址。首先通过MMU将虚拟地址转换为物理地址,然后再通过总线上去访问内存(我们都知道内存是挂在总线上的)。


  那MMU是怎么将虚拟地址转换为物理地址呢?是通过页表的方式。MMU从页表中查出虚拟地址对应的物理地址是什么,然后就去访问物理内存了。


  页表是什么?页表就是一种特殊的数据结构,它保存的是逻辑页和物理页帧的映射关系,而且每一个进程都各自拥有自己的页表。


  虚拟地址在我们看来是一个整体,其实不然,它是可以拆分的。它可以分为:p(页号),它可以存储页表的索引; d(偏移),可以在页内进行地址偏移


  如果采用一级页表的话,每个进程需要维护一个4MB大小的页表(我们可以算下,如果是32位平台,地址空间大小为4GB,页面大小为4KB,每个页表项占用4字节,所以4GB/4KB*4=4MB)。


  因为每个进程都有自己的页表,所以在多进程的情况下,内存消耗简直惊人。所以一级页表是不合理的。那有没有优化的办法呢?答案是有的,就是利用多级页表,可以节省内存。


  二级页表就是将页表再次分页。

声明:本文观点仅代表作者本人,不代表华强商城的观点和立场。如有侵权或者其他问题,请联系本站修改或删除。

社群二维码

关注“华强商城“微信公众号

调查问卷

请问您是:

您希望看到什么内容: