Linux快速简易入门 linux是什么( 三 )


3. 硬件设备管理
内核的另一职责是管理硬件设备 。任何Linux系统需要与之通信的设备,都需要在内核代码中加入其驱动程序代码 。驱动程序代码相当于应用程序和硬件设备的中间人,允许内核与设备之间交换数据 。在Linux内核中有两种方法用于插入设备驱动代码:
编译进内核的设备驱动代码可插入内核的设备驱动模块
以前,插入设备驱动代码的唯一途径是重新编译内核 。每次给系统添加新设备,都要重新编译一遍内核代码 。随着Linux内核支持的硬件设备越来越多,这个过程变得越来越低效 。不过好在Linux开发人员设计出了一种更好的将驱动代码插入运行中的内核的方法 。
开发人员提出了内核模块的概念 。它允许将驱动代码插入到运行中的内核而无需重新编译内核 。同时,当设备不再使用时也可将内核模块从内核中移走 。这种方式极大地简化和扩展了硬件设备在Linux上的使用 。
Linux系统将硬件设备当成特殊的文件,称为设备文件 。设备文件有3种分类:
字符型设备文件块设备文件网络设备文件
字符型设备文件是指处理数据时每次只能处理一个字符的设备 。大多数类型的调制解调器和终端都是作为字符型设备文件创建的 。块设备文件是指处理数据时每次能处理大块数据的设备,比如硬盘 。
网络设备文件是指采用数据包发送和接收数据的设备,包括各种网卡和一个特殊的回环设备 。这个回环设备允许Linux系统使用常见的网络编程协议同自身通信 。
Linux为系统上的每个设备都创建一种称为节点的特殊文件 。与设备的所有通信都通过设备节点完成 。每个节点都有唯一的数值对供Linux内核标识它 。数值对包括一个主设备号和一个次设备号 。类似的设备被划分到同样的主设备号下 。次设备号用于标识主设备组下的某个特定设备 。
4. 文件系统管理
不同于其他一些操作系统,Linux内核支持通过不同类型的文件系统从硬盘中读写数据 。除了自有的诸多文件系统外,Linux还支持从其他操作系统(比如Microsoft Windows)采用的文件系统中读写数据 。内核必须在编译时就加入对所有可能用到的文件系统的支持 。表1列出了Linux系统用来读写数据的标准文件系统 。

Linux快速简易入门 linux是什么

文章插图
表1 Linux文件系统
Linux服务器所访问的所有硬盘都必须格式化成表1所列文件系统类型中的一种 。
Linux内核采用虚拟文件系统(Virtual File System,VFS)作为和每个文件系统交互的接口 。这为Linux内核同任何类型文件系统通信提供了一个标准接口 。当每个文件系统都被挂载和使用时,VFS将信息都缓存在内存中 。
GNU工具
除了由内核控制硬件设备外,操作系统还需要工具来执行一些标准功能,比如控制文件和程序 。Linus在创建Linux系统内核时,并没有可用的系统工具 。然而他很幸运,就在开发Linux内核的同时,有一群人正在互联网上共同努力,模仿Unix操作系统开发一系列标准的计算机系统工具 。
GNU组织(GNU是GNU's Not Unix的缩写)开发了一套完整的Unix工具,但没有可以运行它们的内核系统 。这些工具是在名为开源软件(open source software,OSS)的软件理念下开发的 。
开源软件理念允许程序员开发软件,并将其免费发布 。任何人都可以使用、修改该软件,或将该软件集成进自己的系统,无需支付任何授权费用 。将Linus的Linux内核和GNU操作系统工具整合起来,就产生了一款完整的、功能丰富的免费操作系统 。
尽管通常将Linux内核和GNU工具的结合体称为Linux,但你也会在互联网上看到一些Linux纯粹主义者将其称为GNU/Linux系统,藉此向GNU组织所作的贡献致意 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: