
3.1 系统与硬件
计算机的硬件主要包括内存(RAM)、中央处理器(CPU)、输入/输出(I/O)设备和硬盘(Hard Disk)。操作系统可以管理计算机的硬件设施,可以控制CPU进行正确的运算,还可以分辨和读取硬盘中的数据。
3.1.1 Linux硬件资源管理

计算机的硬件资源全部是由内核(Kernel)来进行管理。Kernel是一个操作系统的最底层的硬件控制,由它来掌管整个硬件资源的工作状态,而每个操作系统都有自己的内核。内核能够识别计算机的硬件,从而使该硬件完成相应的工作。
操作系统能让计算机硬件准确无误的工作。因此,操作系统就是内核与其提供的接口工具。它们之间的关系图,如图3-1所示。

图3-1 关系图
内核需要管理的事项包括内存管理、进程管理、文件系统、设备驱动程序和网络接口5个部分,在3.3小节中将详细介绍。
Linux的硬件资源管理情况可以通过以下几个命令来查看到各个硬件的详细信息:
(1)使用lspci命令可以查看所有的PCI设备,例如,主板、声卡和显卡等,如图3-2所示。

图3-2 PCI设备
另外,使用lspci -v命令可以查看设备的详细信息,如图3-3所示。

图3-3 设备详细信息
(2)查看CPU的信息需要使用more/proc/cpuinfo命令,如图3-4所示。

图3-4 CPU信息
(3)内存信息的查看需要使用more/proc/meminfo命令,如图3-5所示。

图3-5 内存信息
(4)使用free -m命令来查看当前系统内存使用情况(以M字节单位显示),如图3-6所示。

图3-6 以M字节单位显示
同时还可以使用free -h命令查看当前系统内存使用情况(以人能读懂的方式输出),如图3-7所示。

图3-7 以人能读懂的方式输出
3.1.2 Linux外在设备的使用

在Linux系统下可以通过挂载的方式来使用一些外部设备,这种情况下需要我们掌握的知识点主要有以下几个方面:
1.硬件与设备文件
Linux系统中的硬件设备大部分以文件的形式存在,因此,不同的硬件设备代表着不同的文件类型,通常把硬件与系统中相对应的文件称为设备文件。设备文件在外部设备与操作系统之间提供了一个接口,用户在使用外在设备时就相当于使用普通文件一样。
设备文件在Linux系统下存放在/dev目录下面(几乎所有的硬件设备文件都在/dev这个目录内),设备文件的命名方式是主设备号加次设备号,主设备号用来区分不同种类的设备,而次设备号用来区分同一类型的多个设备。
设备与设备在Linux内的文件名对应关系如表3-1所示。
表3-1 设备与设备在Linux内的文件名对应关系表

2.常见文件系统类型
文件系统类型就是分区的格式,对于不同的外部设备Linux也提供了不同的文件类型,如表3-2所示。
表3-2 文件系统类型

3.设备的挂载
挂载是指由操作系统使一个存储设备(例如硬盘、CDROM等)上的计算机文件和目录可供用户通过计算机的文件系统访问的一个过程。
在Linux系统中,挂载的命令是mount,挂载格式如下:
mount -t 文件系统类型 设备名 挂载点
Linux系统中有一个/mnt目录(临时挂载点目录),系统管理员可以用于手动挂载部分媒体设备。同时,Linux系统中还有一个/media目录(自动挂载的目录),主要用于自动挂载光盘、U盘等移动设备。目前在CentOS7版本中,出现了一个/run自动挂载目录,所有的移动设备都会自动挂载到这个目录下。一般挂载的设备有3种:
(1)挂载软盘,代码如下:
Mount -t msdos/dev/fdo/mnt/floppy
(2)挂载U盘时,需要先确定U盘的设备名,可以使用dmesg|more命令进行查看,一般设备文件为/dev/sda1,然后建立挂载点mkdir/mnt/usb,然后再进行挂载。代码如下:
mount -t vfat/dev/sda1/mnt/usb
(3)挂载光盘。挂载光盘有两种方法,第一种代码如下:
Mount -t iso9660/dev/hda/mnt/cdrom
第二种代码如下:
mount/dev/cdrom/mnt/cdrom
注意:当需要使用另外一张光盘时,必须先卸载之前挂载的光盘,然后再重新挂载新光盘。
4.设备的卸载
卸载设备的命令格式如下:
umount 挂载目录
例如:
(1)卸载U盘,代码如下:
umount /mnt/usb
(2)卸载光盘,代码如下:
umount /mnt/cdrom
注意:在光盘没有被卸载之前,光驱上的“弹出键”起不到它该有的作用。