《Linux操作系统 第1章概述.ppt》由会员分享,可在线阅读,更多相关《Linux操作系统 第1章概述.ppt(89页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Linux操作系统操作系统主讲:梁琛电子邮件:主要内容主要内容Linux概述概述常用命令常用命令文本编辑文本编辑Shell程序设计程序设计内核简介内核简介常用开发工具常用开发工具系统管理系统管理 学习方式和教材学习方式和教材课堂讲解(20学时)+上机(12学时)具体上机地点和时间:网络实验室(二号实验楼442和425)第5、7、9、10、12、14周周一12节课参考教材:Linux教程(第2版)电子工业出版社电子工业出版社 孟庆昌孟庆昌 参考书目参考书目n即学即用LINUX 电子工业出版社nLinux实用大全陈向阳、方汉编著,科学出版社nLinux 基础教程 清华大学出版社nRedhat Li
2、nux大全nLinux大全n 有关Linux基础、配置、系统管理的书n Shell编程相关书籍根据中华英才网统计数据,北京地区根据中华英才网统计数据,北京地区 Linux 程序员月薪平均为程序员月薪平均为 Windows 程序员的程序员的 1.8 倍、倍、Java 程序员的程序员的 2.6 倍,倍,Linux 程序员年终奖金平均为程序员年终奖金平均为 Windows 程序员的程序员的2.9 倍。同时数据倍。同时数据显示,随着工作经验的增长显示,随着工作经验的增长Linux 程程序员与序员与 Windows 程序员的收入差距程序员的收入差距还有扩大的趋势。还有扩大的趋势。为什么要用为什么要用Li
3、nux?Linux是是免费免费的的,上面又有那么多上面又有那么多免费免费的软件的软件,为什么不用为什么不用?Windows实在太不稳定了实在太不稳定了,受不了受不了,换个平台吧。换个平台吧。想学习想学习UNIX,可是钱包里的钞票不多,可是钱包里的钞票不多,先从先从Linux开开始吧。始吧。想学习操作系统想学习操作系统,哪里有开放源代码的哪里有开放源代码的OS?而且还而且还要很活跃要很活跃,有前途的。有前途的。基于基于Linux的并行计算,不但的并行计算,不但费用低廉,而且功能强大,有潜力费用低廉,而且功能强大,有潜力,重要的是有源代重要的是有源代码。码。想成为一名想成为一名Hacker(当然是
4、网侠一类当然是网侠一类),Linux当然是当然是最好的工具之一。最好的工具之一。Linux潜在的商业价值不可限量潜在的商业价值不可限量,性能相当地好性能相当地好,稳稳定性也很好定性也很好,用其替换商业操作系统真是明智的选择。用其替换商业操作系统真是明智的选择。Oracle,Infomix,Sysbase,IBM都支持都支持Linux了。了。用其作数据库平台挺不错。烦了一次又一次去买用其作数据库平台挺不错。烦了一次又一次去买许可证许可证(奸商经常设这样的陷阱奸商经常设这样的陷阱),Linux遵循公共遵循公共版权许可证版权许可证(GPL)正合我意。正合我意。Linux太适合太适合Internet/
5、Intranet,本身就是通过网络本身就是通过网络来协同开发的来协同开发的,网络时代为什么不用网络时代为什么不用Linux?采用采用Linux可以极大的降低拥有者总成本可以极大的降低拥有者总成本(TCO)。等待商业操作系统补丁的耐心是有限度的等待商业操作系统补丁的耐心是有限度的,更受不更受不了总被商家牵着鼻子走了总被商家牵着鼻子走,开放源代码的开放源代码的Linux至少至少可以使用户有一定的控制权。可以使用户有一定的控制权。开放源代码使用户可以按照自己的需要添加或删开放源代码使用户可以按照自己的需要添加或删除某些功能除某些功能,用户可定制性用户可定制性,真是太好了真是太好了!利用开利用开放源代
6、码的放源代码的Linux还可以开发路由器还可以开发路由器,嵌入式系统嵌入式系统,网络计算机网络计算机,个人数字助理等等个人数字助理等等,GNU真是巨大的知真是巨大的知识宝库识宝库,何乐而不用何乐而不用 回忆回忆操作系统的作用操作系统的作用学习学习windows的过程的过程Linux简介 Linux是一种计算机操作系统和它的内核的是一种计算机操作系统和它的内核的名字。它也是自由软件和开放源代码发展中最著名字。它也是自由软件和开放源代码发展中最著名的例子。严格来讲,名的例子。严格来讲,Linux这个词本身只表示这个词本身只表示Linux 内核,但在实际上人们已经习惯了用内核,但在实际上人们已经习惯
7、了用Linux来形容整个基于来形容整个基于Linux内核,并且使用内核,并且使用GNU 各种工具和数据库的操作系统各种工具和数据库的操作系统(也被称为也被称为GNU/Linux)。基于这些组件的。基于这些组件的Linux软件被称为软件被称为Linux发行版。一般来讲,一个发行版。一般来讲,一个Linux发行套发行套 件件包含大量的软件,比如软件开发工具,数据库,包含大量的软件,比如软件开发工具,数据库,Web服务器(例如服务器(例如Apache),X Window,桌面,桌面环境(比如环境(比如GNOME和和KDE),办公套件(比如),办公套件(比如OpenOffice.org),等等。),等
8、等。什么是什么是Linux?由四部分组成由四部分组成 内核:内核:内核是系统的心脏,是运行程序和管理磁盘、打内核是系统的心脏,是运行程序和管理磁盘、打印机等硬件设备的核心程序。它负责管理处理器、内存、其印机等硬件设备的核心程序。它负责管理处理器、内存、其他硬件设备,负责管理磁盘上的文件,负责从网络上接收和他硬件设备,负责管理磁盘上的文件,负责从网络上接收和发送数据包,负责启动并运行程序等。发送数据包,负责启动并运行程序等。用户接口:用户接口:shell是系统的用户界面,提供了用户与内核是系统的用户界面,提供了用户与内核进行交互操作的一种接口。进行交互操作的一种接口。文件结构:文件结构:文件结构
9、是文件存放在磁盘等存储设备上的文件结构是文件存放在磁盘等存储设备上的组织方法。组织方法。实用工具:实用工具:编辑器编辑器:用于编辑文件。用于编辑文件。过滤器过滤器:用于接收数据并过滤数据。用于接收数据并过滤数据。交互程序交互程序:允许用户发送信息或接收来自其他用户的信息。允许用户发送信息或接收来自其他用户的信息。Linux的基本结构的基本结构开放性多用户多任务良好的用户界面设备独立性提供了丰富的网络功能可靠的系统安全良好的可移植性Linux的特性的特性1.1 UNIX系统简介系统简介 1.1.1 UNIX系统的发展历史系统的发展历史 1.“太空漫游太空漫游”游戏游戏 1965年,年,AT&T贝
10、尔实验室、通用电气公司、麻贝尔实验室、通用电气公司、麻省理工学院省理工学院MAC课题组一起联合为美国国防部课题组一起联合为美国国防部研制开发一个称为研制开发一个称为Multics的新操作系统。然而,的新操作系统。然而,由于由于Multics的规模太大以至于未能完成设计目的规模太大以至于未能完成设计目标。标。之后,之后,贝贝尔尔实验实验室的系室的系统统程序程序设计设计人人员员Ken Thompson和和Dennis Ritchie等把曾在等把曾在MulticsMultics的分的分时终时终端上端上编编写的写的“Space Travel”Space Travel”游游戏戏程序程序移置到移置到PDP
11、-7PDP-7上上时编时编写出来了写出来了UNIXUNIX。1.1.1 UNIX系统的发展历史系统的发展历史2.UNIX与大学与大学 AT&T公司既不出售公司既不出售UNIX、也不对其提供技也不对其提供技术支持。而同时为了满足大家的需要,术支持。而同时为了满足大家的需要,AT&T公司在签署简单协议的前提下,将公司在签署简单协议的前提下,将UNIX系统系统无偿地提供给大学,以供教学与研究。无偿地提供给大学,以供教学与研究。学生不仅仅使用学生不仅仅使用UNIX,他们还编写他们还编写UNIX程序。程序。有些大学不仅仅做程序有些大学不仅仅做程序他们还修改操作他们还修改操作系统本身。系统本身。1.1.1
12、 UNIX系统的发展历史系统的发展历史3.纯纯UNIX系统系统System V和和BSD UNIX 贝尔实验室先后在贝尔实验室先后在1983年发行了年发行了System V,1984年发行了年发行了System V Release2(SVR2),),1987年发行了年发行了SVR3。System V引入了许多新特征,新设施。引入了许多新特征,新设施。UNIX系统的另外一个最重要的分支系统的另外一个最重要的分支BSD UNIX的大部分特点与的大部分特点与System V UNIX都差都差不多,但是促使其迅速流行的原因是加州大不多,但是促使其迅速流行的原因是加州大学伯克利分校的计算机系统研究小组最
13、早发学伯克利分校的计算机系统研究小组最早发表的一个包括页式内存管理的表的一个包括页式内存管理的UNIX版本。版本。1.1.1 UNIX系统的发展历史系统的发展历史4.UNIX向向GUI发展发展GUI是一个用图形(称为图标)表示操作系统的是一个用图形(称为图标)表示操作系统的组成部分,组成部分,GUI的最初设想是创建一个友好的用的最初设想是创建一个友好的用户环境并以一致的隐喻来理解操作系统。户环境并以一致的隐喻来理解操作系统。GUI使使用方便,不是因为容易理解,而是因为使用的用方便,不是因为容易理解,而是因为使用的致性,当用户学会在一种致性,当用户学会在一种GUI环境下运行环境下运行个程个程序后
14、,就可以容易地运行相同环境中的其他程序。序后,就可以容易地运行相同环境中的其他程序。DEC和麻省理工合作的和麻省理工合作的Athena计划,合并了计划,合并了个个基于斯坦福大学的基于斯坦福大学的W窗口系统的窗口系统,窗口系统的窗口系统,命名命名为为X。开放软件基金会建立的开放软件基金会建立的GUI(称为称为Motif)是使用是使用X窗口创建的。另一个流行的窗口创建的。另一个流行的GUI是是Open Look,由,由Sun Microsystems提供。提供。1.1.1 UNIX系统的发展历史系统的发展历史5.UNIX系统的商业化系统的商业化 UNIX系统的不断发展吸引了许多计算机公系统的不断发
15、展吸引了许多计算机公司,它们开始将司,它们开始将UNIX商业化,出售自己的商业化,出售自己的UNIX版本。每一家都是以版本。每一家都是以AT&T或或BSD为为蓝本,将它们移植到自己的硬件上,并加蓝本,将它们移植到自己的硬件上,并加上一些自己的上一些自己的“增值增值”功能功能。每种商业变体都增加了许多新特征,这些每种商业变体都增加了许多新特征,这些功能中的许多后来又被加入到主线系统中,功能中的许多后来又被加入到主线系统中,这样逐步推动这样逐步推动UNIX系统向前发展。系统向前发展。1.1.1 UNIX系统的发展历史系统的发展历史6.UNIX系统的标准化系统的标准化 UNIX系统变体的泛滥造成了许
16、多不兼容问题,使系统变体的泛滥造成了许多不兼容问题,使得开发应用的程序员不得不花费大量的精力来保得开发应用的程序员不得不花费大量的精力来保证它们的程序可以运行于各种不同的证它们的程序可以运行于各种不同的UNIX系统。系统。美国美国IEEE组织成立了组织成立了POSIX委员会专门从事委员会专门从事UNIX的标准化工作。的标准化工作。1989年年POSIX的工作被转移至的工作被转移至ISO/IEC社团,并社团,并由由15工作组继续将其制定成工作组继续将其制定成ISO标准。标准。标标准准UNIXUNIX意意味味着着一一个个可可以以运运行行UNIXUNIX应应用用软软件件的的平平台台,它它为为用用户户
17、提提供供一一个个标标准准的的用用户户界界面面,而而不不在在于系统内部如何实现。于系统内部如何实现。1.1.2 UNIX系统的特点系统的特点1.多任务多任务 2.多用户多用户 3.并行处理能力并行处理能力 4.设备无关性设备无关性 5.工具工具 6.错误处理错误处理 7.强大的网络功能强大的网络功能 8.开放性开放性 1.2 Linux系统简介系统简介 1.2.1 Linux系统的发展历史系统的发展历史 1.MINIX操作系统操作系统 MINIX系统是由系统是由Andrew S.Tanenbaum开发的,开发的,是主要用于学生学习操作系统原理的实验室用是主要用于学生学习操作系统原理的实验室用操作
18、系统。操作系统。2.GNU计划计划 GNU计划和自由软件基金会是由计划和自由软件基金会是由Richard M.Stallman于于1984年创办的。旨在开发一个类似年创办的。旨在开发一个类似UNIX并且是自由软件的完整操作系统:并且是自由软件的完整操作系统:GNU系系统。为了保证统。为了保证GNU软件可自由地软件可自由地“使用、复制、使用、复制、修复、修改和发布修复、修改和发布”,所有,所有GNU软件必须遵守软件必须遵守GNU的通用许可证的通用许可证GPL。1.2.1 Linux系统的发展历史系统的发展历史GNU GPL创造性的提出了创造性的提出了“反版权反版权”(Copyleft),),这是
19、一个不同于商业软这是一个不同于商业软件件“版权所有版权所有”(Copyright)的法律概念,的法律概念,它不否认版权,也不反对发布软件时收取它不否认版权,也不反对发布软件时收取费用或取得利益。它的核心是费用或取得利益。它的核心是必须把发布必须把发布者的一切权利给予接受者者的一切权利给予接受者。必须保证接受。必须保证接受者能同时或通过其它渠道得到源程序,并者能同时或通过其它渠道得到源程序,并将将GNU GPL条款附加到软件的版权声明中,条款附加到软件的版权声明中,使接受者知道自己的权利。使接受者知道自己的权利。GNU GPL本身本身也是受法律保护的版权声明。也是受法律保护的版权声明。实现实现G
20、PL的途径的途径 它要求软件以源代码的形式发布,并规定,它要求软件以源代码的形式发布,并规定,任何用户都能够以源代码的形式将软件复任何用户都能够以源代码的形式将软件复制或发布给别的用户制或发布给别的用户它提醒每个用户,对于该软件不提供任何它提醒每个用户,对于该软件不提供任何形式的担保形式的担保如果用户的软件使用了受如果用户的软件使用了受GPL保护的任何保护的任何软件的一部分,那么,该软件就继承了软件的一部分,那么,该软件就继承了GPL软件,并因此而成为软件,并因此而成为GPL软件,也就软件,也就是说必须随应用程序一起发布源代码是说必须随应用程序一起发布源代码GPL并不排斥对自由软件进行商业性质
21、的并不排斥对自由软件进行商业性质的包装和发行,也不限制在自由软件的基础包装和发行,也不限制在自由软件的基础上打包发行其它非自由软件上打包发行其它非自由软件自由软件与开源运动自由软件与开源运动Richard Stallman 1984年建立了年建立了自由软件基金会自由软件基金会 GNUGNUs Not Unix自自由的思由的思想,但不是免费的午餐。想,但不是免费的午餐。自由软件开发者提供软件全部自由软件开发者提供软件全部源代码,任何用户都有权使用、源代码,任何用户都有权使用、拷贝、扩散、修改该软件,同时拷贝、扩散、修改该软件,同时用户也有义务将自己修改过的程用户也有义务将自己修改过的程序代码公开
22、。序代码公开。用户可以出售自己的程序拷贝用户可以出售自己的程序拷贝Richard Stallman自由软件(自由软件(Free Software)Free Software):遵循遵循GPLGPL的软件。的软件。你拥有运行该程序的自由,而且可以用于任何你拥有运行该程序的自由,而且可以用于任何目的。目的。你拥有修改程序以适应你个人需要的自由。你拥有修改程序以适应你个人需要的自由。你拥有再发行拷贝的自由,可以是无偿的,也你拥有再发行拷贝的自由,可以是无偿的,也可以收费。可以收费。你拥有发行该程序修改后版本的自由,从而使你拥有发行该程序修改后版本的自由,从而使其他人可以从你所做的改进中获益。其他人可
23、以从你所做的改进中获益。Linux一开始是要求所有的源码必须公开,并且任何人均不得从Linux 交易中获利。然而这种纯粹的自由软件的理想对于 Linux的普及和发展是不利的,于是Linux开始转向GPL,成为GNU阵营中的主要一员。现在,Linux凭借优秀的设计,不凡的性能,加上IBM、INTEL、CORE、ORACLE等国际知名企业的大力支持,市场份额逐步扩大,逐渐成为主流操作系统之一。Linux得以流行的原因之一得以流行的原因之一 遵循遵循POSIX标准标准vPOSIX 表示可移植操作系统接口(Portable Operating System Interface缩写为 POSIX 是为了
24、读音更像 UNIX)这个标准限定了Unix系统如何进行操作。POSIX限制所有Unix版本必须依赖大众标准,现有大部分Unix和流行版本都遵从POSIX,Linux从一开始就是遵循POSIX开发出来的。v是为了提高 UNIX 环境下应用程序的可移植性。但是POSIX 并不局限于 UNIX。vPOSIX是在Unix标准化过程中出现的产物。vPOSIX 1003.1标准定义了一个最小的Unix操作系统接口 v任何操作系统只有符合这一标准,才有可能运行Unix程序 Linux的肥沃土壤的肥沃土壤GNUvGNU GNU 是是 GNU Is Not Unix GNU Is Not Unix 的递归缩写,
25、的递归缩写,是自由软件基金会的一个项目。是自由软件基金会的一个项目。vGNU GNU 项目产品包括项目产品包括 emacsemacs 编辑器、著编辑器、著名的名的 GNU C GNU C 和和 GccGcc编译器等,这些软编译器等,这些软件叫做件叫做GNUGNU软件。软件。vGNU GNU 软件和派生工作均适用软件和派生工作均适用 GNU GNU 通用通用公共许可证,即公共许可证,即 GPLGPL(General General Public License Public License)vLinuxLinux的开发使用了众多的的开发使用了众多的GNUGNU工具工具Linux和和GNU Lin
26、uxLinux内核、内核、GNUGNU工具以及其他一些自由软件工具以及其他一些自由软件组成了人们常说的组成了人们常说的LinuxLinux系统,包括:系统,包括:v符合符合 POSIX POSIX 标准的操作系统内核、标准的操作系统内核、Shell Shell 和外围工具。和外围工具。vC C 语言编译器和其他开发工具及函数库语言编译器和其他开发工具及函数库 vX Window X Window 窗口系统窗口系统 v各种应用软件,包括字处理软件、图象处理各种应用软件,包括字处理软件、图象处理软件等。软件等。GPL自由自由软软件的法律件的法律vGPLGPL允许软件作者拥有软件版权允许软件作者拥有
27、软件版权 v但但GPLGPL规定授予其他任何人以合法复制、规定授予其他任何人以合法复制、发行和修改软件的权利。发行和修改软件的权利。1.2.1 Linux系统的发展历史系统的发展历史3.Linux操作系统的诞生操作系统的诞生 1991年初,年初,Linus开始在一台开始在一台386SX兼容微兼容微机上学习机上学习MINIX操作系统。通过学习,他逐操作系统。通过学习,他逐渐不能满足渐不能满足MINIX系统的现有性能,并开始系统的现有性能,并开始酝酿开发一个新的操作系统。酝酿开发一个新的操作系统。1991年年10月月5日,日,Linus在在comp.os.minix新闻组上发布消息,正式向外宣布新
28、闻组上发布消息,正式向外宣布Linux内内核系统的诞生(核系统的诞生(Free minix-like kernel sources for 386-AT)。)。Linux的诞生的诞生Linux由芬兰赫尔辛基大学的由芬兰赫尔辛基大学的Linus Torvalds创建创建Linus的标志的标志是是可爱的企鹅,取自可爱的企鹅,取自芬兰的吉祥物芬兰的吉祥物1991年年10月,月,Linux第一个公开版第一个公开版0.02版发布版发布 1994年年3月月14日,历经过无数的修日,历经过无数的修订后,订后,Linux推出了第一个正式的推出了第一个正式的核心版本核心版本1.0并正式转向并正式转向GPL协议,
29、协议,此后,此后,Linux核心版本的发展走入核心版本的发展走入了正轨。目前,了正轨。目前,Linux核心正式版核心正式版本为本为2.6.35,由现居住在美国的,由现居住在美国的Linus亲自主持维护。亲自主持维护。Linux之父之父-Linus Torvalds1990年秋天,年秋天,Linus在芬兰首都赫尔辛基大在芬兰首都赫尔辛基大学学习操作系统课程,因为上机需要排队学学习操作系统课程,因为上机需要排队等待,等待,Linus买了台买了台PC机,开发了第一个机,开发了第一个程序,程序包括两个进程,分别向屏幕上程序,程序包括两个进程,分别向屏幕上写字母写字母A和和B,然后用定时器来切换进程,然
30、后用定时器来切换进程此外,此外,Linus需要终端仿真程序来存取需要终端仿真程序来存取Usenet新闻组的内容,于是他写了从调制新闻组的内容,于是他写了从调制解调器上接发信息的程序以及显示器、键解调器上接发信息的程序以及显示器、键盘和调制解调器的驱动程序。然后还写了盘和调制解调器的驱动程序。然后还写了磁盘驱动程序,文件系统。一旦有了进程磁盘驱动程序,文件系统。一旦有了进程切换、文件系统和设备驱动程序,当然就切换、文件系统和设备驱动程序,当然就拥有了一个操作系统原型,或者至少是它拥有了一个操作系统原型,或者至少是它的一个内核的一个内核Linux就以这样极其古怪但也极其自然的方就以这样极其古怪但也
31、极其自然的方式问世了式问世了Linux与与UnixLinux继承了继承了Unix的全部优秀传统的全部优秀传统Linux与与Unix接口完全兼容接口完全兼容Unix下的应用程序全部可以移植下的应用程序全部可以移植过来过来Linux 属于UNIX家族的一员,它有许多特性是与UNIX相同的,它 们之间的最大区别在于以下两点:1)UNIX系统大多是与硬件配套的,而Linux则可运行在多种硬件平台上;2)UNIX是商业软件,而Linux是自由软件,免费、公开源代码的。通过通过通过通过InternetInternet,LinuxLinux得以茁壮成长得以茁壮成长得以茁壮成长得以茁壮成长FTPFTP服务器服
32、务器服务器服务器学生学生学生学生学生学生学生学生用户用户用户用户用户用户用户用户LinuxLinux的在线洗礼的在线洗礼任何人通过网任何人通过网络都可获取络都可获取Linux文件文件提交提交Bug和修和修改的程序改的程序新闻组上开辟新闻组上开辟Linux论坛论坛各路黑客积极各路黑客积极参与参与加入加入GPL自由文化自由文化Linux不属于任何一家公司不属于任何一家公司源代码全部公开源代码全部公开任何用户都可以对其进行修任何用户都可以对其进行修改并扩散改并扩散思想和知识的真正共享思想和知识的真正共享1.2 Linux系统简介系统简介1.2.2 Linux系统的发行版本介绍系统的发行版本介绍1.L
33、inux的内核版本的内核版本 内核版本号的格式是:内核版本号的格式是:主版本号主版本号.次版本号次版本号.修正号。修正号。内核版本号有一个规则:次版本号内核版本号有一个规则:次版本号为偶数的是稳定版本,为奇数的是为偶数的是稳定版本,为奇数的是测试版本。测试版本。Linux版本号的命名规则版本号的命名规则 Linux的内核版本由的内核版本由3部分部分组成组成主版本号主版本号次版本号次版本号末版本号末版本号 主版本号主版本号次版本号次版本号末版本号末版本号Linux内核的两种版本号内核的两种版本号 版本号的第二位数字,可以确版本号的第二位数字,可以确定定Linux内核版本的类型内核版本的类型开发版
34、本开发版本:第二位数字是奇数第二位数字是奇数 稳定版本稳定版本:第二位数字是偶数第二位数字是偶数 2.5.72.4.23奇数奇数偶数偶数Linux内核版本发展图示内核版本发展图示 Linux内核版本发展图示(内核版本发展图示(Cont.)Linux的发行版本的发行版本 虽然虽然Linux的基础是内核(的基础是内核(kernel),可光可光有内核还构成不了一个完整可用的操作系统有内核还构成不了一个完整可用的操作系统环境。环境。Linux操作系统还应该具备以下构成操作系统还应该具备以下构成要素:系统引导程序、要素:系统引导程序、X Windows系统、系统、用户界面、库程序、各种服务、包管理机制用
35、户界面、库程序、各种服务、包管理机制和其他各类应用软件。这些要素由世界各地和其他各类应用软件。这些要素由世界各地的不同组织或个人开发维护,其中绝大部分的不同组织或个人开发维护,其中绝大部分遵循遵循GPL 协议并以源代码的形式自由分发。协议并以源代码的形式自由分发。任何人可以自由地创建、修改乃至再分发这任何人可以自由地创建、修改乃至再分发这些程序,同时也允许这些环节中商业行为的些程序,同时也允许这些环节中商业行为的存在。因为组合方式不同,面向用户对象不存在。因为组合方式不同,面向用户对象不同,所以这就是为什么有许多不同的同,所以这就是为什么有许多不同的Linux发行版的原因。发行版的原因。Lin
36、ux的发行版本的发行版本Linux产业中出现了一批专业的发行商,他产业中出现了一批专业的发行商,他们专门在互联网上搜集各种们专门在互联网上搜集各种Linux的最新软的最新软件,连同他们自己编写的各种管理和应用元件,连同他们自己编写的各种管理和应用元素,制作成易于安装和使用的完整的素,制作成易于安装和使用的完整的Linux操作系统光盘操作系统光盘“以成本价以成本价”出售,当然任何出售,当然任何人也可以登录他们的网站合法、自由并且免人也可以登录他们的网站合法、自由并且免费地下载这些光盘映像或其中单独的文件。费地下载这些光盘映像或其中单独的文件。这种公开发行的版本被成为这种公开发行的版本被成为“Li
37、nux发行版发行版(Distribution)”,也就是我们通常习惯上,也就是我们通常习惯上所说的所说的“Linux操作系统操作系统”。这种发行版除。这种发行版除了拥有了拥有Linux优秀的技术优势外,还具备安优秀的技术优势外,还具备安装简便、界面美观、易于配置和使用等诸多装简便、界面美观、易于配置和使用等诸多优点。优点。Linux的发行版本的发行版本发行版本是指一些厂家或组织将发行版本是指一些厂家或组织将Linux系统系统内核与应用软件和文档包装起来,并提供安内核与应用软件和文档包装起来,并提供安装界面、系统设定及管理工具,这样就构成装界面、系统设定及管理工具,这样就构成了发行套件。由于各个
38、发行版往往包含了大了发行套件。由于各个发行版往往包含了大量基于量基于GNU协议免费分发的应用软件,所以,协议免费分发的应用软件,所以,Linux系统一般也被称为系统一般也被称为GNU/Linux。常见。常见的的Linux发行版通常有:发行版通常有:Redhat(Fedora):是由是由RedHat公司发行的公司发行的目前应用最广泛的目前应用最广泛的Linux套件。从套件。从4.0版起便版起便同时支持同时支持Intel、Alpha、Sparc三种硬件平三种硬件平台。其所有的软件包都是以台。其所有的软件包都是以RPM(Redhat Package Manager)方式包装的,用户可)方式包装的,用
39、户可以轻松地进行软件升级,彻底卸除应用软件以轻松地进行软件升级,彻底卸除应用软件和系统部件。和系统部件。Debian:目前唯一由非商业组织维护的:目前唯一由非商业组织维护的Linux发行版本,功能强大发行版本,功能强大。由。由GNU发行的发行的Linux发行套件,完全由网络上的发行套件,完全由网络上的Linux爱爱好者负责维护,其所有的组成部分都是自由好者负责维护,其所有的组成部分都是自由软件。软件。Ubuntu:是一个相对较新的发行版,对大:是一个相对较新的发行版,对大多数人来说改变了对多数人来说改变了对Linux难用的看法。难用的看法。S.u.S.E.是一个德国系统,是在欧洲大是一个德国系
40、统,是在欧洲大陆上使用最广泛的陆上使用最广泛的Linux套件,其特点套件,其特点是易于安装使用,并且包含有一些其它是易于安装使用,并且包含有一些其它发行套件不具有的一些软件。发行套件不具有的一些软件。Slackware Linux:是最早出现的是最早出现的Linux发行套件之一,其特点是安装简发行套件之一,其特点是安装简单,目录结构清楚,版本更新快。单,目录结构清楚,版本更新快。TurboLinux 3.0.2中文版是由北京拓林中文版是由北京拓林思软件公司汉化并发行的中文思软件公司汉化并发行的中文Linux套套件。件。Xteam Linux:是由北京冲浪平台软件是由北京冲浪平台软件公司在充分考
41、虑了国内公司在充分考虑了国内Linux用户的需用户的需求后,开发并发行的一套中文求后,开发并发行的一套中文Linux套套件。件。红旗:国产红旗:国产Linux 不同版本之间无论是外观还是功能往往差不同版本之间无论是外观还是功能往往差别相当大,适合不同的用户群。别相当大,适合不同的用户群。1.2 Linux系统简介系统简介1.2.3 Linux系统的应用系统的应用 办公自动化Internet及网络服务数据库服务应用开发多媒体和娱乐、游戏图形与图像处理 Linux作为桌面操作系统作为桌面操作系统 Linux图形用户界面的组成图形用户界面的组成“”窗口系统窗口系统组织显示屏上的图形输出并执行基本的组
42、织显示屏上的图形输出并执行基本的文本和绘图功能文本和绘图功能窗口管理器窗口管理器负责对窗口的操作负责对窗口的操作(比如最小化、最大比如最小化、最大化、关闭按钮的形状,窗口边框外观等化、关闭按钮的形状,窗口边框外观等)以及输入焦点以及输入焦点的管理。的管理。工具包工具包带有明确定义的编程界面的常规库带有明确定义的编程界面的常规库 风格风格指定应用程序的用户界面外观和行为指定应用程序的用户界面外观和行为 开放源代码的图形用户接口和开放源代码的图形用户接口和开发环境开发环境KDEKDE开发的特征开发的特征“”KDE是用是用C+写成的,完写成的,完全符合全符合OO设计。由此带来的设计。由此带来的KDE
43、组件的可重用性和高效率是组件的可重用性和高效率是KDE成功的关键。成功的关键。KDE提供给开发者的开发平台类似于微软的提供给开发者的开发平台类似于微软的MFC/COM/ActiveX(对应于对应于QT/KOM/OpenParts),允,允许许RAD和对现有组件及技术的充分利用。和对现有组件及技术的充分利用。KDE应用都是生成一个应用都是生成一个KApplication对象实例,并从对象实例,并从KTopLevelWidget继承。这样开发的继承。这样开发的KDE应用自动地应用自动地复合复合KDE的标准。的标准。开发语言为开发语言为C+GNOME“”GNOME是GNU Network Objec
44、t Model Environment的简称,最初是由墨西哥的程序设计师Miguel De Icazq发起的,它受到了Red Hat公司的大力支持支持多种平台的开发&桌面环境,可以运行在包括GNU/Linux,Solaris,HP-UX,BSD和Apples Darwin系统上GNOME拥有很多强大的特性,如:高质量的平滑文本渲染,首个国际化和可用性支持GIMPGIMP(GNU Image Manipulation Program),由,由UC Berkeley的两学生,的两学生,Spencer Kimball&Peter Mattis完成,是完成,是一个与一个与Adobe Photoshop
45、类似的,类似的,功能非常强大的图形、图像编辑功能非常强大的图形、图像编辑和绘制软件和绘制软件GIMP是一个自由软件,可以从因是一个自由软件,可以从因特网下载到特网下载到GIMP在多个操作平台在多个操作平台上的版本。开放原代码的上的版本。开放原代码的GIMP拥拥有更加广阔的发展和改进空间。有更加广阔的发展和改进空间。“”自由的编译器自由的编译器GCC“”编译编译连接装配连接装配运行运行目标目标程序程序段段目标目标程序程序源程序源程序输入数据输入数据子程序子程序库函数库函数动态库函数动态库函数计算结果计算结果自由的编译器自由的编译器GCC“”GCC在一种自由的环境下版本不断更新在一种自由的环境下版
46、本不断更新,是一种最好的编译器,是一种最好的编译器支持多种构架:支持多种构架:Intel、Alpha、PowerPC等,支持等,支持Intel的的IA-64架构的芯片架构的芯片 支持支持C、C+、JAVA、Ada及汇编及汇编最新版最新版GCC4.1使代码最优化功能更好,使代码最优化功能更好,引进引进称为称为“Mudflap”的安全功能的安全功能快速应用开发工具快速应用开发工具Qt Designer“”Qt是一个跨平台的是一个跨平台的 C+图形用户界面库图形用户界面库挪威挪威Trolltech软件公软件公司开发司开发为为Linux操作系统操作系统/平台平台快速开发快速开发GUI、数据库、数据库、
47、Web和和Web服务应用服务应用程序程序Linux Linux 是是JavaJava、XMLXML和和CORBACORBA的的最佳协同搭建最佳协同搭建平台平台“”Java是由是由Sun公司在公司在1995推出的一种面向对象推出的一种面向对象的语言,非常简洁有力,并且十分容易学习,它的语言,非常简洁有力,并且十分容易学习,它具有可移植、安全、动态、高性能等特性具有可移植、安全、动态、高性能等特性 Java:一次编写,到处运行。有非常好的免费产:一次编写,到处运行。有非常好的免费产品品JVM(Java Virtual Machines)Java-Linux的组合将为信息产业创造更多的财富。的组合将
48、为信息产业创造更多的财富。Linux Linux 是是JavaJava、XMLXML和和CORBACORBA的的最佳协同搭建最佳协同搭建平台平台“”XML是是Extensible Markup Language的缩写的缩写 XMLXML定义了一种互联网上交换数据的标准。它的定义了一种互联网上交换数据的标准。它的目标是让各种结构的文件都作为统一网络文件的目标是让各种结构的文件都作为统一网络文件的一部分在网上传输。一部分在网上传输。XML由由W3C组织制定,秉承了组织制定,秉承了Linux自由软件的自由软件的特性特性,它们不是某一个国家、某一个组织、某一它们不是某一个国家、某一个组织、某一个公司的
49、专利,它们都是人类集体智慧的结晶,个公司的专利,它们都是人类集体智慧的结晶,是自由软件园地里的奇葩。是自由软件园地里的奇葩。XML-Java-Linux的组合就代表着可移植的数据、的组合就代表着可移植的数据、程序与操作系统三者的融合程序与操作系统三者的融合 Linux Linux 是是JavaJava、XMLXML和和CORBACORBA的的最佳协同搭建平台最佳协同搭建平台 “”CORBA是是Common Object Request Broker Architecture公用对象请求代理(调度)程序体公用对象请求代理(调度)程序体系结构的缩写系结构的缩写CORBA CORBA 允许应用程序和
50、其他的应用程序通讯,而允许应用程序和其他的应用程序通讯,而不论他们在什么地方或者由谁来设计不论他们在什么地方或者由谁来设计 将将Java、XML和和CORBA结合在一起的想法给开结合在一起的想法给开发者提供了一个以开放、无专有权方式开发复杂发者提供了一个以开放、无专有权方式开发复杂应用程序的能力应用程序的能力。Linux是一个真正的网络操作系是一个真正的网络操作系统统网络功能是Linux最显著的特点之一。Linux具有比WindowsNT更安全、稳定简易方便的优点。Linux网络服务器可以提供安全和稳定的Web服务、DNS服务、FTP服务、Email服务(支持P0P3及SMTP协议),DHCP