第一章 Linux操作系统基础知识.docx

上传人:b****8 文档编号:10658981 上传时间:2023-02-22 格式:DOCX 页数:48 大小:53.04KB
下载 相关 举报
第一章 Linux操作系统基础知识.docx_第1页
第1页 / 共48页
第一章 Linux操作系统基础知识.docx_第2页
第2页 / 共48页
第一章 Linux操作系统基础知识.docx_第3页
第3页 / 共48页
第一章 Linux操作系统基础知识.docx_第4页
第4页 / 共48页
第一章 Linux操作系统基础知识.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

第一章 Linux操作系统基础知识.docx

《第一章 Linux操作系统基础知识.docx》由会员分享,可在线阅读,更多相关《第一章 Linux操作系统基础知识.docx(48页珍藏版)》请在冰豆网上搜索。

第一章 Linux操作系统基础知识.docx

第一章Linux操作系统基础知识

第一章Linux操作系统基础知识

1.1Linux操作系统简介

1969年贝尔实验室的KenThompson、DennisRitchie和其他一些研究人员在PDP-7机器上开发了一个基本的文件系统,该系统后来演化成了UNIX文件系统。

AT&T专利部门将UNIX用来做文本处理使UNIX获得了成功,UNIX也因短小精悍而出名。

后来Ritchie等人为扩展完善UNIX开发出了C语言,UNIX便使用C语言实现。

最初,AT&T无法将UNIX作为商品出售,只能自己使用和发放到大学和科研机构中共研究使用。

直到1977年UNIX才得到商业使用的许可,此后,UNIX操作系统得到了迅速发展,除大学和科研机构外,一些大型主机和工作站的生产厂家也专门为他们的机器做了UNIX版本,包括Sun公司的Solaris和IBM的AIX等。

虽然有多个不同的供应商提供UNIX的多个版本,但这些版本可分成两个主要类型:

由UNIX的创始者AT&T的贝尔实验室开发的UNIX系统V以及由加利福尼亚大学Berkeley分校开发并推广的BSDUNIX版本。

为了方便用户开发和使用UNIX操作系统,电器与电子工程师协会(IEEE,InstituteofElectricalandElectronicEngineers)制定了POSIX标准。

另外,一些开放源代码(C语言书写)的类UNIX版本对UNIX爱好者也具有很大的吸引力。

早期的类UNIX系统是AndrewTanenbaum设计的MINIX,在其所著的《操作系统设计与实现》一书中介绍了MINIX并给出了其源代码。

1991年,芬兰23岁的大学生LinusTorvalds在赫尔辛基大学修读操作系统课程时,接触到了MINIX并对其产生了兴趣。

他想将MINIX移植到PC平台上,于是,他尝试为MINIX编写一些在PC平台上使用的设备驱动程序。

编写一个操作系统是一个非常复杂的系统工程,尽管Linus在开始工作时就已经有MINIX的基础,他仍然感到力不从心,正好这时Internet触角已经张开,于是Linus就把他编写的程序放在Internet上,希望有志同道合者能够加入他的行列。

结果是一呼百应,很快就有数百名程序员通过Internet加入到开发Linux的行列,他们或将自己的程序,或将自己的想法通过Internet与Linus及其他爱好者进行交流,共同完善Linux。

没有人去专门组织他们,没有一个组织去约束他们,也没有一个公司为他们辛勤的劳动而付报酬,他们全凭自愿,无私奉献。

以下是Linus在发布Linux程序时若干公告中的两个:

“当你人在编写自己的设备驱动程序时,你是否期待着MINIX1.1的美好时光?

你是否因没有一个有趣的项目而只是沉溺于钻研一个可以为你自己的需要而修改的操作系统中?

你是否正在为MINIX遇到挫折而感到沮丧?

所有的夜猫子们都不再有可干的好项目了吗?

那么这个公告可能就正好是发给你的。

