💻计算机硬件组成详细

一. 计算机的硬件组成
计算机(电脑)====》人

大前提:计算机的所有组成都是模仿人的某一器官或者功能去设计的


五大组成部分:
                 控制器:是计算机的指挥系统,负责控制所有其他硬件的运行-------------》大脑
                 运算器:负责数学运算与逻辑运算---------------------------------》大脑
                 控制器+运算器=》cpu中央处理器

存取数据
               内存:比如内存条----------------------------------------》大脑的记忆功能
                  基于电存取数据,断电数据全部丢失
                     用于临时保存数据,存取速度都快
               外存:比如磁盘------------------------------------------》本子
                  基于磁存取数据,断电数据仍然存在
                     用于永久保存数据,存取速度都慢
输入设备:
         键盘、鼠标
输出设备:
         显示器、打印机


总结1:
人-------程序---------》计算机硬件
人-------程序---------》cpu------》计算机其他硬件


总结2:

             程序的运行与计算机三大核心硬件cpu、内存、硬件的关系
               程序最先是存放于硬盘中的
                  程序的运行需要先经历加载的过程:程序的代码/数据从硬盘读入内存
                       然后cpu再从内存中读取指令来运行

ps:
安装软件都装到硬盘里,软件的运行都是把数据加载到内存中了
所以说计算机硬盘的大小决定了能够安装的软件数目
而计算机内存的大小决定了计算机能够同时运行的软件数目

 二.存储器:

结构从上到下:cpu,寄存器,高速缓存,内存,硬盘,磁盘

RAM

  • RAM 英文全称 random access memory,又叫随机存取存储器。
  • 可存可取内存,断电数据丢失,就是我们通常所说的内存

拓展:

linux系统会把内存分为两种区域: 1.buffer:缓冲区, 攒一大波数据,在刷入硬盘 2.cache:缓存, 把硬盘的数据在内存中缓存好, CPU取得时候可以直接从内存中取.

ps:buffer与cache的区别是什么?

1.写入数据到内存, 这个数据的内存空间称为缓冲区(buffer),写入到内存buffer缓冲区, 写缓冲. 
2.从内存读取数据, 这个存数据的内存空间称为缓存区(cache), 从内存cache读取缓存区, 度缓存.

ROM

  • ROM英文全称ready only memory又叫只读存储器。
  • 只读内存,出产自带。为了保证安全性计算机产商出产就往ROM中写死一段核心程序。这段核心程序叫BIOS,(BIOS英文全称basic input output system,又叫基本输入输出操作系统),保证计算机在没有任何高级操作系统的前提下,计算机可以正常启动。

CMOS

  • 存放BIOS程序产生的数据, 比如: 启动设备的优先级等
在计算机领域,CMOS常指保存计算机基本启动信息(如日期、时间、启动设置等)的芯片。 有时人们会把CMOS和BIOS混称,其实CMOS是主板上的一块可读写的并行或串行FLASH芯片,是用来保存BIOS的硬件配置和用户对某些参数的设定。
  • 优点: 耗电量极低, 主板电池为时钟芯片供电, 时钟芯片存放在CMOS中.
  • 缺点: 数据容易丢失, 断电数据丢失
  • 拓展: 主板电池使用寿命为3~5年

三.CPU详解

CUP的作用:程序员通过控制CPU, 由CPU这个组件下发指令来控制其他组件.

1.CPU的分类与指令集

1.1 指令集:

把程序员控制cpu的指令, 转成CPU操作某个组件的指令.这些指令不会自行的运行, 由人类控制它才能运行

1.2 CPU的分类

  • 精简指令集: 指令集简短, 能完成的事情非常简单.

优点: 不容易错, 更稳定.
缺点: 实现复杂操作的时候指令就会成堆. 作用: 针对稳定的需求, 针对大型计算机架构的服务器就需要精简的指令集. 例子: 网络设备, 服务器等.
  • 复杂指令集: 单条指令比较复杂.

优点: 单条指令集完成的事情比较多, 完成复杂的事情只需要几条指令集.
缺点: 单条指令指令比较复杂,容易出错不稳定. 作用: 针对功能更丰富,更强大的服务或设备就需要复杂指令集. 例子: 个人电脑等.
  • 拓展知识

中国计算机硬件行cpu行业的落后,更多的是cpu精简指令集的开发,做上层的开发,尤其是涉及到硬件方面,是比较薄弱的。

2.x86 -64

2.1 (x86):

指的是CPU的型号, 或者是CPU架构的一种统称

  • x86的来历

最早的那颗Intel发明出来的CPU代号称为8086,后来在8086的基础上又开发出了80285、80386....,因此这种架构的CPU就被统称为x86架构了。 由于AMDIntelVIA所开发出来的x86架构CPU被大量使用于个人计算机上面,因此,个人计算机常被称为x86架构的计算机! 程序员开发出的软件最终都要翻译成cpu的指令集才能运行,因此软件的版本必须与cpu的架构契合. 举个例子,我们在MySQL官网下载软件MySQL时名字为:Windows(x86,32-bit),ZIP Archive 或者 (mysql-5.7.20-win32.zip) 我们发现名字中有x86,这其实就是告诉我们:该软件应该运行在x86架构的计算机上。

