Chapter Zero 0.2.1 执行运算与判断的CPU
执行运算与判断的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的更多相关文章
- NET Runtime version 2.0.50727.42 - 执行引擎错误 或者无法创建应用程序域
server2003操作系统 IIS运行应用程序报错,应用程序事件查看器详细: NET Runtime version 2.0.50727.42 - 执行引擎错误 或者无法创建应用程序域 解决方法:卸 ...
- .NET Runtime version 2.0.50727.8762 - 执行引擎错误(7969097A) (80131506)
VS2010调试IIS发布的web工程提示:无法连接到 Visual Studio 开发服务器 .NET Runtime version 2.0.50727.8762 - 执行引擎错误(7969097 ...
- 牛客OI周赛13-提高组-0还是1-(dp+位运算)
https://ac.nowcoder.com/acm/contest/2970/A 给出长度为n的一连串位运算符号,用n+1个0或1使运算插入最后得到1,求01序列有多少种可能. dp[i][j]表 ...
- IIS_CVE-2017-7269 IIS6.0远程代码执行漏洞复现
CVE-2017-7269 IIS6.0远程代码执行漏洞复现 一.漏洞描述 IIS 6.0默认不开启WebDAV,一旦开启了WebDAV,安装了IIS6.0的服务器将可能受到该漏洞的威胁. 二.影响版 ...
- IIS6.0远程命令执行
0X00 漏洞信息: 漏洞编号:CVE-2017-7269 漏洞简述:开启WebDAV服务的IIS 6.0被爆存在缓存区溢出漏洞导致远程代码执行,目前针对 Windows Server2003 R2 ...
- Chapter Zero 0.2.3 显示适配器
显示适配器(Video Graphics Array,VGA) 不看后悔!!深入了解显卡!!!走你! 我们常常会调试显示器的分辨率,一般对于图像的显示重点在于分辨率与颜色深度, 每个图像显示的颜色会占 ...
- 浪潮 ClusterEngineV4.0 任意命令执行
1.浪潮ClusterEngineV4.0 任意命令执行 影响版本 ClusterEngineV4.0 2.漏洞影响 远程代码执行 3.复现 fofa语句 title='TSCEV4.0' 抓包构造e ...
- Chapter Zero 0.1.1 计算机硬件五大单元
计算机硬件的五大单元 先从CPU说起,CPU的全称如下: 中央处理器(Central Processing Unit,CPU) CPU作为一个特定功能的芯片,内含微指令集, 主机的功能差异,主要参考C ...
- 如何根据执行计划,判断Mysql语句是否走索引
如何根据执行计划,判断Mysql语句是否走索引
随机推荐
- 使用 gRPCurl 调试.NET 5的gPRC服务
介绍 你用过 Curl 吗?这个工具允许你通过 http 来发送数据,现在有一个适用于gGRPC的工具,gRPCurl,在本文中,我将介绍如何下载安装这个工具,然后通过这个工具调试我们.NET 5上面 ...
- Ubuntu下修改缺省dash shell为bash shell
Debian和Ubuntu下缺省使用的是shell是dash,而不是bash.从/bin/sh软连接的指向可以看出这点. 这是一个不同于bash的shell,它主要是为了执行脚本而出现,而不是交互,它 ...
- Inlook - 你的私人工作助理 V1.0.0.2
Inlook - Your personal assistant 中文版|English version Introduction Inlook是为在桌面上直观地提醒用户收到未读邮件和日程安排而开发的 ...
- 网络基础知识之Cisco
2021-01-2313:35:21 大家好,我是新手,刚学完Cisco协议,以后,我会每天都会给大家一些学习笔记 和一些学习心得,这方面不会的可以找我.qq2934896930. 网络的定义: 计算 ...
- In Search of an Understandable Consensus Algorithm" (https://raft.github.io/raft.pdf) by Diego Ongaro and John Ousterhout.
In Search of an Understandable Consensus Algorithm" (https://raft.github.io/raft.pdf) by Diego ...
- 奇艺iOS移动端网络优化实践 | 请求成功率优化篇 原创 Charles 爱奇艺技术
奇艺iOS移动端网络优化实践 | 请求成功率优化篇 原创 Charles 爱奇艺技术
- JAVAV EMAIL
package a; import java.util.Date;import java.util.Properties;import javax.mail.Authenticator;import ...
- 在不同情况下connect失败和ping不通的数据分析
- C++ Primer Plus读书笔记(五)循环和关系表达式
1.前缀运算符的优先级是从右到左,例如: 1 *++p; //这句话的含义是先对p进行++,再取* 2.循环 c++11新增了一种循环方式,有点和python类似,如下: 1 array<int ...
- 从零开始学Java (五)条件选择
if switch while do while for break continue 这块对于有语言基础的人来说可以跳过了. 注意有个equals方法. 1 public class Main { ...