1991年10月5日,Linus向全世界发布了Linux的第一个正式版本——Linux版本0.02:

“正如我一个月前提到的,我正在编写一个在AT-386计算机上使用的、与MINIX相似的自由版本。

最后终于达到了可用阶段(虽然可能未达到你的要求),为了进一步推广,我愿意把源代码奉献给大家。

这仅仅是版本0.02,但我已在她上面成功的运行了bash、gcc、gnu-make、gnu-sed和compress等等”

可以看出Linux的发展离不开Internet,如果说个人计算机造就了Microsoft的话,那么同样可以说Internet造就了Linux。

许许多多的hacker(不是cracker)仅仅依靠Internet就完成了Linux操作系统,这本身就是一个奇迹。

在GNU的保护下,Linux茁壮成长,不断壮大,也形成了许多版本,以下是我们经常遇到的几个主要版本:

RedHatLinux——最好的网络操作系统;

TurboLinux——最早支持中文的Linux;

XteamLinux——第一个国产Linux;

红旗Linux——中国政府支持的自己的Linux;

蓝点(BluePoint)Linux——中美共同开发的Linux;

我们在系统结构实验中选用RedHatLinux。

1.2Linux的特点

首先,Linux是一个在GNU公共许可权限下可以免费获得、免费使用和自由传播的类UNIX操作系统,是一个符合POSIX标准的操作系统。

UNIX是名门闺秀,是工业标准,是几乎所有大型企业和重要部门的首选,许多教学单位和个人面对昂贵的软件费用都会望而却步。

Linux为我们学习UNIX提供了一个绝佳的机会。

其次,Linux是一个真正的多用户、多任务的操作系统。

在Linux系统中不仅可以设置多个用户帐号,同时还允许多个用户登录系统。

在Linux系统中,你可以同时运行多个程序而不必担心系统死机,你还可以指定程序以守护进程的形式在后台运行,以侦听外部环境的各种请求。

第三,Linux是一个优秀的网络操作系统,甚至可以说,网络功能是Linux(当然UNIX也是了)最大的特点和卖点,Linux操作系统提供了几乎所有的网络服务功能,包括DNS域名服务器,Squid代理服务器,FTP服务器,DHCP服务器,ApacheWeb服务器等等。

最后,比起Windows下泛滥的病毒灾害,在Linux环境下,我们几乎可以不用担心病毒对系统的破坏作用。

如果你的服务器采用Windows2000操作系统,就会经常受到恶意的攻击,但如果采用Linux操作系统,则相对要安全得多。

1.3关于Linux和Windows

对于Linux和Windows到底谁更好的争论在业界由来已久,一方面是Microsoft在开发操作系统的同时还近水楼台的开发并发布自己操作系统之上的各种应用程序,抢了别人的饭碗,尤其是几年前将IE浏览器捆绑销售,更是激起一阵讨伐之声;另一方面是Windows所采取的易用策略使得人们在使用计算机越来越方便的同时,对计算机的了解也越来越少,反过来更加依赖于Microsoft,这无论从哪个方面来讲都不是一件好事情。

客观的讲,Linux和Windows各有优缺点,下面的评述来自网上一篇文章[3],相信大家看后会有一个自己的结论。

最近有关操作系统的讨论无论在法庭上还是在网上都是越来越热烈了。

这种热烈气氛的出现自然是与操作系统巨头Microsoft脱不了干系的。

法律界为是否该裁定并惩罚Microsoft在操作系统上的非法垄断行为而头疼,软件业界为如何抵御Microsoft君临天下的庞大攻势而失眠,而被Microsoft日益苛刻的版权限制惹恼了的个人和公司电脑用户也在思考是否还应该对Microsoft从一而终。

借着这股热潮本人也来就桌面操作系统(DesktopOperatingSystem)领域中的Windows和Linux议论几句。

  网上对Windows和Linux的讨论不少,从这些讨论中我发现有一些人是明确地属于Linux阵营的,所谓属于Linux阵营,我指的是他们对Linux的支持已经近乎本能,就象宗教信徒笃信上帝一样。

