硬件科普(CPU/内存)

电脑基本知识

电脑硬件的五大单元

这里提供一个便于记忆的方式,首先看到电脑硬件的组成,很自然的可以看到:

(1)输入单元:鼠标键盘

(2)输出单元:显示器、打印机

(3)主机部分:里面包含一堆板子,CPU,内存等

把主机部分拆开来看:CPU、内存、硬盘。CPU里面包含(控制单元、算术逻辑单元)、内存和外部存储设备统称为存储器

因此:输入单元、输出单元、控制单元、算术逻辑单元、存储单元。

无论是CPU,输入,输出,还是外部存储设备,需要经过内存来传输数据

CPU架构

通过指令集来看,分为RISC精简指令集(ARM/POWERPC)和CISC复杂指令集(AMD INTEL VIA 等 X86架构芯片)

运作流程

把电脑比作人体。

RAM: 脑袋中存放正在被思考的数据的区域。将皮肤、眼睛接受到的信息暂时记录起来,供CPU思考用

CPU:相当于脑子,负责相关事情的判断与实际处理的机制

硬盘:脑袋里存放回忆的记忆区域。现在先不使用,方便以后使用

主板:神经系统,负责将重要组件连接在一起

显卡:相当于脑子中的影像,将来自眼睛的刺激形成影像后再脑袋中呈现,所以显卡也是由CPU控制

主机电源:心脏

电脑上面常用的计算单位

容量单位:

1字节=8位

速度单位:

20 Mbps = 20 Mbit/s (一般宣传的光纤的速度) = 2.5 MB/S

电脑架构与相关设备硬件

CPU: CPU的频率就是CPU每秒可以进行工作的次数,比如CPU频率是3.6GHz,表示这块CPU可以在一秒内进行3.6*10^9次工作

内存和CPU通信

早期是南北桥,这个不用记了。目前是将内存控制器整合到CPU后,CPU和内存之间的通信是直接交流,

以CPU中的内存控制芯片和内存间的传输速度举例,内存也有其工作频率,受限与内存控制器。假如内存控制芯片对内存的工作频率最高达到1600MHz,每个时钟周期能够传输的数据量大多是64位,这就是位宽,所以CPU从内存中取得的最大带宽就是1600*64/8=12.8GB/s (内存控制器工作频率*位宽 = 带宽)

32位的位是byte, 而不是bit. 是表示 2^32 个地址,而每一个地址是指向的是 8bit为一组的 byte ,所以要算到寻址的话,就要在乘以8 ,也就是 2^35 个bit,这样再换算为GB就是 4GB了。

内存

CPU所使用的所有数据皆来自内存,软件程序或者文件数据都必须要读入内存后CPU才能使用,个人电脑的内存主要组件为DRAM(Dynamic Random Access Memory), 后面更新迭代又分为SDRAM和DDR SDRAM,后者的传输速度更快,主要是因为频率更高

除了内存之外,个人电脑中还有很多类似内存的存储结构,CPU旁还有Cache(高速缓存),其使用的是SRAM。

主板(设备I/O地址与IRQ中断请求)

主板负责各个电脑组件之间的通信,但是组件太多了,有输入/输出/不同的存储设备,主板芯片组是如何通信的?这是就需要用到I/O地址和IRQ:

I/O地址:各设备的门牌号码

IRQ:各个门牌连接到CPU的专门路径

操作系统

(1)操作系统内核:其本身也是一组程序,重点在于:管理电脑的所有活动以及驱动系统中所有硬件。硬件的所有操作必须通过操作系统来完成,如果没有其他的应用程序,操作系统也只能让电脑主机准备妥当(READY)而已。但是只要硬件不同(例如不同架构CPU),内核就必须进行修改。

(2)系统调用:比如说C语言,只需要会C语言的函数就行,因为内核的调用接口会主动将C语言的相关语法转化成内核可以了解的任务函数

(3)应用程序:其开发都是参考操作系统提供的API,所以该应用程序只能在该操作系统上面运行,不能跑在其他操作系统上

(4)内核功能:系统调用接口、进程管理、内存管理、文件系统管理、设备驱动

a. 操作系统必须能够驱动硬件,这样驱动程序才能够使用该硬件功能

b. 操作系统会提供API,从而让开发商编写他们的驱动程序

c. 使用硬件功能,必须安装厂商提供的驱动

d.驱动程序由厂商提供,和操作系统无关

#嵌入式##嵌入式Linux##嵌入式工程师##嵌入式软件开发##Linux#
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务