1.6 显示适配器(显卡)

显示适配器(显卡)又称为VGA(Video Graphics Array),他对于图形影像的显示扮演相当关键的角色。 一般对于图形影像的显示重点在于:分辨率与颜色深度,因为每个图像显示的颜色会占用掉内存, 因此显示适配器上面会有一个内存的容量,这个显示适配器的内存容量将会影响到你的屏幕分辨率与颜色深度的喔!

除了显示适配器内存之外,现在由于三度空间游戏(3D game)与一些3D动画的流行,因此显示适配器的『运算能力』越来越重要。 一些3D的运算早期是交给CPU去运作的,但是CPU并非完全针对这些3D来进行设计的,而且CPU平时已经非常忙碌了呢! 所以后来显示适配器厂商直接在显示适配器上面嵌入一个3D加速的芯片,这就是所谓的GPU称谓的由来

独立显卡与集成显卡的区别:

  1. 独立显卡:显卡自带有显存
  2. 集成显卡:用系统内存的一部分用作显存

1.7 机械硬盘

1)硬盘的物理组成

大家应该都看过硬盘吧!硬盘依据桌上型与笔记本电脑而有分为3.5吋及2.5吋的大小。我们以3.5吋的桌面计算机使用硬盘来说明。 在硬盘盒里面其实是由许许多多的圆形磁盘盘、机械手臂、 磁盘读取头与主轴马达所组成的,整个内部如同下图所示:

实际的数据都是写在具有磁性物质的磁盘盘上头,而读写主要是透过在机械手臂上的读取头(head)来达成。实际运作时, 主轴马达让磁盘盘转动,然后机械手臂可伸展让读取头在磁盘盘上头进行读写的动作。 另外,由于单一磁盘盘的容量有限,因此有的硬盘内部会有两个以上的磁盘盘喔!

(Linux学习二计算机概论)(1)

机械硬盘

2)磁盘盘上的数据

由于磁盘盘是圆的,并且透过机器手臂去读写数据,磁盘盘要转动才能够让机器手臂读写。因此,通常数据写入当然就是以圆圈转圈的方式读写啰! 所以,当初设计就是在类似磁盘盘同心圆上面切出一个一个的小区块,这些小区块整合成一个圆形,让机器手臂上的读写头去存取。 这个小区块就是磁盘的最小物理储存单位,称之为扇区 (sector)。

那同一个同心圆的扇区组合成的圆就是所谓的磁道(track)由于磁盘里面可能会有多个磁盘盘,因此在所有磁盘盘上面的同一个磁道可以组合成所谓的磁柱 (cylinder)。 我们知道同心圆外圈的圆比较大,占用的面积比内圈多啊!所以,为了善用这些空间,因此外围的圆会具有更多的扇区。此外,当磁盘盘转一圈时,外圈的扇区数量比较多,因此如果数据写入在外圈,转一圈能够读写的数据量当然比内圈还要多! 因此通常数据的读写会由外圈开始往内写的喔!这是默认值啊! 另外,原本硬盘的扇区都是设计成 512byte 的容量,但因为近期以来硬盘的容量越来越大,为了减少数据量的拆解,所以新的高容量硬盘已经有 4Kbyte 的扇区设计!

购买的时候也需要注意一下。也因为这个扇区的设计不同了,因此在磁盘的分区方面,目前有旧式的 MSDOS 兼容模式,以及较新的 GPT 模式喔! 在较新的 GPT 模式下,磁盘的分区通常使用扇区号码来设计,跟过去旧的 MSDOS 是透过磁柱号码来分区的情况不同喔!

(Linux学习二计算机概论)(2)

3)硬件接口

为了要提升磁盘的传输速度,磁盘与主板的连接界面也经过多次的改版,因此有许多不同的界面喔!传统磁盘界面包括有 SATA, SAS, IDE 与 SCSI 等等。 若考虑外接式磁盘,那就还包括了 USB, eSATA 等等界面喔!不过目前 IDE 已经被 SATA 取代,而 SCSI 则被 SAS 取代,因此我们底下将仅介绍 SATA, USB 与 SAS 界面而已。

1、SATA界面

这种插槽所使用的扁平电缆比较窄小, 而且每个装置需要使用掉一条SATA线。因为SATA线比较窄小之故,所以对于安装与机壳内的通风都比较好!因此原本的IDE粗扁平电缆界面就被SATA取代了! SATA的插槽示意图如下所示:

(Linux学习二计算机概论)(3)

目前的 SATA 版本已经到了第三代, 每一代之间的传输速度如下所示,而且重点是,每一代都可以向下兼容喔!只是速度上会差很多就是了。目前主流都是使用 SATA3 这个界面速度可达 600Mbyte/s 的界面!

(Linux学习二计算机概论)(4)

因为 SATA 传输界面传输时,透过的数据算法的关系,当传输 10 位编码时,仅有 8 位为数据,其余 2 位为检验之用。因此带宽的计算上面, 使用的换算 (bit 转 byte) 为 1:10 而不是 1byte=8bits 喔!上表的对应要稍微注意一下。另外,虽然这个 SATA3 界面理论上可达 600Mbytes/s 的传输速度, 不过目前传统的硬盘由于其物理组成的限制,一般极限速度大约在 150~200Mbyte/s 而已啦!所以厂商们才要发展固态硬盘啊!

2、SAS界面

早期工作站或大型大脑上面,为了读写速度与稳定度,因此在这样的机器上面,大多使用的是 SCSI 这种高阶的连接接口。 不过这种接口的速度后来被 SATA 打败了!但是 SCSI 有其值得开发的功能,因此后来就有串行式 SCSI (Serial Attached SCSI, SAS) 的发展。这种接口的速度比 SATA 来得快,而且连接的 SAS 硬盘的磁盘盘转速与传输的速度也都比 SATA 硬盘好! 只是...好贵喔!而且一般个人计算机的主板上面通常没有内建 SAS 连接接口,得要透过外接卡才能够支持。因此一般个人计算机主机还是以 SATA 接口为主要的磁盘连接接口。

