执行运算与判断的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. 使用 gRPCurl 调试.NET 5的gPRC服务

    介绍 你用过 Curl 吗?这个工具允许你通过 http 来发送数据,现在有一个适用于gGRPC的工具,gRPCurl,在本文中,我将介绍如何下载安装这个工具,然后通过这个工具调试我们.NET 5上面 ...

  2. Electron入门Demo之桌面应用计算器笔记(二)

    码文不易啊,转载请带上本文链接呀,感谢感谢 https://www.cnblogs.com/echoyya/p/14307996.html 在之前总结了一篇自学笔记,通过之前学习到的方法和知识,完成了 ...

  3. 微信小程序 发送模板消息的功能实现

    背景 - 小程序开发的过程中,绝大多数会满足微信支付 - 那么,作为友好交互的体现,自然就会考虑到支付后的消息通知咯 - 所以,我的小程序项目也要求完成这个效果,so.分享一下自己的实现步骤,以方便道 ...

  4. windows 系统 MySQL_5.6.21安装教程

      1.双击安装文件 mysql_installer_community_V5.6.21.1_setup.1418020972.msi,等待安装界面出现,见下图: 2.勾选:I accept thel ...

  5. Maven 基础详解

    一.编写pom.xml文件     Maven项目的核心是pom.xml.POM(Project Object Model,项目对象模型)定义了项目的基本信息,用于描述项目如何构建,声明项目依赖等等. ...

  6. 向HDFS中指定的文件追加内容,由用户指定内容追加到原有文件的开头或结尾。

    1 import java.io.FileInputStream; 2 import java.io.IOException; 3 import java.text.SimpleDateFormat; ...

  7. Uber如何解决2000多个微服务带来的复杂性问题?

    Uber如何解决2000多个微服务带来的复杂性问题? Adam Gluck 架构头条 2020-10-29 https://mp.weixin.qq.com/s/N7fVDZVm8uC9wVvd9DQ ...

  8. 解决键冲突 — Redis 设计与实现 https://redisbook.com/preview/dict/collision_resolution.html

    解决键冲突 - Redis 设计与实现 https://redisbook.com/preview/dict/collision_resolution.html

  9. Jenkins部署web项目到Tomcat(热部署)

    使用这个方式的话需要tomcat中有初始时Manage这个项目,本质上是通过http://ip:port/manager/html这个地址的上传接口进行上传,进行热部署(需要远程tomcat 必须开启 ...

  10. 从零开始学Java (二)Hello

    1.新建Hello.java文件,写入以下内容 1 public class Hello { 2 public static void main(String[] args) { 3 System.o ...