购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1 了解Linux

Linux是一种免费的计算机操作系统,它起源于UNIX操作系统,Linux的发展与GNU密不可分。Linux是真正的多用户、多任务、多平台的操作系统,它的源代码是开放的,任何人都能修改和重新发布它。现在我们就一起开始Linux探索的神秘之旅吧。

1.1.1 什么是Linux

Linux是一种计算机操作系统,Linux操作系统的内核的名字也是“Linux”。Linux是当今UNIX世界中最激动人心的进展之一。开放源代码的Linux是目前可以免费得到的可靠性极高的操作系统之一。Linux可以从许多以电子形式发布的提供者那里免费获得,它的软件包中包括X Window 系统、TCP/IP网络功能、流行的软件工具(如Emacs和Tex)、完整的软件开发环境(包括C、C++、Perl、Tcl/Tk),还有库、除错器、多媒体的支持,以及科学和数据库应用,等等。

Linux内核最初是为英特尔386微处理器而设计的,现在Linux内核支持从PC到大型主机甚至包括嵌入式系统在内的各种硬件设备。Linux系统是由世界各地成千上万的程序员设计和实现的,其目的是建立不受任何商品化软件版权制约的、全世界都能自由使用的UNIX兼容产品。

Linux操作系统是由UNIX发展而来的,UNIX操作系统是1969年由Ken Thompson和Dennis Ritchie在美国贝尔实验室开发的一种操作系统。由于其良好而稳定的性能迅速在计算机中得到广泛的应用,在随后几十年中也有了不断的改进。

在20世纪80年代,Andrew S.Tanenbaum为了满足教学的需要编写了一个与UNIX类似的Minix系统。1990年,芬兰人Linus Torvalds接触了Minix系统后,开始着手研究编写一个开放的与Minix系统兼容的操作系统。1991年10月5日,Linus Torvalds在赫尔辛基技术大学的一台FTP服务器上发布了一个消息,这也标志着Linux系统的诞生。

在开始的时候,Linux只是个人狂热爱好的一种产物。但是现在,Linux已经成为一种受到广泛关注和支持的操作系统。包括IBM和惠普在内的一些计算机业巨头也开始支持Linux。很多人认为,和其他的商用UNIX系统及微软 Windows相比,作为自由软件的Linux具有低成本、高安全性、更加可信赖的优势。

1.1.2 GNU与Linux

我们在阅读有关Linux的文章时,经常会看到在Linux名称前面有一个前缀“GNU”,类似于“GNU/Linux”。可别小看了这个前缀,如果没有它,或许就没有今天的Linux。

GNU计划又称革奴计划,GNU是“GNU is Not Unix”的缩写,是由自由软件的积极提倡者理查德·斯托曼(Richard Stallman)在1983年9月27日公开发起的,它的目的是希望重现当年软件界合作、开放、团结、互助的精神,而具体的目标则是开发一套区别于当时的商业化UNIX系统,但又与之完全兼容的、自由的操作系统。

说明

英文单词“Gnu”原意为非洲牛羚,而有趣的是,GNU项目的Logo采用的就是牛羚的头像。

为保证GNU软件可以自由地使用、复制、修改和发布,所有GNU软件都有一份在禁止其他人添加任何限制的情况下授权所有权利给任何人的协议条款,该条款称为GNU通用公共许可证(GNU General Public License,GPL)。

GPL的内容主要是保证软件的免费使用和传播,要求必须以源代码的形式发布软件,并且任何使用者都可以以源代码的形式复制或传播软件给任何人。Linus Torvalds在1993年将Linux系统转向GPL,并加入了GNU。从而最终使自由软件有了发展根基,即基于Linux系统的GNU。这一版权除了规定有自由软件的各项许可权外,还允许用户出售自己的程序拷贝。

绝大多数基于Linux内核的操作系统使用了大量的GNU软件,包括shell程序、工具、程序库、编译器及工具,还有许多其他程序,如Emacs。正因为如此,GNU计划的开创者Richare Stallman博士提议将Linux操作系统改名为“GNU/Linux”,但有些人还是愿意将操作系统称为“Linux”。

换句话说,Linux只是一个操作系统内核而已,而GNU提供了大量的自由软件来丰富在其之上的各种应用程序。

因此,严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程的各种工具和数据库的操作系统。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,例如,软件开发工具、数据库、Web服务器(如Apache)、X Window、桌面环境(如GNOME和KDE)、办公套件(如OpenOffice.org),等等。

1.1.3 Linux系统的特点

Linux是一个多任务、多用户、具有复杂内核的操作系统,它充分利用了现行CPU的任务切换功能,创造了多任务、多用户环境,允许多个用户同时使用一台计算机系统。同时,多个用户能从相同或不同的终端上用同一个应用程序的副本进行工作,真正实现了多用户的并行操作。

Linux系统是单内核,这种内核比微内核复杂。在这种内核中,大量的功能是放在内核中直接实现的,而在微内核系统中,许多功能是采用服务进程的形式放在内核外实现的。

