⑴ linux的Linux简史
Linux 操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:UNIX 操作系统、MINIX 操作系统、GNU计划、POSIX 标准和Internet 网络。
1981 年IBM公司推出微型计算机IBM PC。
1991年,GNU计划已经开发出了许多工具软件,最受期盼的GNU C编译器已经出现,GNU的操作系统核心HURD一直处于实验阶段,没有任何可用性,实质上也没能开发出完整的GNU操作系统,但是GNU奠定了Linux用户基础和开发环境。
1991年初,林纳斯·托瓦兹开始在一台386sx兼容微机上学习minix操作系统。1991年4月,林纳斯·托瓦兹开始酝酿并着手编制自己的操作系统。
1991 年4 月13 日在comp.os.minix 上发布说自己已经成功地将bash 移植到了minix 上,而且已经爱不释手、不能离开这个shell 软件了。
1991年7月3日,第一个与Linux有关的消息是在comp.os.minix上发布的(当然此时还不存在Linux这个名称,当时林纳斯·托瓦兹的脑子里想的可能是FREAX,FREAX的英文含义是怪诞的、怪物、异想天开等)。
1991年的10月5日,林纳斯·托瓦兹在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生(Freeminix-like kernel sources for 386-AT)。
1993年,大约有100余名程序员参与了Linux内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有十万行,用户大约有10万左右。
1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。
1995年1月,Bob Young创办了RedHat(小红帽),以GNU/Linux为核心,集成了400多个源代码开放的程序模块,搞出了一种冠以品牌的Linux,即RedHat Linux,称为Linux发行版,在市场上出售。这在经营模式上是一种创举。
1996年6月,Linux 2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux 已经进入了实用阶段,全球大约有350万人使用。
1998年2月,以Eric Raymond为首的一批年轻的老牛羚骨干分子终于认识到GNU/Linux体系的产业化道路的本质,并非是什么自由哲学,而是市场竞争的驱动,创办了Open Source Intiative(开放源代码促进会)复兴的大旗,在互联网世界里展开了一场历史性的Linux产业化运动。
2001年1月,Linux 2.4发布,它进一步地提升了SMP系统的扩展性,同时它也集成了很多用于支持桌面系统的特性:USB,PC卡(PCMCIA)的支持,内置的即插即用,等等功能。
2003年12月,Linux 2.6版内核发布,相对于2.4版内核2.6在对系统的支持都有很大的变化。
2004年的第1月,SuSE嫁到了Novell,SCO继续顶着骂名四处强行“化缘”, Asianux, MandrakeSoft也在五年中首次宣布季度赢利。3月,SGI宣布成功实现了Linux操作系统支持256个Itanium 2处理器。
⑵ Linux系统的发展史
Linux 操作系统的诞生 1981 年IBM 公司推出享誉全球的微型计算机IBM PC。在1981-1991 年间,MS-DOS 操作系统一直是微型计算机上操作系统的主宰。此时计算机硬件价格虽然逐年下降,但软件价格仍然是居高不下。当时Apple 的MACs 操作系统可以说是性能最好的,但是其天价没人能够轻易靠近。 到1991 年,GNU 计划已经开发出了许多工具软件。最受期盼的Gnu C 编译器已经出现,但还没有开发出免费的GNU 操作系统。即使是MINIX 也开始有了版权,需要购买才能得到源代码。而GNU 的操作系统HURD 一直在开发之中,但并不能在几年内完成。对于Linus 来说,已经不能等待了。从1991 年4 月份起,他开始酝酿并着手编制自己的操作系统。刚开始,他的目的很简单,只是为了学习Intel 386 体系结构保护模式运行方式下的编程技术。但后来Linux 的发展却完全改变了初衷。 1991 年初,Linus 开始在一台386sx 兼容微机上学习minix 操作系统。通过学习,他逐渐不能满足于minix 系统的现有性能,并开始酝酿开发一个新的免费操作系统。根据Linux 在comp.os.minix 新闻组上发布的消息,我们可以知道他逐步从学习minix 系统到开发自己的Linux 的过程。 从1991 年的4 月份开始,Linus 几乎花了全部时间研究386-minix 系统(hack the kernel),并且尝试着移植GNU 的软件到该系统上(GNU gcc、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 用户询问"What would you like to see in minix?"("你最想在minix 中见到什么?"),在该消息中他首次透露出正在开发一个(免费的)386(486)操作系统,并且说只是兴趣而已,代码不会很大,也不会象GNU 的那样专业。开发免费操作系统这个想法从4 月份就开始酝酿了,希望大家反馈一些对于minix 系统中喜欢那些特色不喜欢什么等信息,由于实际的和其它一些原因,新开发的系统刚开始与minix 很象(并且使用了minix 的文件系统)。并且已经成功地将bash(1.08 版)和gcc(1.40 版)移植到了新系统上,而且再过几个月就可以使用了。 最后,Linus 申明他开发的操作系统没有使用一行minix 的源代码;而且由于使用了386 的任务切换特性,所以该操作系统不好移植(没有可移植性),并且只能使用AT 硬盘。对于Linux 的移植性问题,Linus 当时并没有考虑。但是目前Linux 几乎可以运行在任何一种硬件体系结构上。 到了1991 年的10 月5 日,Linus 在comp.os.minix 新闻组上发布消息,正式向外宣布Linux 内核系统的诞生(Free minix-like kernel sources for 386-AT)。这段消息可以称为Linux 的诞生宣言,并且一直广为流传。因此10 月5 日对Linux 社区来说是一个特殊的日子,许多后来Linux 的新版本发布时都选择了这个日子。所以RedHat 公司选择这个日子发布它的新系统也不是偶然的。
Linux 的命名
Linux 操作系统刚开始时并没有被称作Linux,Linus 给他的操作系统取名为FREAX,其英文含义是怪诞的、怪物、异想天开等意思。在他将新的操作系统上载到ftp,funet。fi服务器上时,管理员Ari Lemke很不喜欢这个名称。他认为既然是Linus 的操作系统就取其谐音Linux 作为该操作系统的目录吧,于是Linux 这个名称就开始流传下来。 在Linus 的自传《Just for Fun》一书中,Linus 解释说:"坦白地说,我从来没有想到过要用Linux 这个名称发布这个操作系统,因为这个名字有些太自负了。而我为最终发布版准备的是什么名字呢Freax。实际上,内核代码中某些早期的Makefile - 用于描述如何编译源代码的文件 - 文件中就已经包含有"Freax"这个名字了,大约存在了半年左右。但其实这也没什么关系,在当时还不需要一个名字,因为我还没有向任何人发布过内核代码。而Ari Lemke,他坚持要用自己的方式将内核代码放到ftp 站点上,并且非常不喜欢Freax 这个名字。他坚持要用现在这个名字(Linux),我承认当时我并没有跟他多争论。但这都是他取的名字。所以我可以光明正大地说我并不自负,或者部分坦白地说我并没有本位主义思想。但我想好吧,这也是个好名字,而且以后为这事我总能说服别人,就像我现在做的这样。"-- Linus Torvalds《Just for fun》第84-88 页。
Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。
⑶ Linux的历史
1991年8月一
位来自芬兰赫尔辛基大学的年轻人Linus Benedict Torvalds,对外发布了一套全新的操作系
统。事情的缘起是这样的:为了实习使用著名的计算机科学家 Andrew S. Tanenbaum开发的
Minix (一套功能简单,简单易懂的UNIX操作系统,可以在8086上运行,后来也支持80386,
在一些PC机平台上非常流行),Linus购买了一台486微机,但是他发现Minix的功能还
很不完善,于是他决心自己写一个保护模式下的操作系统,这就是Linux的原型。最开始的
Linux是用汇编语言编写的。主要工作是用来处理80386保护模式,按照Linus本人的描述,
刚开始的时候是这样的:
“最开始的确是一次痛苦的航行,但是我终于可以拥有自己的一些设备驱动程序了,
并且排错也变的更容易了,我开始使用C语言来开发程序,这大大加快了开发速度,我开
始担心我发的誓言:‘作一个比Minix更好的Minix’,我梦想有一天我能在Linux下重新
编译GCC……”
“我花了两个月来进行基本的设置工作,直到我拥有了一个磁盘驱动程序(有很多错
误,但碰巧能在我的机器上工作)和一个小小的文件系统,这就是我的第0.01版(大约是
1991年8月下旬的事情),它并不完善,连软盘驱动器的驱动程序都没有,什么事情也做
不了,但是我已经被它吸引住了,除非我能放弃使用Minix,不然我不会停止改进它。”
1991年10月5日,Linus发布了Linux的第一个“正式”版本: 0.02版,现在Linus
可以运行bash(GNU的一个UNIX shell程序),GCC(GNU的C编译器),它几乎还
是什么事情也做不了,但是它被设计成一个黑客的操作系统,主要的注意力被集中在系统
核心的开发工作上了,没有人去注意用户支持,文档工作,版本发布等等其他东西。
最开始的Linux版本被放置到一个FTP服务器上供大家自由下载,FTP服务器的管理
员认为这是Linus的Minix,因而就建了一个Linux目录来存放这些文件,于是Linux这个
名字就传开了,如今已经成了约定俗成的名称了。
Linus是在 USENET 讨论区comp.os.minix 首先发布下面这条消息的:
“用户可曾渴望Minix-1.1会有这样美好的一天:人们可以自己编写驱动程序,用户是
否没有发现这样一个美妙的计划--人们可以自己修改操作系统以适应自己的需要?用户
是否对所有东西都在Minix上运行这一点感到沮丧?用户是否没有找到一个业余时间可以
干的好题目?下面这篇文章也许正是用户所需要的:
‘如同我在一个月以前所提到的那样,我正在开发一个类似于Minix的基于AT-386的
操作系统,它现在已经可以工作了(当然得看用户怎么想),现在我将公布它的源代码,
它是第0.02版本,但是可以运行bash,GCC,gnu-make,gnu-sed,compress,等等。’”
然后这个娃娃操作系统就以两个星期出一次新的修正版本的速度迅速成长,在版本
0.03之后Linus将版本号迅速提高到0.10,这时候更多的人开始在这个系统上工作。在几
次修正之后Linus将版本号提高到0.95,这表明他希望这个系统迅速成为一个“正式”的
操作系统,这时候是1992年,但是直到一年半之后,Linux的系统核心版本仍然是
0.99.p114,已经非常接近1.0了。
Linux终于在1994年的3月14日发布了它的第一个正式版本1.0版(注二),而Linux
的讨论区也从原来的 comp.os.minix中独立成为alt.os.linux,后来又更名为comp.os.Linux。
这是USENET上有名的投票表决之一,有好几万用户参加了投票。后来由于使用者越来越
多,讨论区也越来越拥挤又不得不再细分成 comp.os.linux.*,如今已经有十几个讨论组了,
这还不把专门为Redhat Linux和Debian Linux设的讨论组计算在内。这个讨论组也是
USENET上最热闹的讨论组之一,每天都有数以万计的文章发表。