一、处理器简介

处理器一般指中央处理器。中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。

处理器主要功能:

处理指令

英文Processing instructions;这是指控制程序中指令的执行顺序。程序中的各指令之间是有严格顺序的,必须严格按程序规定的顺序执行,才能保证计算机系统工作的正确性。

执行操作

英文Perform an action;一条指令的功能往往是由计算机中的部件执行一系列的操作来实现的。CPU要根据指令的功能,产生相应的操作控制信号,发给相应的部件,从而控制这些部件按指令的要求进行动作。

控制时间

英文Control time;时间控制就是对各种操作实施时间上的定时。在一条指令的执行过程中,在什么时间做什么操作均应受到严格的控制。只有这样,计算机才能有条不紊地工作。

处理数据

即对数据进行算术运算和逻辑运算,或进行其他的信息处理。

其功能主要是解释计算机指令以及处理计算机软件中的数据, 并执行指令。在微型计算机中又称微处理器,计算机的所有操作都受CPU控制,CPU的性能指标直接决定了微机系统的性能指标。CPU具有以下4个方面的基本功能:数据通信,资源共享,分布式处理,提供系统可靠性。运作原理可基本分为四个阶段:提取(Fetch)、解码(Decode)、执行(Execute)和写回(Writeback)。

处理器工作过程:

CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码。它把指令分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。指令是计算机规定执行操作的类型和操作数的基本命令。指令是由一个字节或者多个字节组成,其中包括操作码字段、一个或多个有关操作数地址的字段以及一些表征机器状态的状态字以及特征码。有的指令中也直接包含操作数本身。

提取

第一阶段,提取,从存储器或高速缓冲存储器中检索指令(为数值或一系列数值)。由程序计数器(Program Counter)指定存储器的位置。(程序计数器保存供识别程序位置的数值。换言之,程序计数器记录了CPU在程序里的踪迹。)

解码

CPU根据存储器提取到的指令来决定其执行行为。在解码阶段,指令被拆解为有意义的片段。根据CPU的指令集架构(ISA)定义将数值解译为指令。一部分的指令数值为运算码(Opcode),其指示要进行哪些运算。其它的数值通常供给指令必要的信息,诸如一个加法(Addition)运算的运算目标。

解码线路

执行

在提取和解码阶段之后,紧接着进入执行阶段。该阶段中,连接到各种能够进行所需运算的CPU部件。

例如,要求一个加法运算,算术逻辑单元(ALU,Arithmetic Logic Unit)将会连接到一组输入和一组输出。输入提供了要相加的数值,而输出将含有总和的结果。ALU内含电路系统,易于输出端完成简单的普通运算和逻辑运算(比如加法和位元运算)。如果加法运算产生一个对该CPU处理而言过大的结果,在标志暂存器里可能会设置运算溢出(Arithmetic Overflow)标志。

写回

最终阶段,写回,以一定格式将执行阶段的结果简单的写回。运算结果经常被写进CPU内部的暂存器,以供随后指令快速存取。在其它案例中,运算结果可能写进速度较慢,但容量较大且较便宜的主记忆体中。某些类型的指令会操作程序计数器,而不直接产生结果。这些一般称作“跳转”(Jumps),并在程式中带来循环行为、条件性执行(透过条件跳转)和函式。许多指令会改变标志暂存器的状态位元。这些标志可用来影响程式行为,缘由于它们时常显出各种运算结果。例如,以一个“比较”指令判断两个值大小,根据比较结果在标志暂存器上设置一个数值。这个标志可藉由随后跳转指令来决定程式动向。在执行指令并写回结果之后,程序计数器值会递增,反覆整个过程,下一个指令周期正常的提取下一个顺序指令。

二、内核简介

内核是操作系统最基本的部分。它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。内核的分类可分为单内核和双内核以及微内核。严格地说,内核并不是计算机系统中必要的组成部分。

内核的优点:

抽象隐藏

内核提供一种硬件抽象的方法来完成对硬件操作,因为这些操作是非常复杂的,硬件抽象隐藏了复杂性,为应用软件和硬件提供了一套简洁,统一的接口,使程序设计更为简单。

