项目二 认识Linux操作系统

【情景链接】

Linux在政府机构、金融等领域广泛使用,让我们来了解一下Linux操作系统。

任务 了解Linux的历史及特点

【任务说明】

通过介绍Linux操作系统的发展历史,更好地掌握Linux操作系统的知识体系。

活动一 了解Linux操作系统的发展历史

【活动目的】

通过学习本活动的内容,了解Linux操作系统的发展历史、重要里程碑等。

【活动要求】

掌握Linux操作系统的概念及其发展史。

【活动步骤】

步骤一:Linux操作系统简介

Linux操作系统是一套免费的、多用户、多任务的操作系统。Linux操作系统的产生和UNIX操作系统有很大的关系。20世纪80年代后期,虽然UNIX已经非常开放,但在其内核代码也不是随意就可以得到的。于是芬兰赫尔辛基大学的学生LinusTorvalds决定自己编写一个独立的操作系统。1991年8月,当时25岁的LinusTorvalds,编写出了Linux系统最简单的原型,并将它发布在了互联网上让其他人可以任意下载并修改。后来经过众多世界顶尖的软件工程师的不断修改和完善,Linux得以在全球普及开来,在服务器领域及个人桌面版得到越来越多的应用,在嵌入式开发方面更是具有其他操作系统无可比拟的优势,并以每年100%的用户递增数量显示了Linux强大的力量。

运行Linux需要的配置并不高,它支持众多的PC设备,并且这样一个功能强大的软件完全免费,其源代码是完全公开的,任何人都能拿来使用。基于Linux开放源码的特性,现在很多国家的政府机构使用Linux操作系统。Linux的广泛使用为政府机构节省了不少经费,也降低了对封闭源码软件潜在的安全性的忧虑。

现在Linux系统的稳定性、多工能力与网络功能已是许多商业操作系统无法比拟的。

步骤二:了解Linux的内核版本号

Linux的开发是国际性开发,都在互联网上进行,在互联网上由近100位高手日夜进行开发,总体协调人是LinusTorvalds。Linux的各个发行版的序列号主要指的是内核的版本号。根据不同的版本,内核的序列号也不一样。Linux开发版的序号的第二位为奇数,阶段性发布的序号第二位为偶数。带有序列号的Linux发布权掌握在Linus手中。版本序列号也授予Linus本人,它代表以Linus为首的国际性开发团队的创造性智慧的结晶。如今最新的Linux的内核为2.6。

步骤三:了解Linux操作系统的发展历史

1991年10月5日,LinusTorvalds在新闻组comp.os.minix发布了大约有一万行代码的Linux v0.01版本。

1992年,大约有1 000人在使用Linux,值得一提的是,他们基本上都属于真正意义上的hacker。

1993年,大约有100余名程序员参与了Linux内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有10万行,用户大约有10万左右。

1994年3月,Linux 1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。至此,Linux的代码开发进入良性循环。很多系统管理员开始在自己的操作系统环境中尝试Linux,并将修改的代码提交给核心小组。由于拥有了丰富的操作系统平台,因而Linux的代码中也充实了对不同硬件系统的支持,大大提高了跨平台移植性。

1995年,此时的Linux可在Intel、Digital以及Sun SPARC处理器上运行了,用户量也超过了50万,相关介绍Linux的Linux Journal杂志也发行了超过10万册之多。

1996年6月,Linux 2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux已经进入了实用阶段,全球大约有350万人使用。

1997年夏,大片《泰坦尼克号》在制作特效中使用的160台Alpha图形工作站中,有105台采用了Linux操作系统。

1998年是Linux迅猛发展的一年。1998年1月,小红帽高级研发实验室成立,同年Red-Hat5.0获得了Info World的操作系统奖项。4月Mozilla代码发布,成为Linux图形界面上的王牌浏览器。Redhat宣布商业支持计划,网罗了多名优秀技术人员开始商业运作。王牌搜索引擎Google现身,采用的也是Linux服务器。同年10月,Intel和Netscape宣布小额投资红帽软件,这被业界视作Linux获得商业认同的信号。同月,微软在法国发布了反Linux公开信,这表明微软公司开始将Linux视作了一个对手来对待。12月,IBM发布了适用于Linux的文件系统AFS3.5以及JikesJava编辑器和SecureMailer及DB2测试版,IBM的此番行为,可以看做是与Linux羞答答地第一次亲密接触。迫于Windows和Linux的压力,Sun逐渐开放了Java协议,并且在UltraSparc上支持Linux操作系统。1998年可以说是Linux与商业接触的一年。

