1.3 Linux系统的历史、现状和特点
据说,1997年夏在制作电影《泰坦尼克号》的过程中共动用了160台Alpha图形工作站,其中有105台运行的是Linux操作系统。然而,Linux还是一种很年轻的操作系统,从1991年诞生至今,刚满20年。但是它的发展和应用却异常迅猛,成为操作系统领域中一支重要的生力军。可以说,它是一个诞生于网络、成长于网络且成熟于网络的操作系统。
1.3.1 Linux的历史
1984年,曾是Bill Gates(比尔·盖茨)哈佛大学同学的Richard Stallman组织开发了一个完全基于自由软件的软件体系计划GNU(GNU是GNU is Not UNIX的递归缩写),并且拟定了一份通用公共许可证(General Public License,GPL)。GPL保证任何人都有共享和修改自由软件的自由,任何人都有权取得、修改和重新发布自由软件的源代码,并且规定在不增加附加费用的条件下得到源代码(基本发行费用除外)。这一规定保证了自由软件总体费用是低的,在使用Internet的情况下则是免费的。
在20世纪80年代,Andrew S. Tanenbaum教授为了满足教学的需要,自行设计了一个微型UNIX操作系统——MINIX。在此基础上,1991年,芬兰赫尔辛基大学的学生Linus Torvalds在Intel 386个人计算机上开发了Linux核心,并利用Internet发布了源代码,从而创建了Linux操作系统。之后,许多系统软件设计专家共同对它进行改进和提高。到现在为止,Linux已成为具有全部UNIX特征、与POSIX兼容的操作系统。近年来,Linux在国际上发展迅速,并且得到包括IBM,COMPAQ,HP,Oracle,Sybase,Informix等许多软硬件公司的支持。它们提供技术支持,开发Linux的应用软件,将Linux系统的应用推向各个领域,并为它进入大型企业Intranet的应用领域奠定了基础。
Linux成功的意义不仅在于Linux操作系统本身,还在于Linus Torvalds所建立的全新的软件开发方法和Stallman的GNU精神。Linus把Linux奉献给了自由软件,奉献给了GNU,从而使自由软件有了一个良好的发展根基——基于Linux的GNU。
1.3.2 Linux的现状
当前流行的软件按照所提供的方式和是否以营利为目的可以划分为三种模式,即商业软件(Commercial Software)、共享软件(Shareware)和自由软件(Freeware或Free Software)。
商业软件由开发者出售副本并提供技术服务,用户只有使用权,但不得进行非法复制、扩散、修改或添加新功能,其代表是美国微软公司的Windows操作系统。共享软件由开发者提供软件试用程序复制授权,用户在试用该程序副本一段时间之后,必须向开发者交纳使用费用,开发者则提供相应的升级和技术服务。目前许多通过网络分发销售的软件都采用这种方式,如著名的WinGate。而自由软件则由开发者提供软件全部源代码,任何用户都有权使用、复制、扩散、修改该软件,同时用户也有义务将自己修改过的程序代码公开。Linux就是自由软件的杰出代表。1993年,Linus Torvalds将Linux系统转向了GPL,并加入了GNU。这一版权上的转变对于Linux的进一步发展确实起了极其重要的作用。
按用户的性质,可以将目前Linux的用户分为个人用户、专业用户和商业用户。
①个人用户可以说是业余用户。在这类用户中,学生占据了很大的比例。在Linux的使用者中,个人用户占据很大部分。随着Linux的进一步发展,这些用户是Linux得以发展的潜在的最大用户群。
②专业用户大多是UNIX的使用者,他们本身对UNIX比较熟悉,能够很快地掌握Linux的使用。专业用户是Linux最忠实的拥护者。
③商业用户要向客户提供商业服务。目前,广泛使用Linux的商业用户多为信息服务提供商,如大量的ISP或ICP等。随着Linux优秀性能逐渐被广大商业用户所认识,Linux商业用户的队伍规模会很大。
1.3.3 Linux的特点
Linux的功能强大而全面,与其他操作系统相比,具有一系列显著特点。
1.与UNIX系统兼容
现在,Linux已成为具有全部UNIX特征,遵从IEEE POSIX标准的操作系统。所有UNIX的主要功能都有相应的Linux工具和实用程序。对于UNIX System V,其软件程序源码在Linux上重新编译之后就可以运行;而对于BSD UNIX,它的可执行文件可以直接在Linux环境下运行。所以,Linux实际上就是一个完整的UNIX类操作系统。Linux系统上使用的命令多数都与UNIX命令在名称、格式、功能上相同。
2.自由软件和源码公开
Linux项目从一开始就与GNU项目紧密结合起来,它的许多重要组成部分直接来自GNU项目。任何人只要遵守GPL条款,就可以自由使用Linux源程序。这样就激发了世界范围内热衷于计算机事业的人们的创造力。通过Internet,这一软件得到迅速传播和广泛使用。
3.性能高和安全性强
在相同的硬件环境下,Linux可以像其他著名的操作系统那样运行,提供各种高性能的服务,可以作为中小型ISP或Web服务器工作平台。
Linux提供了先进的网络支持,如内置TCP/IP协议、上面运行了大量网络管理、网络服务等方面的工具,用户可利用它建立起高效稳定的防火墙、路由器、工作站、Intranet服务器和WWW服务器。它还包含了大量系统管理软件、网络分析软件、网络安全软件等。
由于Linux源码是公开的,所以可消除系统中是否有“后门”的疑惑。这对于关键部门、关键应用来说,是至关重要的。
4.便于定制和再开发
在遵从GPL版权协议的条件下,各部门、企业、单位或个人可根据自己的实际需要和使用环境对Linux系统进行裁剪、扩充、修改或者再开发。
5.互操作性高
Linux操作系统支持数十种文件系统格式,它能够以不同的方式实现与非Linux系统的不同层次的互操作。
①客户-服务器(Client/Server)网络。Linux可以为基于MS DOS,Windows及其他UNIX的系统提供文件存储、打印机、终端、后备服务及关键性业务应用。
②工作站。与工作站间的互操作可以让用户把他们的计算需求分散到网络的不同计算机上。
③仿真。在Linux上运行MS DOS与Windows平台的仿真工具,就可以运行DOS/Windows程序。
6.全面的多任务和真正的32位操作系统
Linux和其他UNIX系统一样,是真正的多任务系统,它允许多个用户同时在一个系统上运行多道程序。Linux还是真正的32位操作系统,它工作在Intel 80386及以后的Intel处理器的保护模式下。Linux支持多种硬件平台。
1.3.4 Linux的版本
Linux有两种版本:核心(Kernel)版本和发行(Distribution)版本。
1.核心版本
核心版本主要是Linux的内核。Linus等人在不断地开发和推出新的内核。Linux内核的官方版本由Linus Torvalds本人维护着。核心版本的序号由三部分数字构成,其形式为:
major.minor.patchlevel
其中,major为主版本号,minor为次版本号,二者共同构成了当前核心版本号;patchlevel表示对当前版本的修订次数。例如,2.6.34表示对2.6核心版本的第34次修订,这是目前最新的核心版本。
根据约定,若次版本号为奇数,则表示该版本加入新内容,但不一定很稳定,相当于测试版;若次版本号为偶数,则表示这是一个可以使用的稳定版本。由于Linux内核开发工作的连续性,因此内核的稳定版本与在此基础上进一步开发的不稳定版本总是同时存在的。对于一般用户,建议采用稳定的核心版本。
2.发行版本
发行版本是各个公司推出的版本,它们与核心版本是各自独立发展的。发行版本通常将Linux系统内核与众多应用软件及相关文档集成在一起,包括安装界面、系统设定、管理工具等软件,构成一个发行套件,从而方便了用户使用。目前,国内外开发出的Linux发行版本有几百个,常见的发行版本有以下7种。
(1)Red Hat Linux/ Fedora Core
Red Hat Linux是世界上使用最多、我国用户最熟悉的Linux发行版本之一。它支持众多的硬件平台,安全性能良好,其创建的RPM软件包管理器(Redhat Package Manager)是目前业界最流行的软件安装方式,它还拥有丰富的软件包、方便的系统管理界面及详细且完整的联机文档。
Red Hat公司在2003年发布了Red Hat 9.0,并宣布不再推出个人使用的发行套件而专心发展商业版本。因此,目前Red Hat分为两个系列:由Red Hat公司提供收费技术支持和更新的Red Hat Enterprise Linux(RHEL);以及由Red Hat公司赞助、由社区开发的免费的Fedora Core。Fedora Core自第五版起直接更名为Fedora。目前最新版本是Fedora 14。
Red Hat公司网站是http://www.redhat.com。
Fedora的官方网站是http://fedoraproject.org。
(2)Debian
Debian是一个致力于创建自由操作系统的合作组织,其开发的操作系统叫做Debian GNU/Linux,简称Debian。它拥有简单方便的安装过程,超过18 000多个高度集成的软件包,升级程序简便。它分为三个版本分支:stable,testing和unstable。其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户;testing版本都经过unstable的测试,相对较稳定,也支持不少新技术;而stable版本一般只用于服务器,上面的软件包大部分都比较陈旧,但是稳定性和安全性都非常高。
Debian的官方网站是http://www.debian.org。
(3)Ubuntu
Ubuntu是基于Debian体制的新一代Linux操作系统,它继承了Debian的优点,并提供更易用、更人性化的使用方式。主要特点是:采用GNOME桌面环境;使用Sudo工具,系统具有更好的安全性;系统安装完成后即可使用,可用性强;新增了虚拟机环境下安装等特性。Ubuntu主要分为桌面版和服务器版两种。
Ubuntu Linux的网站是http://www.ubuntu.org.cn。
(4)Slackware
Slackware Linux创建于1992年,是出现最早的Linux发行套件之一。与很多其他的发行版不同,它坚持KISS(Keep It Simple Stupid)原则:Slackware没有RPM之类的成熟的软件包管理器。它的最大特点是安装简单(但配置系统需要用户有经验),目录结构清晰,版本更新快,适于安装在服务器端。
Slackware的网站是http://www.slackware.com。
(5)openSuSE
openSuSE是著名的Novell公司旗下的Linux发行版,发行量在欧洲占第一位。它采用KDE4.3作为默认桌面环境,同时也提供GNOME桌面版本。它的软件包管理系统采用自主开发的YaST,颇受好评。它的用户界面非常华丽,甚至超越Windows 7,而且系统性能良好。现在的最新版本是11.2。
openSuSE Linux的官方网站是http://www.opensuse.org。
(6)红旗Linux
红旗Linux是由北京中科红旗软件技术有限公司开发的一系列Linux发行版,包括桌面版、工作站版、数据中心服务器版、HA集群版和红旗嵌入式Linux等产品,近年来其桌面系统在Linux商用桌面发行版本的出货量连续居全球首位。其最新桌面版是7.0。
红旗Linux在桌面领域主要致力于模仿Windows的界面和使用方法,具有人性化、易用的交互界面,功能强大,性能可靠,运行稳定,具备广泛的硬件支持能力和扩充性。
红旗Linux的官方网站是http://www.redflag-linux.com。
(7)中标普华
中标普华Linux桌面系统是由中标软件有限公司(简称“中标软件”)开发的。中标软件秉承人性化、实用化、效率化的设计理念,拥有“中标麒麟”、“中标凌巧”、“中标普华”三大品牌,产品功能齐全。中标普华以办公软件为核心,满足不同行业与领域特定的需求,提供用户所需的所有标准桌面应用软件,具有优秀的网络兼容性。
中标普华的Linux网站是http://www.cs2c.com.cn。
1.3.5 Linux的发展优势与存在的问题
随着Linux技术的更加成熟、完善,其应用领域和市场份额继续快速扩大。目前,其主要应用领域是服务器系统和嵌入式系统。然而,Linux的足迹已遍及各行各业,几乎无所不在。
Linux具有以下发展优势:
①开放源码系统从本质上就具有其他系统无法比拟的研制开发优势,它集中了众多软件专家、编程高手、IT爱好者,以及黑客的智慧与辛苦,在一个公开的、自由的、不受约束的论坛上,大家各抒己见,从不同的角度对Linux系统提出修改、扩充、纠错、支持或批评的意见与建议。这是全球范围的研制,其广度是任何一个公司所无法比拟的。
②受到各国政府的大力支持。包括美国政府在内的各国政府都全力支持Linux,不少政府在采购办公软件时优先考虑开源软件。Linux正逐步成为电子政务的平台标准。我国政府对软件产业非常支持,先后颁布了国发[2000]18号文件和国办发[2002]47号文件,对软件产业发展给予各项优惠政策。
③得到全球各大软/硬件公司的支持。几乎各大知名软/硬件厂商都支持Linux系统,如IBM公司在其所有的解决方案中都全力采用Linux,Sun公司正在实施全面支持Linux的战略,HP公司宣布其所有硬件产品都支持Linux。
④价格优势和安全性。Linux是高效的、安全的、可靠的、廉价的自由软件。对于各政府部门、企事业单位、机关学校来说,采用Linux系统具有较好的经济效益。对于个人来说,这是少花钱、多办事的捷径。而且操作系统涉及国家安全,采用开源代码系统具有重要意义。
然而,Linux的发展也存在一些不利因素。据某资讯机构进行的“中国Linux应用现状调查”结果显示,有超过半数的被调查者认为,对Linux“不熟悉”影响了自己的选择。除此之外,应用软件少、使用不方便和功能不完备也是用户不热心使用它的原因。
应当指出,Linux应用软件少和使用不方便的问题正在得到解决。例如,红旗Linux桌面系统的图形界面与Windows已经相差无几,可以方便、直观、快捷地进行操作。随着各大公司的积极投入,已经开发出大量具有特色的应用软件,可以适应各方面的不同需求。当然,由于Linux版本众多,也影响了它的普及和应用,需要尽快制定统一的桌面版本标准(规范)。另外,如何使开发者和经营商获得合理的利润,对于促进Linux的快速、持续的发展也至关重要。Linux的推广需要大量的Linux人才,所以尽快调整计算机/信息教育和培训体系就显得十分必要。