另一方面,虽然也有人替Windows说话,但似乎没有一个群体可以归类为Windows阵营,也就是说Windows的使用者虽众,但支持烈度却不如Linux。

这也不奇怪,Linux的发展本身就是热忱的Linux支持者们共同努力的结果,所谓“自家的孩子自家爱”。

更何况Linux是免费的而Windows不仅价格昂贵,而且近来还发展到了让用户花了钱也买不到所有权的地步。

连所有权都没了,主人翁态度自然也就免谈了。

尽管缺乏铁杆的Windows支持者说明Microsoft在夺得市场的同时没有能够同步地赢得人心,但是从学术的观点讲,却应该看到在这种情况下替Windows说话的人(Microsoft雇员除外)大都是从纯技术角度出发的,他们的观点往往要比带有感情因素的Linux支持者更冷静和公正。

  无论有多少人厌恶Microsoft,任何客观的评论者都必须承认一个基本的事实,那就是纯以技术而言Windows是目前操作系统家族中具有顶尖水平的成员。

Microsoft能够在软件界翻云覆雨一手遮天凭借的就是Windows操作系统的实力。

市场是无情的,能够装在自己口袋里的银子谁也不会愿意放到Microsoft的保险柜里去。

Windows十余年来在市场上的成功,尤其是在四面树敌,人心思变的今天依然雄霸天下而不倒正是其实力的明证。

  下面本文就来对Windows和Linux的若干主要方面进行一些评述和比较。

  安全性能是Windows常常遭受Linux支持者批评嘲笑之处。

除了层出不穷的计算机病毒外,号称Windows95以来最重要的版本的WindowsXP问世不过数月就屡屡发现安全漏洞,而且导致联邦调查局向用户发布警告,这无疑加深了Windows不如Linux安全的看法。

不过客观的讲,在以下两方面Windows有些冤情可诉:

  Windows的每一个漏洞的公开都会引起公众和媒体的广泛注意,这种树大招风的现象大大增加了Windows技术漏洞的可见性(Visibility)。

而且Linux作为公开源代码的系统,它的漏洞的发现和修补往往被有意无意地视为是系统开发的一部分,好比是Microsoft在开发Windows期间由内部程序员发现并修补漏洞。

由于在很多人眼里Linux永远处于开发状态中,而Windows有明确的推出日期(不然没法赚钱),因此在这一点上Windows处于非常不利的位置。

  人们在比较Windows和Linux的技术漏洞时常常实际上是在对Windows和Linux内核(Kernel)作比较,这是不公平的。

Windows除内核外还包括用户界面(UI)以及大量的应用软件,大多数Windows技术漏洞其实并不是Windows内核的漏洞。

以安全漏洞而言,大多数是属于IIS和IE的,对应于Linux系统中的Apache和Netscape或Konqueror等。

较为合理的做法应当是将Windows和LinuxDistribution或者LinuxDistribution中与Windows功能平行的部分进行比较。

  尽管有以上这些辩护,尽管Microsoft抱怨说人们对攻击Windows远比对攻击Linux感兴趣(因为更容易成名)才使得Windows频频亮起安全红灯,但我认为现阶段Linux在安全性能上确实要优于Windows。

起码以病毒数量和危害性而言,Windows用户所担当的风险就要大得多。

只是Windows的安全性也不象有些文章渲染的那样糟糕。

  说到了安全性,顺便提一下对于除美国以外的其他国家来说,由于Windows的技术完全被Microsoft所垄断,因此使用Linux还具有国家安全上的优势。

这也是近期中国,法国,韩国等国政府在采购操作系统时均作出了有利于Linux的决定的原因之一。

  稳定性也是Windows常常遭批评的地方,这里必须首先要把Windows的9x系列(包括95/98/Me)和NT系列(包括NT/2000/XP)区分开来。