2001年1月,Linux 2.4发布,它进一步提升了SMP系统的扩展性,同时它也集成了很多用于支持桌面系统的特性:USB、PC卡(PCMCIA)的支持,内置的即插即用等功能。

2003年12月,Linux 2.6版内核发布,相对于2.4版内核2.6,在对系统的支持都有很大的变化。

这些变化包括:

●更好地支持大型多处理器服务器,特别是采用NUMA设计的服务器。

●更好地支持嵌入式设备,如手机、网络路由器或者视频录像机等。

●对鼠标和键盘指令等用户行为反应更加迅速。

●对设备驱动程序做了彻底更新,如与硬盘和CD-ROM通信的软件模块。

活动二 了解Linux的特点

【活动目的】

通过本次活动内容的学习,了解Linux的特点及与其他操作系统相比所具有的显著特点。

【活动要求】

掌握Linux的特点。

【活动步骤】

步骤一:了解Linux的特点

Linux最大的优势在于其作为服务器的强大功能,这也是众多用户选择使用它的根本原因。由于Linux通过Internet协同开发,随着它健壮和稳定的网络功能不断壮大,毫无疑问它将越来越成为一种纯正的网络操作系统。

1.多任务管理

Linux是抢占多任务多用户操作系统,具有优异的内存和多任务管理能力,不仅可让用户同时执行十个应用程序,还允许远程用户联机登录,并运行程序。

2.图形集成界面

很多人认为只有微软的Windows系列才拥有GUI(GraphicalUserInterface),这是不对的。Linux的图形用户界面系统是 XWindowSystem,最早由 MIT(麻省理工学院)所开发。XWindowSystem提供多种窗口管理程序(WindowManager),结合对象集成环境,让用户能以灵活的方式来管理窗口和使用软件。随着Linux版本的升级,越来越多的Linux程序都提供了窗口界面。

3.广泛的协议支持

Linux内核主要支持以下协议:

(1)TCP/IP通信协议。

(2)IPX/SPX通信协议。

(3)AppleTalk通信协议:X.25、Frame-relay。

(4)ISDN通信协议。

(5)PPP、SLIP和PLIP等通信协议。

(6)ATM通信协议。

4.提供完善的网络功能

(1)Linux使用TCP/IP作为主要的网络通信协议,内建FTP、TELNET、Mail和AnachP等各种功能。再加上稳定性高,因此许多ISP都采用MailServer、HTTPserver和FTPserver等服务器。

(2)支持FTP服务和客户端。

(3)支持电子邮件服务和客户端程序。

(4)支持DNS和DHCP。

(5)支持网络协议服务(NIS)。

(6)支持认证服务。

5.支持多种应用程序及开发工具

Linux集中了大量前人的智慧,它的效率和运行速度非常快。Linux非常稳定,因此也成为一个优秀的开发平台。

在Linux下已经有越来越多的客户端和服务器端的应用软件。

(1)语言及编程环境:C、C++、Java、Perl和Fortran等。

(2)图形环境:GNOME、KDE、GIMP、WindowMaker和IceWM等。

(3)编辑器:Xcmacs、Vim、Gedit和pico等。

(4)Shells:bash、tcsh、ash和csh等。

(5)文字处理软件:OpcnOftke、Kword和abiWord等。

(6)数据库:MySQL、PostgreSQL和Oracle等。

6.便捷获得升级子程序

由于Linux是免费的操作系统,而又有一大批支持自由软件的人士通过不懈的努力来使Linux功能更加完善,因此其版本的升级很快。

7.文件系统下良好的兼容性

Linux当前主要的网络操作系统保持良好的兼容性,可兼容的环境有Apple环境、Win-dows环境、Novell环境和UNIX环境等。

步骤二:与其他操作系统相比,Linux具有的显著特点

1.模块化程度高

Linux的内核设计非常精巧,分成进程调度、内存管理、进程间通信、虚拟文件系统和网络接口五大部分。其独特的模块机制可根据用户的需要,实时地将某些模块插入或从内核中移走,使得Linux系统内核可以精简得非常小巧,很适合于嵌入式系统的需要。

2.源码公开

