前言:笔者初次涉猎Linux架构,参考资料为鸟哥的Linux私房菜一书。该部分对应第零章的1.1to1.4。
Contents
1.计算机概述
计算机是一种计算器,其性质如下。
于是,只要存在输入设备(键盘、触控屏)与输出设备(一切可显示的设备),能够产生信息,那么它就是计算器。
2.计算机硬件的五大单元
计算机由三部分组成:
- 输入单元:键盘、鼠标、卡片阅读机、扫描仪等。
- 主机部分:即系统单元,一般被主机机壳保护,内含CPU与主存储器等。
- 输出单元:例如屏幕、打印机等。
整部主机的重点在中央处理器(Center Processing Unit, CPU),CPU为一个具有特定功能的芯片,内含微指令集。于是,实现的功能必须在存在相应微指令集的基础上进行。
CPU内可以分为两个主要单元
- 算数逻辑单元[1]
- 控制单元[2]
[1].负责程序运算与逻辑判断。
[2].负责协调各个周边组件与各个单元间的工作。
除CPU外,主机部分还存在主存储器,用于输入和输出数据。
输入单元->系统单元【主存储器(可连接外部存储装置)<+>CPU(算数逻辑单元+控制单元)】->输出单元
注:
- 数据流入/流出内存是CPU所发布的控制命令
- CPU要处理的数据完全来自于主存储器。
3.CPU的种类
CPU内部含有微小指令集。
3.1.精简指令集(Reduced Instruction Set Computing, RISC)
1.微指令集较为精简,每个指令的运行时间都很短,完成的动作十分单纯,指令的执行效能不错。
2.处理复杂的事情,需要多个指令共同完成。常见的RISC 微指令集 CPU 主要包括升阳(Sun)公司的的SPARC 系列,IBM 公司的Power Architecture(包括 PowerPC)系列,ARM 系列(使用范围最广)等。
3.2.复杂指令集(Complex Instruction Set Computer, CISC)
1.每个微小指令可以执行一些较低阶的硬件操作,指令数目多且复杂,执行时间较长,每条指令的长度不等,但每个指令可以处理的工作较为丰富:如AMD、Intel、VIA等的×86架构1的CPU。
2.2003年以前的Intel所开发的架构CPU由8位升级到16,32位,后来AMD依据此架构修改新一代的CPU为64位2。
4.接口设备
接口设备的定义十分广泛,前面提到的输入/输出设备,以及CPU、主存储器都是接口设备。
最重要的接口设备:主板。它负责将所有的设备连接在一起,让所有设备进行协调与沟通。
主板上最重要的组件是主板芯片组:将所有的设备汇集在一起。
其他重要的设备:
- 存储装置:包括硬盘、软盘、光盘、磁带等。
- 显示设备:关乎显示的精致度、色彩与分辨率。
- 网络装置:显卡。
5.运作流程(How computer works?)
将计算机与人体进行类比:
- CPU==大脑控制区块:不同微小指令集处理各部分的活动。
- 主存储器==大脑记录区块:暂时记录数据,提供给CPU进行判断。
- 硬盘==大脑记忆区块:将重要的数据永久记录(除非人为删除),以便未来将这些重要“经验”再次使用。
- 主板==神经系统:将重要的组件相连,起着传导信息/信号的作用。
- 各项接口设备==人体与外界沟通的手、脚、皮肤、眼睛等:与外界互动,将信息真正显示于外界,并与外界进行互动的关键。
- 显示适配器==大脑的影像:将来自外部的影像呈现于计算机,他由CPU控制。
- 电源供应器(POWER)==心脏:供电,所有组件得以正常工作的根本。
注:如果要由过去的经验来判断事情时, 也要将经验(硬盘)挪到目前的记忆(主存储器)当中。