两者在稳定性上有数量级之别。

Windows稳定性差的恶名主要是由9x系列而来,自WindowsXP开始Microsoft已经终止了这一系列的开发。

其次需要分清的是应用软件的稳定性与操作系统的稳定性。

如果一个软件的崩溃不影响操作系统和其它软件的运行,那么这笔帐通常就不应该记在操作系统的稳定性上。

如果一个软件的崩溃造成整个操作系统的崩溃(即通常所说的“死机”),那操作系统的稳定性就要受到质疑。

  至于最新的WindowsXP与Linux究竟谁更稳定,说实在目前还缺乏足够的数据和可比性,因为两者所运行的软件很不相同。

网上虽有一些测试结果,不过这些测试的客观性往往是值得怀疑的,这个有时间我将另文叙述。

一般说来,由于Windows上运行的软件通常比较复杂(比如游戏,大型商业软件等),从而有较大的几率暴露操作系统的缺陷。

从这点上讲,对WindowsXP和Linux的表观稳定性进行比较并不足以说明两者在运行同等复杂的软件时谁更稳定。

另一方面和系统安全性的情行相似,人们说到Linux的稳定性时常常只是指内核的稳定性,而Windows的稳定性却涵盖包括用户界面在内的许多别的部分。

出现这样的状况也情有可原,因为Windows和它的用户界面是无法分开的,用户界面死了,对用户来说就相当于操作系统死了,而Linux则不同,用户界面死了常常还可以用热键退出,并重新启动用户界面。

这些差别的存在使得稳定性对Windows来说是一个更为困难的目标。

  对软件,尤其是大型商业软件及多媒体软件(包括游戏)的支持一直是Windows的强项,无论是MacOS还是Linux在近期内都很难憾动Windows在这一领域的霸主地位。

Windows庞大的应用软件支持是大多数用户即使心怀不满,也不得不继续使用Windows的一个重要原因。

Linux所拥有的软件虽然为数也不少,而且有些软件(比如GIMP,StarOffice等)的开发是以Windows下相应的商业软件为竞争对象的,但是在功能上这些软件要真正达到可以替代Windows软件的程度还有相当一段路要走。

免费和公开源代码软件是Linux的灵魂,也是很多人喜爱Linux的原因,但是缺乏足够的高质量商业软件的支持已经成为Linux与Windows竞争桌面操作系统市场时的重大障碍。

在这方面Linux面临一个两难局面:

一个操作系统要吸引商业软件开发者就得要有足够多的用户(尤其是公司用户)。

原因很简单,有用户才有利润。

但另一方面,一个操作系统要想吸引足够多的用户(尤其是公司用户),就得要有足够多高质量的软件(包括商业软件)。

这是一个典型的先有鸡还是先有蛋的问题。

从目前的形势发展来看,打破局面的最可能途径是软件公司愿意做前瞻性的开发,从而产生一个良性的推动。

  这里需要做一点补充说明:

对于相对小型的软件的支持Linux并不逊色,一个完整安装的LinuxDistribution不仅比Windows带有品种远为齐全的软件,而且各常用类型的软件,诸如email,FTP,IRC,浏览器等均有四五种以上可供选择(有时反而让初用者手足无措)。

  五年前Linux的安装对于新手来说还是一件望而生畏的事,这其中很大一个原因就是Linux对硬件支持的欠缺,三年前我在笔记本电脑上安装Redhat6.0还被迫到网上自行搜寻config文件。

但近几年来Linux在这方面取得了长足的进展,今天,各主要Distribution对硬件的支持度正在迅速接近甚至超过Windows的水平。

尽管硬件生产商对Windows驱动文件(driver)的提供仍比对Linux的要普遍,但高手如云的Linux群体已经做到了能几乎同步地提供所有最新硬件驱动文件的程度。

另一方面,WindowsXP在硬件支持的普遍性上却出现了较大的倒退(Microsoft或许把这叫做更新)。