由于Linux系统的开发从一开始就与GNU项目紧密地结合起来,所以它的大多数组成部分都直接来自GNU项目。任何人、任何组织只要遵守GPL条款,就可以自由使用Linux源代码,为用户提供了最大限度的自由度。这一点也正投嵌入式系统所好,因为嵌入式系统应用千差万别,设计者往往需要针对具体的应用对源码进行修改和优化,所以是否能获得源代码对于嵌入式系统的开发是至关重要的。加之Linux的软件资源十分丰富,每种通用程序在Linux上几乎都可以找到,并且数量还在不断增加。这一切就使设计者在其基础之上进行二次开发变得非常容易。另外,由于Linux源代码公开。同时,源码开放给各教育机构提供了极大的便利,从而也促进了Linux的学习、推广和应用。

3.广泛的硬件支持

Linux能支持x86、ARM、MIPS、ALPHA和PowerPC等多种体系结构的微处理器。目前已成功地移植到数十种硬件平台,几乎能运行在所有流行的处理器上。

由于世界范围内有众多开发者在为Linux的扩充贡献力量,所以Linux有着异常丰富的驱动程序资源,支持各种主流硬件设备和最新的硬件技术,甚至可在没有存储管理单元MMU的处理器上运行,这些都进一步促进了Linux在嵌入式系统中的应用。

4.安全性及可靠性好

内核高效稳定。Linux内核的高效和稳定已在各个领域内得到了大量事实的验证。

Linux中大量网络管理、网络服务等方面的功能,可使用户很方便地建立高效稳定的防火墙、路由器、工作站、服务器等。为提高安全性,它还提供了大量的网络管理软件、网络分析软件和网络安全软件等。

5.具有优秀的开发工具

开发嵌入式系统的关键是需要有一套完善的开发和调试工具。传统的嵌入式开发调试工具

是在线仿真器(In CircuitEmulator,ICE),它通过取代目标板的微处理器,给目标程序提供一个完整的仿真环境,从而使开发者能非常清楚地了解到程序在目标板上的工作状态,便于监视和调试程序。在线仿真器的价格非常高,而且只适合做非常底层的调试。如果使用的是嵌入式Linux,一旦软硬件能支持正常的串口功能,即使不用在线仿真器,也可以很好地进行开发和调试工作,从而节省了一笔不小的开发费用。嵌入式Linux为开发者提供了一套完整的工具链(ToolChain),能够很方便地实现从操作系统到应用软件各个级别的调试。

6.有很好的网络支持、文件系统支持

Linux从诞生之日起就与Internet密不可分,支持各种标准的Internet网络协议,并且很容易移植到嵌入式系统当中。目前,Linux几乎支持所有主流的网络硬件、网络协议和文件系统,因此它是NFS的一个很好的平台。

另一方面,由于Linux有很好的文件系统支持(例如,它支持Ext2、FAT32、romfs等文件系统),是数据备份、同步和复制的良好平台,这些都为开发嵌入式系统应用打下了坚实的基础。

7.与UNIX完全兼容

目前,在Linux中所包含的工具和实用程序,可以完成UNIX的所有主要功能。但由于Linux不是为实时而设计的,因而这就成了Linux在实时系统中应用的最大遗憾。不过,目前有众多的自由软件爱好者正在为此进行不懈的努力,也取得了诸多成果。

8.具有丰富的图形用户界面

Linux的图形用户界面是XWindow系统。XWindow可以做MSWindows下的所有事情,而且更有趣、更丰富,用户甚至可以在几种不同风格的窗口之间来回切换。

9.具有强大的网络功能

实际上,Linux就是依靠互联网才迅速发展起来的,Linux具有强大的网络功能也是自然而然的事情。它可以轻松地与 TCP/IP、LANManager、WindowsforWorkgroups、Novell Netware或WindowsNT网络集成在一起,还可以通过以太网或调制解调器连接到Internet上。

Linux不仅能够作为网络工作站使用,更可以胜任各类服务器,如应用服务器、文件服务器、打印服务器、邮件服务器、新闻服务器等。

10.开发功能强

几乎所有的主流程序设计语言,如 C、C++、Fortran77、ADA、PASCAL、Modual2/3、Tcl/TkScheme、SmallTalk/X等都可移植到Linux上。

活动三 了解Linux的各种发行版本

【活动目的】

