zoukankan      html  css  js  c++  java
  • 💻计算机硬件组成详细

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

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


    五大组成部分:
                     控制器:是计算机的指挥系统,负责控制所有其他硬件的运行-------------》大脑
                     运算器:负责数学运算与逻辑运算---------------------------------》大脑
                     控制器+运算器=》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核。
  • 相关阅读:
    JavaScript实现html购物车代码
    SQLServer2019安装教程
    SQLServer2019安装教程
    pragma指令简介
    16进制字符串转数字(C/C++,VB/VB.net,C#)
    对方网络非正常断开检测方法
    stl map高效遍历删除的方法
    memmove 和 memcpy的区别
    Socket 心跳包机制总结
    如何将内存中的位图数据绘制在DC上
  • 原文地址:https://www.cnblogs.com/ChuangShi-HolySpirit/p/13756811.html
Copyright © 2011-2022 走看看