此消彼长,Linux在硬件支持上的欠缺已经成为历史。

  虽然没有明说,但上面谈论的硬件都是针对x86机器的,脱离了这个框架,Linux在硬件的支持上的广泛程度是包括Windows在内的任何其它操作系统都无法比拟的。

  说到硬件支持,还有一个需要考虑的方面就是系统配置。

每一代的Windows都对系统配置提出了新的要求,WindowsXP苛刻的系统配置要求更是使得几乎所有两三年以上机龄的机器都必须经过相当程度的硬件改良才能安装。

而Linux虽然也同样在逐步提高对硬件配置的要求,但由于其优越的模块结构,使得用户有极大的自由度根据自己机器的配置调整自己所需安装的模块,从而突破对硬件配置的要求。

  这里所说的操作系统的规范性有两层含义,一层含义是指操作系统对软件界的各项技术规范的遵循程度。

在这方面Linux基本上遵循了所有适用的规范,这和Linux的开发模式不无关系。

除内核外Linux没有一个中心仲裁者,因此开发人员大都以软件界已有的技术规范为准则进行系统开发。

Windows在这方面的名声则毁誉参半,一方面Microsoft本身是软件界许多规范的制定和倡导者,但另一方面,Microsoft又常常按自己的喜好“修改”规范。

由于Windows在桌面操作系统领域拥有压倒多数的用户群体,软件界在相当程度上被迫适应Windows的要求,因而使得Windows的许多非规范的东西成为事实上的规范。

  规范性的另一层含义是指操作系统本身的规范性,一个简单的衡量标准就是该操作系统的两个用户之间有多少共同语言。

由于Windows是由单一公司开发的,因此在这方面不是由松散联系的开发者为主力的Linux可以比拟的。

以用户界面而论,Windows自Windows95以来保持了相当的稳定性,用过其中任何一个版本的用户基本上可以不用额外学习就直接使用另一个版本的Windows界面。

而Linux的用户界面不下十种之多,最流行的也有KDE和Gnome两种,明显缺乏规范性。

Linux在自身规范性上的欠缺还表现在各主要的Distribution使用不同的目录结构,用不同的格式传播软件,用不同的方式安装软件,等等。

凡此种种不仅给新手带来极大的困惑,就是对有经验的用户甚至系统开发人员都是极大的不便。

  所幸的是,Linux的不规范性已经引起了越来越多人的重视,一个如同W3C(W3C是制定互联网规范的组织)那样的组织TheFreeStandardsGroup已经成立,它的使命就是制定Linux和其它开放源代码系统的规范。

随着这些规范的逐步推广,Linux将会缩小在自身规范性方面与Windows的差距。

  这里也需要补充一点:

Linux在用户界面方面的不规范性有时候也不失为一个优点。

常常听人抱怨说自己花大价钱更新机器的努力很大一部分被操作系统本身所消耗掉了,这其中一个消耗资源的大户就是用户界面。

Linux用户在这种情况下就可以使用消耗系统资源较少的用户界面。

  总体上讲,在对外部规范的遵循性上,Linux要优于Windows,而在自身的规范性上,Windows要显著优于Linux,而且在近期内这种优势不会丧失。

  Windows的源代码是保密的,而Linux的源代码是开放的。

从字面上讲这当然是意味着原则上任何人都可以改进Linux。

但是需要指出的是,原则上可以做的事情并非实际上就一定能够或者应当做。

Linux源代码的高度的开放性主要是针对系统开发人员的,源代码的开放性使得Linux系统中的缺陷能够很快地被来自世界各地的高手所发现和弥补,这是十余年来Linux发展的关键。

但对于普通用户来说,修改自己赖以工作的Linux机器的源代码却是非常不明智的行为。

Linux内核多年来经过无数高手的锤炼,一个普通用户能够改进它的几率是微乎其微的(破坏它的可能性倒是很大的)。