通过本次活动内容的学习,了解常见的Linux发行版本,能选择主流和适合自己的Linux发行版本。

【活动要求】

了解并能下载各种Linux发行版本,了解内核版本和发行版本的区别。

【活动步骤】

原始的Linux操作系统只提供了最基本的计算机软件和硬件的管理功能。所以一般情况下我们会选择安装第三方公司整合好的,添加了很多应用程序的发行版本。目前,Linux有超过300个发行版被积极开发,最普遍被使用的发行版有大约12个。

一个典型的Linux发行版包括:Linux内核,一些GNU程序库和工具,命令行shell,图形界面的X-Window系统和相应的桌面环境,如KDE或GNOME,并包含数千种办公套件、编译器、文本编辑器到科学工具的应用软件。

步骤一:了解Linux的发行版

1.主流的Linux发行版

较主流的Linux发行版本有:Asianux,B2DLinux,ConectivaLinux,Debian GNU/Linux,FedoraCore,Gentoo Linux,Knoppix Linux,Linux From Scratch,MagicLinux,Mandriva Linux,Red HatLinux,SlackwareLinux,Stanix LiveCD,SUSELinux,Turbo Linux,Ubuntu Linux。

2.中国大陆的Linux发行版

中国大陆的Linux发行版本有:红旗Linux(Redflag Linux),冲浪Linux(Xteam Linux),蓝点 Linux,Hiweed GNU/Linux,MagicLinux,Engineering Computing GNU/Linux,Open Desktop,新华Linux,共创Linux,百资Linux,中标普华Linux,中软Linux,新华华镭Linux (RaysLX),CD Linux,MC Linux,即时 Linux(ThizLinux),b2d Linux,IBOX,MCLOS,FANX,Everest,酷博Linux,台湾地区的鸿奇Linux。

3.目前最著名的发行版

虽然Linux的发行版本很多,但是在全世界范围内,比较著名的Linux发行版本并不多。常见的有:Debian,红帽(redhat)、Ubuntu、Suse、Open Suse、Mandriva(原 Mandrake)、CentOS、Fedora等。

步骤二:了解FedoraLinux

FedoraLinux是众多Linux发行套件之一。它是一套从 Red HatLinux 发展出来的免费Linux系统,现时Fedora最新的版本是Fedora10正式版。FedoraLinux可运行在普通的32位和64位PC,以及苹果(Apple)公司的PowerPC上。

本书之所以采用FedoraLinux来学习Linux。是因为Fedora和Redhat与Linux的联系很密切。自Redhat9.0以后,不再发布桌面版,而是把这个项目与开源社区合作,于是就有了Fedora这个Linux发行版。Fedora可以说是Redhat桌面版本的延续,只不过是与开源社区合作。

FedoraLinux的下载地址为:

http://torrent.fedoraproject.orghttp://fedoraproject.org/zh_CN/get-fedora

【课外活动】

如何在同一台机器上安装Linux和Windows操作系统。

【模块回顾】

操作系统是方便用户管理和控制计算机硬件资源的系统软件。是最贴近硬件的一层软件,所以说操作系统是硬件的扩充。常见的操作系统有DOS、OS/2、UNIX、Linux、Windows、Netware等。

Linux是由苏兰赫尔辛基大学计算机系学生Linux Torvals创建的。由于Linux是免费的操作系统,所以世界上有一大批支持自由软件的人通过不懈的努力来使Linux日趋完美,使其功能更加完善。现在很多公司服务器,都使用Linux来做操作系统,一方面是因为Linux的功能强大,性能非常稳定;另一方面,也不会因为版权问题引起纠纷。

Linux与其他操作系统相比,具有以下十大显著特点:①模块化程度高;②源码公开;③广泛的硬件支持;④安全性及可靠性好;⑤具有优秀的开发工具;⑥有很好的网络支持及文件系统支持;⑦与UNIX完全兼容;⑧具有丰富的图形用户界面;⑨具有强大的网络功能;⑩开发功能强。

Linux以其独特的魅力越来越受到人们的重视与喜爱。

【习题】

1.操作系统的概念是什么?常见的操作系统有哪些?

2.操作系统的特征有哪些?

3.Linux操作系统是怎样的一个操作系统?最早是由谁创建的?

4.简述Linux操作系统的特点。

5.Linux操作系统与其他操作系统相比,它的显著特点是什么?