2.2 (64):

​ cpu的位数,指的是cpu一次性能从内存中取出多少位二进制指令,64bit指的一次性能从内存中取出64位二进制指令。注意:CPU的取主要决定于内存一次性能给多少二进制指令。

  • 二进制的来历

内存基于电信号工作,人们定义高电频代表数字1,低电频代表数字0,0101之间高低电频的变化,就类比出了二进制。

2.3 CPU的向下兼容性:

​ x86-64的cpu既能运行64位的软件也能运行32位的软件。

64位的cpu读取提供32位指令集的内存,会在32位之前补全32个0。

3.内核态和用户态

  • 什么是内核态与用户态

CPU工作的两种状态, 就是CPU的运行状态,也叫计算机的运行状态
  • 为什么cpu要有这两种状态

避免代码进行潜在的危险操作,防止给操作系统带来隐患
  • CPU的 2 种指令集状态

    CPU是计算机系统最核心的硬件,而cpu的核心就是指令集,CPU有两种指令集状态: 1://控制其他硬件的指令集, 2://运算相关的指令集
  • 内核态

    运行的程序是操作系统, 也就是操作系统当前工作的状态,也就是说当前状态下,cpu中所有的指令集开放(控制其他硬件的指令集 + 运算相关的指令集),可以操作硬件。(操作系统正在操控硬件)

  • 用户态

    运行的程序是应用程序,当前状态cpu中只开放运算相关的指令集,不能操作硬件。(应用程序正在运行)

  • 内核态与用户态的切换

    什么时候进行切换,应用程序的运行涉及到计算机硬件的操作,那就必须从用户态切换到内核态才能实现,因此计算机工作时频繁的发生内核态与用户态之间的转换。

4.多线程与多核芯片

  • 摩尔定律(moore)

摩尔(moore)定律指出, 计算机芯片的晶体管数量每18个月翻一倍, 现在已经不太确定了
  • 2 核 4 线程

2核代表有2个CPU,4线程指的是每个CPU都有2个线程,通常也叫假4核。
  • 4核8线程

4核代表有4个CPU,8线程指的是每个CPU都有2个线程,通常也叫假8核。
ndows(x86,32-bit),ZIP Archive 或者 (mysql-5.7.20-win32.zip) 我们发现名字中有x86,这其实就是告诉我们:该软件应该运行在x86架构的计算机上。

2.2 (64):

​ cpu的位数,指的是cpu一次性能从内存中取出多少位二进制指令,64bit指的一次性能从内存中取出64位二进制指令。注意:CPU的取主要决定于内存一次性能给多少二进制指令。

  • 二进制的来历

内存基于电信号工作,人们定义高电频代表数字1,低电频代表数字0,0101之间高低电频的变化,就类比出了二进制。

2.3 CPU的向下兼容性:

​ x86-64的cpu既能运行64位的软件也能运行32位的软件。

64位的cpu读取提供32位指令集的内存,会在32位之前补全32个0。

3.内核态和用户态

  • 什么是内核态与用户态

CPU工作的两种状态, 就是CPU的运行状态,也叫计算机的运行状态
  • 为什么cpu要有这两种状态

避免代码进行潜在的危险操作,防止给操作系统带来隐患
  • CPU的 2 种指令集状态

    CPU是计算机系统最核心的硬件,而cpu的核心就是指令集,CPU有两种指令集状态: 1://控制其他硬件的指令集, 2://运算相关的指令集
  • 内核态

    运行的程序是操作系统, 也就是操作系统当前工作的状态,也就是说当前状态下,cpu中所有的指令集开放(控制其他硬件的指令集 + 运算相关的指令集),可以操作硬件。(操作系统正在操控硬件)

  • 用户态

    运行的程序是应用程序,当前状态cpu中只开放运算相关的指令集,不能操作硬件。(应用程序正在运行)

  • 内核态与用户态的切换

    什么时候进行切换,应用程序的运行涉及到计算机硬件的操作,那就必须从用户态切换到内核态才能实现,因此计算机工作时频繁的发生内核态与用户态之间的转换。

4.多线程与多核芯片

  • 摩尔定律(moore)

摩尔(moore)定律指出, 计算机芯片的晶体管数量每18个月翻一倍, 现在已经不太确定了
  • 2 核 4 线程

2核代表有2个CPU,4线程指的是每个CPU都有2个线程,通常也叫假4核。
  • 4核8线程

4核代表有4个CPU,8线程指的是每个CPU都有2个线程,通常也叫假8核。
原文地址:https://www.cnblogs.com/ChuangShi-HolySpirit/p/13756811.html