源代码管理

历史上,从来没有出现过用于Linux内核的正式的源代码管理或修正控制系统。实际上,很多开发者实现了他们自己的修正控制器,但是并没有官方的LinuxCVS档案库,让LinusTorvalds检查加入代码,并让其他人可以由此获得代码。修正控制器的缺乏,常常会使发行版本之间存在“代沟”,没有人真正知道加入了哪些改变,这些改变是否能很好地融合,或者在即将发行的版本中哪些新内容是值得期待的。通常,如果更多的开发者可以像了解他们自己所做的改变一样了解到那些变化,某些问题就可以得到避免。

非常有必要使用一个实时的、集中的档案库来保存对Linux内核的最新更新。每一个被内核接受的改变或者补丁都被作为一个改变集被追踪。终端用户和开发者可以保存他们自己的源文件档案库,并根据需要可以通过一个简单的命令用最新的改变集进行更新。对开发者来说,这意味着可以始终使用最新的代码拷贝。测试人员可以使用这些逻辑的改变集合来确定哪些变化导致了问题的产生,缩短调试所需要的时间。甚至那些希望使用最新内核的用户也可以直接利用实时的、集中的档案库,因为一旦他们所需要的部件或缺陷修复加入到内核中,他们就可以马上进行更新。当代码融合到内核时,任何用户都可以提供关于这些代码的即时反馈和缺陷报告。

并行开发

随着Linux内核的成长,变得更加复杂,而且吸引更多开发者将注意 力集中到内核的特定方面的专门开发上来,出现了另一个开发Linux方法的有趣改变。在2.3内核版本的开发期间,除了由LinusTorvalds发行的主要的一个内核树之外,还有一些其他的内核树。

在2.5的开发期间,内核树出现了爆炸式的增长。由于使用源代码管理工具可以保持开发的同步并行进行,这样就可能实现开发的部分并行化。为了让其他人在他们所做的改变被接受之前可以进行测试,有一些开发需要并行化。那些保持自己的树的内核维护者致力于特定的组件和目标,比如内存管理、NUMA部件、改进扩展性和用于特定体系结构的代码,还有一些树收集并追踪对许多小缺陷的纠正。

这种并行开发模型的优点是,它使得需要进行重大改变的开发者,或者针对一个特定的目标进行大量类似改变的那些开发者可以自由地在一个受控环境中开发,而并不影响其他人所用内核的稳定性。当开发者完成工作后,他们可以发布针对Linux内核当前版本的补丁,以实现到此为止他们所完成的改变。这样,社区中的测试人员就可以方便地测试这些改变并提供反馈。当每一部分都被证明是稳定的之后,那些部分可以单独地,或者甚至同时全部地,融合到主要Linux内核中。

代码覆盖分析

新工具为内核提供了代码覆盖分析的功能。覆盖分析表明,在一个给定的测试运行时,内核中哪些行代码被执行。更重要的是,覆盖分析提示了内核的哪些部分还根本没有被测试到。这个数据是重要的,因为它指出了需要再编写哪些新测试来测试内核的那些部分,以使内核可以得到更完备的测试。

大量信息

在为将来的2.6Linux内核进行开的过程中,除了这些自动化的信息管理方法之外,开放源代码社区的不同成员还收集和追踪了数量惊人的信息。

例如,在KernelNewbies站点上创建了一个状态列表,来保持对已经提出的内核新部件的追踪。这个列表包含了以状态排序的条目,如果它们已经完成了,则说明它们已经包含在哪个内核中,如果还没有完成,则指出还需要多长时间。列表上很多条目的链接指向大型项目的Web站点,或者当条目较小时,链接指向一个解释相应部件的电子邮件信息的拷贝。

三、芯片简介

芯片,又称微电路(microcircuit)、微芯片(microchip)、集成电路(英语:integrated circuit, IC)。是指内含集成电路的硅片,体积很小,常常是计算机或其他电子设备的一部分。

芯片的制造过程:

1、芯片的原料晶圆