(Linux学习二计算机概论)(5)

因为这种接口的速度确实比较快喔!而且还支持例如热拔插等功能,因此,许多的装置连接会以这种接口来连接! 例如我们经常会听到的磁盘阵列卡的连接插槽,就是利用这种 SAS 接口开发出来的支持的 SFF-8087 装置等等的

3、USB界面

如果你的磁盘是外接式的界面,那么很可能跟主板连接的就是 USB 这种界面了!这也是目前 (2015) 最常见到的就是外接式磁盘界面了。 不过传统的 USB 速度挺慢的,即使是比较慢的传统硬盘,其传输率大概都还有 80~120Mbytes/s ,但传统的 USB 2.0 仅有大约 60Mbytes/s 的理论传输率, 通常在主板上面的连接口,竟然都仅有 30~40 Mbyte/s 而已呢!实在发挥不出磁盘的性能啊!

为了改善 USB 的传输率,因此新一代的 USB 3.0 速度就快很多了!据说还有更新的 USB 3.1 正在发展中!这几代版本的带宽与速度指标如下

(Linux学习二计算机概论)(6)

跟 SATA 界面一样,不是理论速度到达该数值,实际上就可以跑到这么高!USB 3.0 虽然速度很快,但如果妳去市面上面买 USB 的传统磁盘或快闪碟, 其实他的读写速度还是差不多在 100Mbytes/s 而已啦!不过这样就超级快了!因为一般 USB2.0 的快闪碟读写速度大约是 40Mbytes/10Mbytes 左右而已说。 在购买这方面的外接式磁盘时,要特别考虑喔


1.8 固态硬盘 (Solid State Disk, SSD)

传统硬盘有个很致命的问题,就是需要驱动马达去转动磁盘盘~这会造成很严重的磁盘读取延迟!想想看,你得要知道数据在哪个扇区上面,然后再命令马达开始转, 之后再让读取头去读取正确的数据。另外,如果数据放置的比较离散(扇区分布比较广又不连续),那么读写的速度就会延迟更明显!速度快不起来。因此, 后来就有厂商拿闪存去制作成高容量的设备,这些设备的连接界面也是透过 SATA 或 SAS,而且外型还做的跟传统磁盘一样!所以, 虽然这类的设备已经不能称为是磁盘 (因为没有读写头与磁盘盘啊!都是内存!)。但是为了方便大家称呼,所以还是称为磁盘!只是跟传统磁盘 (Hard Disk Drive, HDD) 不同, 就称为固态硬盘 (Solid State Disk 或 Solid State Driver, SSD)。

其实我们在读写磁盘时,通常没有连续读写,大部分的情况下都是读写一大堆小文件,因此,你不要妄想传统磁盘一直转少少圈就可以读到所有的数据! 通常很多小文件的读写,会很操硬盘,因为磁盘盘要转好多圈!这也很花人类的时间啊!SSD 就没有这个问题!也因为如此,近年来在测试磁盘的效能时, 有个很特殊的单位,称为每秒读写操作次数 (Input/Output Operations Per Second, IOPS)!这个数值越大,代表可操作次数较高,当然效能好的很!

(Linux学习二计算机概论)(7)


1.9 设备I/O地址与IRQ中断信道

主板是负责各个计算机组件之间的沟通,但是计算机组件实在太多了,有输出/输入/不同的储存装置等等, 主板芯片组怎么知道如何负责沟通吶?这个时候就需要用到所谓的I/O地址与IRQ。

I/O地址有点类似每个装置的门牌号码,每个装置都有他自己的地址,一般来说,不能有两个装置使用同一个I/O地址, 否则系统就会不晓得该如何运作这两个装置了。而除了I/O地址之外,还有个IRQ中断(Interrupt)这个咚咚。 如果I/O地址想成是各装置的门牌号码的话,那么IRQ就可以想成是各个门牌连接到邮件中心(CPU)的专门路径啰! 各装置可以透过IRQ中断信道来告知CPU该装置的工作情况,以方便CPU进行工作分配的任务。

老式的主板芯片组IRQ只有15个,如果你的周边接口太多时可能就会不够用, 这个时候你可以选择将一些没有用到的周边接口关掉,以空出一些IRQ来给真正需要使用的接口喔! 当然,也有所谓的sharing IRQ的技术就是了


1.10 CMOS与BIOS

前面内存的地方我们有提过CMOS与BIOS的功能,在这里我们再来强调一下: CMOS主要的功能为记录主板上面的重要参数, 包括系统时间、CPU电压与频率、各项设备的I/O地址与IRQ等,由于这些数据的记录要花费电力,因此主板上面才有电池。 BIOS为写入到主板上某一块 flash 或 EEPROM 的程序,他可以在开机的时候执行,以加载CMOS当中的参数, 并尝试呼叫储存装置中的开机程序,进一步进入操作系统当中。BIOS程序也可以修改CMOS中的数据, 每种主板呼叫BIOS设定程序的按键都不同,一般桌面计算机常见的是使用[del]按键进入BIOS设定画面。


我是小钱嵌入式[呲牙],会不断地和大家分享嵌入式相关的内容,智能化时代的到来,促就了未来一定是个全民编程的时代 ,如果你觉得我的分享对你有所帮助[比心],请不要吝惜你的点赞和关注原创写作不易,兄弟姐妹们的点赞和关注[谢谢],就是我分享最大的动力[心],谢谢!,欢迎在评论区和我一起讨论。

,