执行运算与判断的CPU

个人计算机通常指x86的个人计算机架构,

现主要有两大主流x86开发商(Intel,AMD)的CPU架构,而Intel为大宗。

早起的芯片组通常分南北桥控制各个组件的沟通:

  • 北桥:连接速度较快的CPU、主存储器、显示适配器等组件。
  • 南桥:连接速度较慢的硬盘、USB、网络适配器等等。

其中北桥最重要的就是CPU与主存储器的桥接。

早期,北桥可以连接CPU,主存储器和显示适配器。但CPU想要读写主存储器时,

还要经过北桥支持,会瓜分掉北桥的总可用带宽,浪费资源。

如今,大多将内存控制器整合到CPU中,现如今只会看到CPU而没有以往的北桥芯片。

这样CPU与主存储器之间的沟通是直接交流的,速度快,不会消耗更多带宽!

CPU效能比较的指标

CPU可比较的效能指标,暂介绍 微指令集频率

微指令集:微指令集不同,CPU架构也不一样,导致CPU工作效率优劣不同。

频率:频率表示CPU每秒钟可以进行的工作次数,频率高,这颗CPU在单位

时间内可以做更多的事情。如Intel的i7-4790CPU频率为3.6GHz,表示这颗

CPU在一秒钟内可以进行3.6*10^9次工作。

同时地,不同款式(即不同架构)CPU不能单纯以频率判断运算效能!频率目前仅能比较同款CPU!

CPU的工作频率:外频与倍频

早起的CPU架构主要通过北桥连接系统最重要的CPU、主存储器与显示适配器。

因为所有的设备都要通过北桥连接,所以每个设备的工作频率必须相同。

于是就有所谓的前端总线/外部数据总线(Front Side Bus,FSB)这个东西产生。但因为CPU的指令周期比其他设备快,

又为了满足FSB的频率,因此厂商在CPU的内部再进行加速,于是就有所谓的外频和倍频了。

外频:CPU与外部组件进行数据传输时的速度。

倍频:CPU内部用来加速工作效能的倍数。

内频:外频与倍频相乘而得,即 内频 = 外频 * 倍频

举个例子:内频为3GHz的CPU,外频是333MGz,那么倍频就是9倍!

32位与64位的CPU与总线[宽度]

CPU内的内存控制芯片与主存储器间的前端总线速度/外部数据总线速度(Front Side Bus,FSB)越快,

主存储器能提供的数据速度效能越快。与CPU的频率类似, 主存储器也有工作的频率,主存储器频率的限制是由CPU内的内存控制器决定的

如果CPU内的内存控制芯片对于主存储器的工作频率最高可以到1600MHz,这只是工作频率(每秒几次)。我们的计算机CPU一般都是64位的,

每次频率能传输的数据量,大多为64位的,这个64位就是所谓的宽度了,因此,CPU可以从内存中取得的最快带宽就是:

1600 MHz * 64 bit = 1600 MHz * 8 Bytes = 12.8 GBytes/s

CPU每次能处理的数据量成为字组长度(word size),字组长度依据CPU设计有32位和64位,

我们现在所称的计算机是32位或64位主要是依据CPU做一次解析的字组长度而来的。

早期的32位CPU中,因为CPU每次能解析的数据量有限,因此主存储器传来的数据量就有限制,

也导致32位的CPU最多只支持最大到4GBytes的内存。

主存储器通过系统总线与CPU沟通,而显示适配器通过PCI-E序列通道与CPU沟通:

得益于北桥整合到CPU内部的设计,CPU可以个别地和各个组件沟通,每种组件和CPU沟通有很多的不同方式。

主存储器通过系统总线与CPU沟通,而显示适配器通过PCI-E序列通道与CPU沟通,离CPU最近的PCI-E卡槽与CPU沟通的速度最快。

CPU的等级

CPU型号的详细介绍(一)

CPU型号的详细介绍(二)

不看后悔!现在市场上的CPU到底该怎么选!!!走你!

超线程(Hyper—Threading,HT)

在每一个CPU内部,将重要的缓存器(register)分成两群,而让程序分别使用这两群缓存器,

也就是说,可以有两个程序同时竞争CPU的运算单元,而非通过操作系统的多任务切换。

这一过程就会让CPU好像同时有两个核心的模样。因此,虽然大部分i7等级的CPU只有四个实体核心,

通过HT机制,操作系统可以抓到8个核心,并让每个核心逻辑上分离,就可以同时运作八个程序了!

网上摘下几张主板图

先走他个装机介绍!

无北桥的主板图

早起有北桥的主板图