晶圆的成分是硅,硅是由石英沙所精练出来的,晶圆便是硅元素加以纯化(99.999%),接着是将这些纯硅制成硅晶棒,成为制造集成电路的石英半导体的材料,将其切片就是芯片制作具体所需要的晶圆。晶圆越薄,生产的成本越低,但对工艺就要求的越高。

2、晶圆涂膜

晶圆涂膜能抵抗氧化以及耐温能力,其材料为光阻的一种。

3、晶圆光刻显影、蚀刻

该过程使用了对紫外光敏感的化学物质,即遇紫外光则变软。通过控制遮光物的位置可以得到芯片的外形。在硅晶片涂上光致抗蚀剂,使得其遇紫外光就会溶解。这时可以用上第一份遮光物,使得紫外光直射的部分被溶解,这溶解部分接着可用溶剂将其冲走。这样剩下的部分就与遮光物的形状一样了,而这效果正是我们所要的。这样就得到我们所需要的二氧化硅层。

4、掺加杂质

将晶圆中植入离子,生成相应的P、N类半导体。

具体工艺是是从硅片上暴露的区域开始,放入化学离子混合液中。这一工艺将改变搀杂区的导电方式,使每个晶体管可以通、断、或携带数据。简单的芯片可以只用一层,但复杂的芯片通常有很多层,这时候将这一流程不断的重复,不同层可通过开启窗口联接起来。这一点类似多层PCB板的制作原理。 更为复杂的芯片可能需要多个二氧化硅层,这时候通过重复光刻以及上面流程来实现,形成一个立体的结构。

5、晶圆测试

经过上面的几道工艺之后,晶圆上就形成了一个个格状的晶粒。通过针测的方式对每个晶粒进行电气特性检测。一般每个芯片的拥有的晶粒数量是庞大的,组织一次针测试模式是非常复杂的过程,这要求了在生产的时候尽量是同等芯片规格构造的型号的大批量的生产。数量越大相对成本就会越低,这也是为什么主流芯片器件造价低的一个因素。

6、封装

将制造完成晶圆固定,绑定引脚,按照需求去制作成各种不同的封装形式,这就是同种芯片内核可以有不同的封装形式的原因。比如:DIP、QFP、PLCC、QFN等等。这里主要是由用户的应用习惯、应用环境、市场形式等外围因素来决定的。

7、测试、包装

经过上述工艺流程以后,芯片制作就已经全部完成了,这一步骤是将芯片进行测试、剔除不良品,以及包装。

四、处理器,内核,芯片三个概念的区别

芯片是最大的统称,只要是包含了各种半导体元件的集成电路都是芯片。

处理器是芯片的一种,指可以执行程序的逻辑机器。电脑里用的CPU其实名字是中央处理器,是处理器的一种。其他还可以有诸如图像处理器,数字信号处理器等。

内核有多种概念,在计算机硬件方面的内核指处理器的内部核心,包装在一个元件中的独立处理单元,称为core。在计算机软件方面指操作系统最基本的部分,负责管理系统资源和提供对系统资源的访问,称为kernel。芯片包含了CPU 但是工作方式不同 芯片代替不了CPU 因为CPU内部电路都是很多晶体管组成