因此在肯定源代码开放性对操作系统本身乃至整个软件业发展的深远意义的同时也不应该夸大它对普通用户的直接帮助,源代码的开放性并不增加一个普通用户对系统的掌控程度。

  Linux源代码的开发性使得各大学的操作系统课程和教材几乎都是以Linux或其他类似的系统为蓝本,因此使得受过正规计算机专业教育的几乎所有学生以及几乎所有对操作系统感兴趣的人都对Linux有相当程度的了解和喜爱。

这对于Linux未来的发展有着十分正面的影响。

  一个操作系统的API(ApplicationProgramInterface)是操作系统提供的与应用软件的接口,对于软件开发人员来说十分重要。

一般认为Linux的API要比Windows优美。

不过由于Windows下有诸如VisualStudio这样的直接支持WindowsAPI的大型工具软件,从而大大降低了Windows编程对于拥有并熟悉这些工具的人员的困难程度。

  Linux具有比Windows大得多的可调节性。

许多早期的Windows骨灰级用户在系统可调节性上有一种怀旧感,觉得在DOS和早期Windows时代他们曾经是机器的主人,随着Windows的演化,后来他们只拥有Windows,不再直接拥有机器了(现在他们连Windows也不拥有了)。

而Linux却始终如一地保持着系统的高度可调节性。

 Linux的源代码的开放性也可以被视为终极意义上的可调节性,但是,前面说了,对于普通用户来说,这种可调节性实际上是几乎不存在的。

  另一方面,在各自可调节的范围内,Windows要比Linux易于调节(这在很大程度上得益于Windows界面的规范性)。

在早期,Linux的调节往往需要用户直接修改参数文件,即使对于有一定经验的用户,这也是一件令人头疼的事。

近年来Linux在这方面做了很大的改进,开发了许多工具软件,不过和Linux下的许多其它类别的软件类似,Linux的工具软件也呈现一种发散性,即有不止一种软件可以做同一件事。

这使得用户在转换机器和LinuxDistribution时往往因为不同环境下工具软件的不同而需要学习新的工具或重新安装旧的工具。

  使用的方便性是桌面操作系统竞争中最重要的决胜因素之一。

这里所说的使用的方便性是针对普通用户的,这一点常常被Linux的支持者所忽视。

现阶段在桌面操作系统的用户群体中,Linux用户的平均计算机水平要大大高于Windows用户,这种差异使得Linux群体常常低估了一个缺乏计算机系统知识的普通用户适应Linux的难度。

“Windows是傻瓜也能用的”非但不应该被用来嘲笑Windows,反而是Linux在竞争桌面操作系统市场中必须借鉴的经验。

计算机二十年来的发展早已超越了专业的界限而成为几乎所有现代人都可能会用到的工具。

使用方便性是任何工具所应该追求的品质之一,计算机及其操作系统当然也不例外。

试问这世上聪明人的比例能有多少?

偏偏把聪明用在计算机上的聪明人比例又能有多少?

今天Linux用户群体的平均计算机水平高的一个不可忽视的原因是因为只有水平较高的人才能得心应手地使用Linux,而这一事实,很不幸的却是Linux与Windows竞争时的一大弱点。

  这方面没什么可说的,法庭上的胜负不论,无论对个人还是公司用户来说Windows利用其垄断地位迫使用户接受日益苛刻的版权要求已是不争的事实,可以盖棺定论。

使用WindowsXP的用户相信对此尤有切身体会。

每张WindowsXP光盘只能安装在一台电脑上,不仅如此,重装操作系统或更换一定数量的硬件都会导致Windows反盗版机制的干预,使得用户必须向Microsoft索要新的序列号(可能还免不了要解释一下自己何以又要给Microsoft“添麻烦”)。

花钱买了的软件竟然还要间或地向Microsoft请示汇报,用户心中的不平衡是不言而喻的。

至于价格,Windows

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1