Chapter Zero 0.2.1 执行运算与判断的CPU的更多相关文章

  1. NET Runtime version 2.0.50727.42 - 执行引擎错误 或者无法创建应用程序域

    server2003操作系统 IIS运行应用程序报错,应用程序事件查看器详细: NET Runtime version 2.0.50727.42 - 执行引擎错误 或者无法创建应用程序域 解决方法:卸 ...

  2. .NET Runtime version 2.0.50727.8762 - 执行引擎错误(7969097A) (80131506)

    VS2010调试IIS发布的web工程提示:无法连接到 Visual Studio 开发服务器 .NET Runtime version 2.0.50727.8762 - 执行引擎错误(7969097 ...

  3. 牛客OI周赛13-提高组-0还是1-(dp+位运算)

    https://ac.nowcoder.com/acm/contest/2970/A 给出长度为n的一连串位运算符号,用n+1个0或1使运算插入最后得到1,求01序列有多少种可能. dp[i][j]表 ...

  4. IIS_CVE-2017-7269 IIS6.0远程代码执行漏洞复现

    CVE-2017-7269 IIS6.0远程代码执行漏洞复现 一.漏洞描述 IIS 6.0默认不开启WebDAV,一旦开启了WebDAV,安装了IIS6.0的服务器将可能受到该漏洞的威胁. 二.影响版 ...

  5. IIS6.0远程命令执行

    0X00 漏洞信息: 漏洞编号:CVE-2017-7269 漏洞简述:开启WebDAV服务的IIS 6.0被爆存在缓存区溢出漏洞导致远程代码执行,目前针对 Windows Server2003 R2 ...

  6. Chapter Zero 0.2.3 显示适配器

    显示适配器(Video Graphics Array,VGA) 不看后悔!!深入了解显卡!!!走你! 我们常常会调试显示器的分辨率,一般对于图像的显示重点在于分辨率与颜色深度, 每个图像显示的颜色会占 ...

  7. 浪潮 ClusterEngineV4.0 任意命令执行

    1.浪潮ClusterEngineV4.0 任意命令执行 影响版本 ClusterEngineV4.0 2.漏洞影响 远程代码执行 3.复现 fofa语句 title='TSCEV4.0' 抓包构造e ...

  8. Chapter Zero 0.1.1 计算机硬件五大单元

    计算机硬件的五大单元 先从CPU说起,CPU的全称如下: 中央处理器(Central Processing Unit,CPU) CPU作为一个特定功能的芯片,内含微指令集, 主机的功能差异,主要参考C ...

  9. 如何根据执行计划,判断Mysql语句是否走索引

    如何根据执行计划,判断Mysql语句是否走索引

随机推荐

  1. Empire

    Empire 内网渗透神器 一 基本渗透 安装 git clone https://github.com/BC-SECURITY/Empire/ ./setup/install.sh 启动 ./emp ...

  2. SAP 修改数据元素 注意事项

    在修改数据元素的时候,通常要注意一下几点: 1.在修改完数据元素后,如果激活不成功,那么就要通过SE14进入数据库实用程序,在对象名处输入数据元素相关联的表的名称 下面词典对象选择表,然后点击编辑,处 ...

  3. 浅谈JavaScript代码性能优化

    可以通过https://jsbench.me/测试网站完成性能测试. 一.慎用全局变量 1.全局变量定义在全局执行上下文,是所有作用域链的顶端,在局部作用域中没找到的变量都会到全局变量中去查找,所以说 ...

  4. 1.2V升3.3V芯片,大电流,应用MCU供电,3.3V稳压源

    MCU供电一般是2.5V-5V之间等等都有,1.2V需要升到3.3V的升压芯片来稳压输出3.3V给MCU供电. 同时1.2V的输入电压低,说明供电端的能量也是属于低能量的,对于芯片自身供货是也要求高. ...

  5. TekRADIUS5.5安装教程

    1.下载地址:https://www.kaplansoft.com/TekRADIUS/release/tekradius.zip 2.解压安装,双击一步默认安装下来就是了 3.配置连接数据库: 4. ...

  6. Promise 中reject 和 catch 处理上有什么区别

    reject 是用来抛出异常,catch 是用来处理异常reject 是 Promise 的方法,而 catch 是 Promise 实例的方法reject后的东西,一定会进入then中的第二个回调, ...

  7. 在Ubuntu安装kubernetes

    一.安装Docker 1. 配置Docker docker安装完成后需要配置cgroup驱动为systemd来增强稳定性 sudo vim /etc/docker/daemon.json { &quo ...

  8. 在Ubuntu下安装Jenkins

    一.安装Jenkins 1. 确保Java环境已经安装配置好 java -version 2. 将存储库密钥添加到系统 wget -q -O - https://pkg.jenkins.io/debi ...

  9. 题解 P3833 【[SHOI2012]魔法树】

    题目 直通车 很显然这是个树刨的板子,树上链查询和子树查询 注意: 1.这个点的树根为 0 而不是 1 所以注意读图时点标号 +1 就解决了 2.注意数据范围\(2^{32}\) 然后板子就能过了 n ...

  10. REST以及RESTful

    java作为一门后端语言,其厉害之处在于web,大家比较熟知的各种网络应用,java都能做,那么在这个移动优先的时代,如何继续发挥java的强大呢.通常是让java作为一个app的服务端,为app客户 ...