最近要学习Linux系统,所以顺道将计算机的前世今生也学习了,下面做个读书笔记增强记忆。
一、计算机的组成
1. 计算机硬件的五大单元
从外观看来,计算机主要分为三部分:
- 输入单元:包括键盘、鼠标、触控板等;
- CPU:含有算术逻辑、控制、记忆等单元;
- 输出单元:包括屏幕、打印机等。
使用计算机时,我们主要通过输入设备(如鼠标与键盘)来将一些数据输入到主机里面,然后再经过主机的处理,将结果传输到输出设备(如屏幕)。显然,重点在于主机。我们拆开机箱,会发现主机里面最重要的就是一块主板,上面安插了CPU以及内存,还有一些适配卡而已。
所以,计算机的重点在于CPU。CPU是一个具有特定功能的芯片,里面含有微指令集。如果不知道微指令集是什么,请去学习计算机组成原理。所以说,如果我们想要让主机进行什么特异的功能,就得参考CPU是否有相关内置的微指令集。由于CPU的工作主要在于管理和运算,因此在CPU内又可以分为两个主要的单元——算术逻辑单元和控制单元。算术逻辑单元主要负责程序运算与逻辑判断;控制单元主要协调各组件与各单元间的工作。
既然CPU的重点是进行运算与判断,那么要被运算与判断的数据是从哪里来的?CPU读取的数据都是从内存读取来的,而内存内的数据则是从输入单元传输进来的。CPU处理完毕的数据也必须要先写回内存中,最后数据才从内存传输到输出单元。
综上,我们可以知道计算机的组成单元为:输入单元、输出单元、CPU内部的控制单元、算术逻辑单元与内存。
2. CPU
如上所述,CPU内部含有若干小指令集,它们的设计又被分为两种设计理念——RISC(精简指令集系统)和CISC。
【RISC】
- 这种CPU的设计中,微指令集较为精简,每个指令的执行时间都很短,完成的操作也很单纯,指令的执行性能较佳。但要做复杂的事情,就要由多个指令来完成。
- 常见的RISC微指令集CPU主要有:Sun公司的SPARC系列、IBM公司的Power Architecture(包括PowerPC)系列与ARM系列等。
- 在应用方面,SPARC架构的计算机常用于学术领域的大型工作站中,包括银行金融体系的主要服务器也都有这类的计算机架构;至于PowerPC架构,Sony公司出产的PS3就是使用PowerPC架构的Cell处理器;而ARM架构的CPU是目前世界上适用范围最广的,主要包括手机、PDA、导航系统、网络设备(交换机、路由器)等。
【CISC】
- 在CISC的微指令集中,每个小指令可以执行一些较低阶的硬件操作,指令数目多而且复杂,每条指令的长度并不相同。因为指令执行较为复杂,所以每条指令花费的时间较长,但每条个别指令可以处理的工作较为丰富。
- 常见的CISC微指令集CPU主要有:AMD、Intel、VIA等x86架构的CPU。
- 由于AMD、Intel、VIA所开发出的x86架构CPU被大量使用于个人计算机用途上面,因此个人计算机常被称为x86架构的计算机。
补充:为何称为x86架构呢?因为最早的那个Intel发展出来的CPU代号称为8086,后来依此架构又开发出80286、80386等,因此这种架构的CPU就被称为x86架构了。
在2003年以前有Intel所开发的x86架构CPU由8位升级到16、32位,后来AMD依此架构修改新一代的CPU为64位,为了区别两者的不同,因此64位的个人计算机CPU又被统称为x86_64的架构!
3. 接口设备
单有CPU并无法运作计算机,所以计算机还需要其他的接口设备才能够实际运行。除了前面稍微提到的输入/输出设备以及CPU与内存之外,最重要的接口设备就是主板!主板负责将所有的设备连接在一起,让所有的设备能够进行协调与通信。而主板上最重要的组件就是主板芯片组,它可以将所有的设备汇集在一起。
其他重要的设备还有:
- 存储设备:包括硬盘、软盘、光盘、磁带等。
- 显示设备:显卡对于玩3D游戏来说是非常重要的,它与显示的精度、色彩与分辨率都有关系。
- 网络设备:没有网络就活不下去,所以网卡对于计算机来说也是相当重要。
4. 运作流程(各组件的关系)
我们假设计算机是一个人体,那么每个组件对应哪个地方呢?
- CPU(大脑):每个人会做的事情都不一样(微指令集的区别),但主要都是通过大脑来进行判断与控制身体各部分的活动。
- 内存(大脑中的记录区块):在实际活动过程中,我们的大脑能够将外界的互动暂时记录起来,提供CPU来进行判断。
- 硬盘(大脑中的记忆区块):将重要的数据记录起来,以便未来再次使用这些重要的经验。
- 主板(神经系统):好像人类的神经一样,将所有重要的组件连接起来,包括手脚的活动都是大脑发布命令后,通过神经(主板)传输给手脚来进行活动。
- 各项接口设备(人体与外界通信的手、脚、皮肤、眼睛等):就好像手脚一样,是人体与外界互动的关键部位。
- 显卡(脑袋中的影像):将来自眼睛的刺激转成映像后在脑袋中呈现,所以显卡所产生的数据来源也是CPU控制的。
类似于人体中最重要的地方是大脑,计算机中最重要的就是CPU和内存。而CPU的数据通通来自于内存,如果要由过去的经验来判断事情时,也要将经验(硬盘)挪到目前的记忆(内存)当中,再交由CPU来判断,这一点很关键。
5. 计算机上面常用的计算单位(大小、速度等)
计算机的运算能力是由速度来决定的,而存放在计算机存储设备当中的数据大小也是有单位的。
【大小单位】
- 计算机依据有没有通电来记录信息,所以理论上它只认识0与1而已。0/1的单位我们称为bit。但bit实在太小了,并且在存储数据时每份简单的数据都会使用到8个bit的大小来记录,因此定义出Byte这个单位,它们的关系为1Byte = 8bit 。由于Byte仍然很小,所以后来出现了一些常见的简化单位表示法,例如K代表1024,M代表1024K等。但要注意这些单位在不同的进制位下有不同的数值表示,下面我们列出常见的单位与进制位对应表:
进位制 | K | M | G | T | P |
二进制 | 1024 | 1024K | 1024M | 1024G | 1024T |
十进制 | 1000 | 1000K | 1000M | 1000G | 1000T |
一般说来,文件大小使用的是二进制的方式,所以1GB的文件大小实际上是:1024x1024x1024B这么大。速度单位则常使用十进制,例如1Ghz就是1000x1000x1000Hz的意思。
【速度单位】
- CPU的运算速度常使用MHz或者是GHz之类的单位,这个Hz其实就是秒分之一。而在网络传输方面,由于网络使用的是bit为单位,因此网络常使用的单位为Mbit/s,即每秒多少Mbit。举例来说,大家常听到的8M/1M ADSL传输速度,如果转成文件容量的Byte时,其实理论最大传输值为