Linux支持现有的常见文件系统,如Linux Ext2、Ext3、FAT16、FAT32、ISO9660光盘文件系统和Windows NT的NTFS文件系统等。它具有严紧的文件及目录结构,文件都是按照作用或者性质来存放的,其目录结构是标准的树状结构。此外,Linux将设备都当成文件来处理。这样,当要使用某一设备时,只需简单读/写该设备文件就行,极大地方便了设备的使用。

Linux完全支持POSIX(可移植性操作系统)规范,可以很容易地将UNIX下的应用程序移植到Linux下。可移植性使Linux/UNIX与其他任何机器进行通信成为可能,而不需要增加通信接口。

Linux系统具有很强的适应性。Windows操作系统只能运行在Intel处理器上,各厂商的UNIX只能运行在各自的处理器上,但是Linux系统几乎能运行在所有常见的处理器上。Linux还支持广泛的外部设备,在Linux中可以找到几乎所有的设备驱动程序。

Linux平台下有大量的应用软件,如电子表格、字处理、数据库、联网工具及游戏等。此外,Linux使用RPM包来包装软件,用rpm命令可以很方便地安装、查询、卸载软件。Linux还支持一系列的开发工具,几乎所有的主流程序设计语言都可以移植到Linux上。

Linux系统为用户提供了强大的管理功能,主要包括存储管理、系统用户和用户组管理、进程管理、文件管理等。

1.1.4 Linux的内核版本与发行版本

在Linux操作系统不断发展壮大的同时,Linux的内核也在迅速地更新着。Linux内核的官方版本是由Linus Torvalds本人维护的。内核的版本号形式为major.minor.patchlevel。patchlevel是对当前内核版本的修订次数。例如,kernel2.0.30表示对内核版本的第30次修订。根据约定,次版本号为偶数时表示该内核为稳定发布版本,对它的修订主要是消除各种错误,为其添加新特性;次版本号为奇数时,则表示其为不稳定的开发版本,开发人员在其中添加了新特性。

在普通用户PC上的Linux主要是作为Linux发行版的一部分而使用的。这些发行版由个人、松散组织的团队、商业机构和志愿者组织编写。它们通常包括了其他的系统软件和应用软件,以及一个用来简化系统初始安装的安装工具和软件安装升级的集成管理器。发行版为许多不同的目的而制作,包括对不同计算机结构的支持、对一个具体区域或语言的本地化、实时应用和嵌入式系统等,甚至许多版本故意地只加入免费软件。

目前,超过300个发行版被积极开发,最普遍使用的发行版有大约12个。一个典型的Linux发行版包括Linux内核、一些GNU程序库和工具、命令行shell、图形界面的X Window系统和相应的桌面环境,如KDE或GNOME,并包含数千种从办公套件、编译器、文本编辑器到科学工具的应用软件。

主流的Linux发行版有Asianux、B2D Linux、Conectiva Linux、Fedora Core、Fedora Linux、Gentoo Linux、Knoppix Linux、Linux From Scratch、Magic Linux、Mandriva Linux、Red Hat Linux、Slackware Linux、SUSE Linux、Turbo Linux、Debian GNU/Linux、Ubuntu Linux等。

1.1.5 本书使用的Linux

本书将在Fedora 14系统下为读者讲解Linux C编程的知识,书中的实例也全部是在该系统下进行编译和调试的。

Fedora 是一个开放的、创新的、前瞻性的操作系统和平台,基于Linux。它允许任何人自由地使用、修改和重新发布,无论现在还是将来。它由一个强大的社群开发,这个社群的成员以自己的不懈努力,提供并维护自由、开放源代码的软件和开放的标准。Fedora 项目由Fedora基金会管理和控制,得到了Red Hat公司的支持。Fedora是一个独立的操作系统,是Linux的一个发行版,可运行的体系结构包括x86(即i386~i686)、x86_64和PowerPC等。

Fedora Linux(第7版以前为Fedora Core)是较具知名度的Linux发行包之一,由Fedora Project社区开发、Red Hat公司赞助,目标是创建一套新颖、多功能并且自由(开放源代码)的操作系统。Fedora基于Red Hat Linux,在Red Hat Linux终止发行后,红帽公司计划以Fedora来取代Red Hat Linux在个人领域的应用,而另外发行的Red Hat Enterprise Linux(Red Hat企业版Linux,RHEL)则取代Red Hat Linux在商业应用的领域。

Fedora的功能对于用户而言,它是一套功能完备、更新快速的免费操作系统,而对赞助者Red Hat公司而言,它是许多新技术的测试平台,被认为可用的技术最终会加入到Red Hat Enterprise Linux中。Fedora大约每6个月发布新版本,到本书截稿时,Fedora最新的版本已经是Fedora 20了。Fedora的发展很快,但依然要选定一个系统来进行讲解,那就是Fedora 14。 X4L2DKhZ4dcOuLrMSILN2VOWSR0XwlSCffQIf0i7V4cW5mmfwsdiLp8vCMSEhoyt

点击中间区域
呼出菜单
上一章
目录
下一章
×