您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > Linux操作系统介绍及安装
Linux操作系统介绍及安装一、Linux的诞生和发展Linux操作系统是UNIX操作系统的一种克隆系统。它诞生于1991年的10月5日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并经过全世界各地计算机爱好者的共同努力下,现已成为今天世界上使用最多的一种UNIX类操作系统,并且使用人数还在迅猛增长。Linux操作系统的诞生、发展和成长过程始终依赖着以下五个重要支柱:UNIX操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet网络。下面主要根据这五个基本线索来追寻一下Linux的开发历程,它的酝酿过程,最初的发展经历。首先分别介绍其中的四个基本要素(UNIX、MINIX、GNU和POSIX,Internet的重要性显而易见,所以不用对其罗嗦),然后根据Linux的创始人LinusToravlds从对计算机感兴趣而自学计算机知识,到心里开始酝酿编制一个自己的操作系统,到最初Linux内核0.01版公布,以及从此如何艰难地一步一个脚印地在全世界hacker的帮助下最后推出比较完善的1.0版本这段时间的发展经过,也即对Linux的早期发展历史进行详细介绍。对于Linux的一般发展史,许多文章和书籍都有介绍,这里就不重复。UNIX操作系统的诞生Linux操作系统是UNIX操作系统的一个克隆版本。UNIX操作系统是美国贝尔实验室的Ken.Thompson和DennisRitchie于1969年夏在DECPDP-7小型计算机上开发的一个分时操作系统。当时KenThompson为了能在闲置不用的PDP-7计算机上运行他非常喜欢的星际旅行(Spacetravel)游戏,在1969年夏天乘他夫人回家乡加利福尼亚渡假期间,在一个月内开发出了unix操作系统的原型。当时使用的是BCPL语言(基本组合编程语言),后经DennisRitchie于1972年用移植性很强的C语言进行了改写,使得UNIX系统在大专院校得到了推广。MINIX操作系统MINIX系统是由AndrewS.Tanenbaum(AST)开发的。AST是在荷兰Amsterdam的Vrije大学数学与计算机科学系统工作,是ACM和IEEE的资深会员(全世界也只有很少人是两会的资深会员)。共发表了100多篇文章,5本计算机书籍。AST虽出生在美国纽约,但是是荷兰侨民(1914年他的祖辈来到美国)。他在纽约上的中学、M.I.T上的大学、加洲大学Berkeley分校念的博士学位。由于读博士后的缘故,他来到了家乡荷兰。从此就与家乡一直有来往。后来就在Vrije大学开始教书、带研究生了。荷兰首都Amsterdam是个常年阴雨绵绵的城市,而对于AST来说,这最好不过了,因为这样他就可以待在家里摆弄他的计算机了。MINIX是他1987年编制的,主要用于学生学习操作系统原理。到91年时版本是1.5。目前主要有两个版本在使用:1.5版和2.0版,当时该操作系统在大学使用是免费的,但其它用途不是,当然目前都已经是免费的,可以从许多FTP上下载。对于Linux系统,他表示对其开发者Linus的称赞。但他认为Linux的发展有很大原因是因为他为了保持minix的小型化,能让学生在一个学期内就能学完,而没有接纳全世界许多人对Minix的扩展要求。因此这激发了Linus编写Linux。Linus正好抓住了这个好时机。作为一个操作系统,MINIX并不是优秀者,但它同时提供了用C语言和汇编语言写的系统源代码。这是第一次使得有抱负的程序员或hacker能够阅读操作系统的源代码,在当时这种源代码是软件商一直小心地守护着的。GNU计划GNU计划和自由软件基金会(theFreeSoftwareFoundation-FSF)是由RichardM.Stallman于1984年一手创办的。旨在开发一个类似Unix、并且是自由软件的完整操作系统:GNU系统。(GNU是GNU'sNotUnix的递归缩写,它的发音为guh-NEW。)各种使用linux作为核心的GNU操作系统正在被广泛的使用。虽然这些系统通常被称作Linux,但是严格地说,它们应该被称为GNU/Linux系统。到上世纪90年代初,GNU项目已经开发出许多高质量的免费软件,其中包括有名的emacs编辑系统、bashshell程序、gcc系列编译程序、gdb调试程序等等。这些软件为Linux操作系统的开发创造了一个合适的环境,是Linux能够诞生的基础之一。以至于目前许多人都将Linux操作系统称为GNU/Linux操作系统。POSIX标准POSIX(PortableOperatingSystemInterfaceforComputingSystems)是由IEEE和ISO/IEC开发的一簇标准。该标准是基于现有的UNIX实践和经验,描述了操作系统的调用服务接口,用于保证编制的应用程序可以在源代码一级上在多种操作系统上移植运行。它是在1980年早期一个UNIX用户组(usr/group)的早期工作的基础上取得的。该UNIX用户组原来试图将AT&T的系统V和BerkeleyCSRG的BSD系统的调用接口之间的区别重新调和集成,从而于1984年产生了/usr/group标准。1985年,IEEE操作系统技术委员会标准小组委员会(TCOS-SS)开始在ANSI的支持下责成IEEE标准委员会制定有关程序源代码可移植性操作系统服务接口正式标准。到了1986年4月,IEEE就制定出了试用标准。第一个正式标准是在1988年9月份批准的(IEEE1003.1-1988),也既以后经常提到的POSIX.1标准。1989年POSIX的工作被转移至ISO/IEC社团,并由15工作组继续将其制定成ISO标准。到1990年,POSIX.1与已经通过的C语言标准联合,正式批准为IEEE1003.1-1990(也是ANSI标准)和ISO/IEC9945-1:1990标准。POSIX.1仅规定了系统服务应用程序编程接口(API),仅概括了基本的系统服务标准,因此期望对系统的其它功能也制定出标准。这样IEEEPOSIX的工作就开始展开了。在1990年,刚开始有十个批准的计划在进行,有近300多人参加每季度为期一周的会议。着手的工作有命令与工具标准(POSIX.2)、测试方法标准(POSIX.3)、实时API(POSIX.4)等。到了1990年上半年已经有25个计划在进行,并且有16个工作组参与了进来。与此同时,还有一些组织也在制定类似的标准,如X/Open,AT&T,OSF等。在90年代初,POSIX标准的制定正处在最后投票敲定的时候,那是1991-1993年间。此时正是Linux刚刚起步的时候,这个UNIX标准为Linux提供了极为重要的信息,使得Linux的能够在标准的指导下进行开发,能够与绝大多数UNIX系统兼容。在最初的Linux内核代码中(0.01版、0.11版)就已经为Linux与POSIX标准的兼容做好了准备工作。在0.01版的内核/include/unistd.h文件中就已经定义了几个有关POSXI标准要求的常数符号,并且在注释中就写到ok,这也许是个玩笑,但我正在着手研究它呢。1991年7月3日在comp.os.minix上发布的post上就已经提到了正在搜集POSIX的资料。(当然此时还不存在Linux这个名称,当时Linus的脑子里想的可能是FREAX,FREAX的英文含义是怪诞的、怪物、异想天开等)。其中透露了他正在进行Linux系统的开发,并且在Linux最初的时候已经想到要实现与POSIX(UNIX的国际标准)的兼容问题了。Linux操作系统的诞生1981年IBM公司推出享誉全球的微型计算机IBMPC。在1981-1991年间,MS-DOS操作系统一直是微型计算机上操作系统的主宰。此时计算机硬件价格虽然逐年下降,但软件价格仍然是居高不下。当时Apple的MACs操作系统可以说是性能最好的,但是其天价没人能够轻易靠近。当时的另一个计算机技术阵营是Unix世界。但是Unix操作系统就不仅是价格贵的问题了。为了寻求高利率,Unix经销商将价格抬得极高,PC小用户就根本不能靠近它。曾经一度受到BellLabs的许可而可以在大学中用于教学的UNIX源代码一直被小心地守卫着不需公开。对于广大的PC用户,软件行业的大型供应商始终没有给出有效的解决该问题的手段。正在此时,出现了MINIX操作系统,并有一本详细的书本描述它的设计实现原理。由于AST的书写的非常详细,并且叙述有条有理,几乎全世界的计算机爱好者都在看这本书以理解操作系统的工作原理。其中也包括Linux系统的创始者LinusBenedictTorvalds。当时(1991年),LinusBenedictTorvalds是赫尔辛基大学计算机科学系的二年级学生,也是一个自学hacker。这个21岁的芬兰年轻人喜欢鼓捣计算机,测试计算机的能力和限制。但当时缺乏的是一个专业级的操作系统。MINIX虽然很好,但只是一个用于教学目的简单操作系统,而不是一个强有力的实用操作系统。到1991年,GNU计划已经开发出了许多工具软件。最受期盼的GnuC编译器已经出现,但还没有开发出免费的GNU操作系统。即使是MINIX也开始有了版权,需要购买才能得到源代码。而GNU的操作系统HURD一直在开发之中,但并不能在几年内完成。对于Linus来说,已经不能等待了。从1991年4月份起,他开始酝酿并着手编制自己的操作系统。刚开始,他的目的很简单,只是为了学习Intel386体系结构保护模式运行方式下的编程技术。但后来Linux的发展却完全改变了初衷。1991年初,Linux开始在一台386sx兼容微机上学习minix操作系统。通过学习,他逐渐不能满足minix系统的现有性能,并开始酝酿开发一个新的免费操作系统。根据Linus在comp.os.minix新闻组上发布的消息,我们可以知道他逐步从学习minix系统到开发自己的Linux的过程。Linus第1次向comp.os.minix投递消息是在1991年3月29日。题目是gcconminix-386doesn'toptimize,是有关gcc编译器在minix-386上运行的优化问题,由此可知,Linus在1991年的初期已经开始深入研究了minix系统,并在这段时间有了改进minix操作系统的思想,而且在进一步学习minix系统中,逐步演变为想自己重新设计一个基于Intel80386体系结构的新操作系统。他在回答有人提出minix上的一个问题时,所说的第一句话是阅读源代码(RTFSC(ReadtheFuckingSourceCode:-))。他认为答案就在源程序中。这也说明了对于学习系统软件来说,你不光需要懂得系统的工作基本原理,还需要结合实际系统,学习实际系统的实现方法。因为理论毕竟是理论,其中省略了许多枝节,而这些枝节问题虽然没有太多的理论含量,但却是一个系统必要的组成部分,就像麻雀身上的一根羽毛。从1991年的4月份开始,Linus几乎花了全部时间研究386-minix系统(hackthekernel),并且尝试着移植GNU的软件到该系统上(GNUgcc、bash、gdb等)。并于4月13日在comp.os.minix上发布说自己已经成功地将bash移植到了minix上,而且已经爱不释手、不能离开这个shell软件了。第一个与Linux有关的消息是在1991年7月3日在comp.os.minix上发布的(当然此时还不存在Linux这个名称,当时Linus的脑子里想的可能是FREAX,FREAX的英文含义是怪诞的、怪物、异想天开等)。其中透露了他正在进行Linux系统的开发,并且在Linux最初的时候已经想到要实现与POSIX(UNIX的国际标准)的兼容问题了。在Linus的下一发布的消息中(1991年8月25日comp.os.minix),他向所有minix用户询问Whatwouldyouliketoseeinminix?(你最想在minix中见到什么?
本文标题:Linux操作系统介绍及安装
链接地址:https://www.777doc.com/doc-5855903 .html