linux内核区分cpu架构,一文读懂处理器,内核,芯片三个概念的区别相关推荐

  1. 一文读懂机器学习与深度学习的联系与区别

    一文读懂机器学习与深度学习的联系与区别 https://mp.weixin.qq.com/s/6Zk5JxBUs_Op1wwiY4EIZA 翻译:  Tocy, kevinlinkai, 雪落无痕xd ...

  2. C_一文读懂推荐系统知识体系-上(概念、结构、算法)

    本文主要阐述: 推荐系统的3个W 推荐系统的结构 推荐引擎算法 浏览后四章的内容请见下篇. 1. 推荐系统的3个W 1.1 是什么(What is it?) 推荐系统就是根据用户的历史行为.社交关系. ...

  3. 一文读懂处理器流水线

    本文将讨论处理器的一个重要的基础知识:"流水线".熟悉计算机体系结构的读者一定知道,言及处理器微架构,几乎必谈其流水线.处理器的流水线结构是处理器微架构最基本的一个要素,犹如汽车底 ...

  4. Linux如何访问mmio空间,一文读懂Linux下如何访问I/O端口和I/O内存

    虽然访问I/O端口非常简单,但是检测哪些I/O端口已经分配给I/O设备可能就不这么简单了,对基于ISA总线的系统来说更是如此.通常,I/O设备驱动程序为了探测硬件设备,需要盲目地向某一I/O端口写入数 ...

  5. 独家|一文读懂推荐系统知识体系-上(概念、结构、算法)

    本文主要阐述: 推荐系统的3个W 推荐系统的结构 推荐引擎算法 浏览后四章的内容请见下篇. 1. 推荐系统的3个W 1.1 是什么(What is it?) 推荐系统就是根据用户的历史行为.社交关系. ...

  6. 一文读懂云计算:发展历程、概念技术与现状分析

    掐指一算,云计算已经有了十年的历史,发展到今天几乎可以算是近十年最伟大的技术进步之一. 「云计算」这个术语,也早已从一个新鲜词汇,成为了妇孺皆知的流行语. 任何事物的诞生和发展一定有其前提条件和土壤, ...

  7. 一文读懂 CNN、DNN、RNN 内部网络结构区别

    http://network.51cto.com/art/201610/519446.htm 从广义上来说,NN(或是更美的DNN)确实可以认为包含了CNN.RNN这些具体的变种形式.在实际应用中,所 ...

  8. 24c04硬件地址位_一文读懂IP地址和MAC地址有什么区别和联系

    IP地址和MAC地址虽然都叫地址,然而实际上却没有什么联系.先来看看什么是IP地址.MAC地址,在来谈谈他们之前的区别. 定义 一.MAC地址 MAC(Media Access Control或者Me ...

  9. xmind各版本区别_制图心法 | 一文读懂XMind 8 和 XMind: ZEN的真正区别

    时刻要拥有寻找好心情的能力 打包烦恼,拾起微笑,重新出发 - 前方多图预警 - 「一图胜千言」,猫妮想说的都在图里 如果今天的内容对你有所帮助 记得点赞评论告诉我 猫妮的制图工具是XMind 这个软件 ...

最新文章

  1. scala入门之识别函数式风格
  2. Spring使用总结
  3. aqs java_Java并发之AQS详解
  4. NuGet(微软.NET开发平台的软件包管理工具)在VisualStudio中的安装的使用
  5. 2018成都初二计算机会考时间,2018年四川学业水平考试时间及科目
  6. 分布式架构在农业银行的应用实践与展望
  7. lora发射和接收原理_LoRa 的扩频技术
  8. MySQL日期 专题
  9. matlab的imnoise
  10. 常用的高光谱遥感影像数据集(详细介绍+下载链接)
  11. 传感器的原理及应用有哪些
  12. 互联网产品经理面试问题汇总(18问)
  13. 高数_第6章无穷级数__幂级数_收敛点收敛域收敛半径
  14. Spring Boot 五种热部署方式
  15. 【每日蓝桥】16、一三年省赛Java组真题“幸运数”
  16. vf省计算机考试题库,四川省33次计算机等级考试vf笔试题(含答案).
  17. Ubuntu_硬件与系统基础
  18. 为什么我charles抓包带了给锁_使用Charles抓包
  19. 【JAVA技术库】分页模糊查询 进阶版
  20. 通达信行情数据获取--python

热门文章

  1. 计算机二级excel常考的知识点,计算机二级MS Office考试Excel部分常考函数总结
  2. linux 获取OS盘符的方法
  3. opencv处理视频文件
  4. C#程序设计_计程车车费
  5. 计算机网络技术用什么笔记本好,适合设计专业的笔记本电脑推荐榜单-好用的设计类笔记本电脑推荐...
  6. 图像去模糊算法代码实践!
  7. dda算法控制电机_求PWM速度控制系统是通过脉宽调制器对大功率晶体管的开关时间进...
  8. vue基础之常用特性
  9. LabVIEW 图形化显示数据
  10. 直击“破产”真相,小霸王是怎么把自己玩死的?