计算机系统004 - 硬件组件概况
发布日期:2021-06-24 18:21:30 浏览次数:2 分类:技术文章

本文共 2596 字,大约阅读时间需要 8 分钟。

有一段时间没有更新,一来最近事务繁忙,二来也重新整理了下硬件及操作系统相关知识,以便形成部分后续章节内容概要,避免凌乱。希望迟来的更新对大家依然有所帮助,同样,如有疑虑,欢迎提出以便及时修正。

上一篇从问题描述的角度着手,讲解了一个自然语言的问题最终如何描述为机器语言的指令以便能够顺利执行。其中提到现今最为流行的冯·诺依曼体系由五大组件组成,分别为输入单元、内存单元、处理单元、控制单元和输出单元。

本篇假设读者对计算机只是了解有限,将比较细致地概括计算机中主要单元的外观及特性,因此湿货较多,便于形成印象,如已有基础,可选择略过本篇内容。

1. 从主板看起

日常生活中,我们能看到的计算机设备通常如下图所示(笔记本电脑以及平板电脑可类比)。

从外观来看,输入/输出单元很直观,但内存、处理以及控制单元却无法直接看到,为了进一步了解相关知识,不得不掀开机箱(所谓System Unit)的盖头来。

虽然上图有一些英文标识,但略作整理,也应该能大致看懂:

  • 电源和风扇(Power supply and fan & Fan)
    本系列文章的第一篇中就介绍了电学相关知识,电路交换中需要电流、电压(电势差)等条件。计算机硬件设备中虽然存在电子,但要形成电流就必须借助外界设备,而这种设备就是电源。

我国电压标准是220V 50Hz交流电,而计算机设备内部采用的是高密度集成电路等器件,不可能承受220V的高压,因此使用前还需要降压。降压的原理前面也提过,两边的线圈本身存在一定电阻,有电阻就会产生热能,因此需要风扇参与降温,保证电源供电的稳定性,从而提供计算机设备器件稳健运行的基础。

  • 光盘驱动(Optical drive)
    一开始,电脑间并未组建网络,如需分享文件或其他资料(如操作系统、程序等)只能手动拷贝,常见设备为1440KB的软盘。

慢慢地,出现了局域网,但无论网络规模还是速度都极大限制了资讯的传播,而随着对电脑依赖程度增加,所需分享的资料反而越来越大,好在出现了新的存储技术,以及更进一步的,存储介质俗称光盘。

而光驱就是为了能够读取光盘才存在的,有了光驱,在未接通网络或网络不佳的电脑上也能够安装大数据(4GB以内)的资料,但出现4GB以上软件时,则不得不分割文件后使用多个盘片分别存储,读入电脑后重新拼接。

  • 硬盘驱动(Hard disk drive)
    如上节所述,一方面有的光盘为只读属性,另一方面如需拷贝光盘数据后重组,则至少需要一个目标存储器来存储光盘中数据,这个任务就交给了。

如果你要问我为什么叫做硬盘,那可以看看下图,从盘片的颜色应该就能知道硬盘的硬,并非浪得虚名。

  • 接口及扩展插槽(Connectors & Expansion slots)
    之前我们从电脑整体外观看到有号称为输入输出设备的鼠标、键盘、音箱等,它们不可能恰好和机箱甚至主板一起由一家制造,为了保证各家制造的设备都能够兼容主板,因此大家指定了一些接口规范。

只有遵循游戏规则,才能找到愿意一起玩耍的朋友,硬件厂商们也是一样,谁都想垄断市场制定标准,但谁也不可能单独完成,因此只好各自博弈,创造出一套游戏规则,保持正常运转。

这些接口及扩展插槽主要用于支持输入输出设备,键盘也好,鼠标也罢,都通过各自线缆连接到接口上,开始协作。

  • 主板(Motherboard)

    终于讲到了主板,这里囊括了内存单元、控制单元以及执行单元,具体如下图所示:

    但从图中我们只能看到三类组件:
    • 中央处理器(CPU)

      中包含了处理单元ALU和控制单元CU两者。主要负责将结合输入和内存状态,运算得到输出结果。

    • 内存(RAM)

      CPU内部实际上是一堆运算电路,只负责运算,不负责状态维护。因此如需使得CPU能够自动化完成一个任务,就必须首先输入机器语言表示的任务描述,存储到内存中,运行时CPU从内存中取出指令或数据,并将运算后所得结果输出或存储到内存另一地址中。

      这里的RAM实际上仍然是一些集成电路,只不过这些集成电路可以保存电路状态从而达到存储效果。

    • 接口(I/O & PCIe & SATA)

      这里的接口其实就是上一小节的“接口及扩展插槽”,存在的目的也是为了满足不同需求的硬件设备,如网络接口、PCIe卡等。

2. 总线

现在我们对计算机内部硬件已经有了一定了解,实质上计算机完成的功能就是CPU处理RAM和接口送入的数据或指令,处理完毕后存放在RAM中或通过接口进行输出。但有一个问题不能避开不谈,那就是,CPU和RAM以及接口间是如何协作的?

从图中可以看出,CPU和RAM以及接口间均通过总线Bus来协作。是为各计算机组件提供的一种数据传送和控制逻辑的通用方式,每条线路在同一时间内都仅能负责传输一个比特,因此必须同时采用多条线路(并行)才能发送更多数据,这样之后,所有总线可同时传输的数据数称为宽度,单位为bit。而总线的带宽则为:总线带宽 = 频率x宽度(Bytes/sec)。

同时,图中列出了3类总线:

  • 控制总线(Control Bus)

    将CPU中控制单元CU的信号传送到周边设备,一般常见的为USB Bus和1394 Bus。

  • 地址总线(Address Bus)

    用来指定RAM之中存储的数据的地址。

  • 数据总线(Data Bus)

    在CPU和RAM之间来回传送需要处理或存储的数据。

这里只是列出了抽象的概念,让我们再进一步,看看实际的主板上的总线究竟是如何连接的。

两个新概念,北桥和南桥。整体而言,北桥连接高速内部设备,南桥连接低速外部设备。具体如下:

  • 北桥(NorthBridge)

    北桥通常处理在CPU、RAM、PCIe(或AGP)显卡及南桥间通讯,最近发展中,呈现将北桥集成进CPU中的趋势,如AMD的。

  • 南桥(SouthBridge)

    南桥包含大多数周边设备接口、多媒体控制器和通信接口功能。如PCI控制器、ATA控制器、USB控制器、网络控制器及常见的键鼠等。

3. 总结

本篇主要目的是概括性介绍硬件五大组件外观、基本原理以及协作方式,对于五大组件,后面将分别成篇进行探讨,这里只需要了解到,计算机本质上是负责完成计算任务,计算方式(指令)以及数据所构成的任务描述需通过输入设备进行输入,也可以其他方式提前存储到内存中,至于运算结果,即可选择同样存储在内存中,也可选择相应输出设备进行输出。

转载地址:https://blog.csdn.net/weixin_34248258/article/details/87984491 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:nginx日志中$request_body 十六进制字符(\x22\x9B\x5C\x09\x08...)完美解决方案
下一篇:#iOS适配iPhoneX上下出现黑色区域

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月26日 17时33分53秒