Linux操作系统发展而来的5个阶段

1988年,芬兰赫尔辛基大学迎来了一位新的大学生——Linus Benedict Torvalds,就是图1.11所示的这位。当然,那时候他还比较瘦,而且他的名字在学校的花名册中也并不显眼,但是一年后,他大二的时候,开始有故事了。

Linux操作系统发展而来的5个阶段

图1.11 Linus Benedict Torvalds


1 Minix

大学二年级的时候,Linus同学开始学习操作系统这门课程。那时候这门课程使用Minix系统进行教学。Minix这个名字或许您听着并不熟悉,这是个专门用于教学的操作系统,它的系统结构和UNIX系统是类似的。有人可能会问:那为什么不直接用UNIX呢?嗯,UNIX确实很先进,很优秀,确实值得学习计算机科学和操作系统的同学们学习。然而要知道有一种东西叫做版权,即便你不怎么在乎这个东西,但人家学校是不能做违法的事的。UNIX并不免费,并且是天价的,广大穷苦的大学生们买不起,学校也没钱为每一名学生配备一套UNIX系统。

荷兰阿姆斯特丹Vrije大学的Andrew S. Tanenbaum教授(就是图1.12所示的这位)在教学过程中就深刻地体会到,世界上缺少一个教学用的操作系统。他的学生们学习了计算机,学习了操作系统原理,不能光啃书本,总得实践一下吧?

总得找台机器装个操作系统用用吧?用什么操作系统来教学呢?买个DOS装上?虽然那时候DOS已经问世了,但是这么一个单用户、单任务、效率也不高的操作系统,实在不能指望它培养出什么软件人才。装个UNIX?学校还不想破产。于是牛人Andrew S. Tanenbaum拿起键盘——咱自个儿编一个吧!然后Minix就诞生了。

Linux操作系统发展而来的5个阶段

图1.12 Andrew S. Tanenbaum教授

Minix取Mini UNIX之意,1987年被编写出来,到1991年发展到1.5版,后来发展到2.0基本上就停止了。因为这个操作系统的初衷只是作为一个教学模型,并不是一个实用的系统,所以功能很简单,体积也很小,并且以后也没有进行进一步的开发和扩充。它为的是能够让学生在一学期内学完整个系统。很长一段时间后又出了Minix 3,这回有图形界面了,图1.13所示就是Minix 3的界面。那时候Minix在大学中用于教学是免费的,但是用于其他用途是需要给钱的,不过现在已经彻底免费了。它作为一个操作系统,其实并不算优秀,但它是一个源代码完全开放的操作系统,这使得有理想、有志向、有抱负的黑客们,第一次能够完整地阅读到一个操作系统的全部代码。


Linux操作系统发展而来的5个阶段

图1.13 Minix 3的界面

2 异想天开的FREAX

Linus他们学校的计算机上装的就是这个专门用于教学的Minix系统。虽然适合拿来学习,不过系统本身并不强大。这要是别人也还罢了,可是Linus同学有个最大的爱好,就是虐待计算机。

他热衷于测试计算机的能力和限制,整天研究怎么让计算机按照自己的想法去干活,怎么发挥计算机最大的性能,一定要把可怜的机器累得精疲力尽,口眼歪斜,电容爆浆,吐血身亡才算罢休。

可想而知,很快这个教学用的操作系统就已经不能满足Linus大侠的欲望了,可是似乎也没有更好的选择。上面说过了,UNIX奇贵无比,DOS又不够优秀,而且无论UNIX还是DOS,它们的代码都是不开放的,只能拿来用,没法拿来折腾。于是像其他牛人一样,Linus自己动手了(当想要的东西不存在时就自己动手创造,这充分说明他有成为大牛的潜质)。

今天我们都知道,Linus从那时起开始了一个事业,一个神话,但在当时,他并没有想那么多,只是为了学习Intel386体系结构下的编程技术。他并不知道自己即将创造的是一个在世界范围广泛使用的系统,而只觉得是自己一时的异想天开。因此,一开始他把自己写的这个操作系统命名为FREAX,有异想天开之意,就此开始了这个“异想天开”操作系统的编写。大约1991年4月份的时候,他就编写出了第一个可以运行的版本——0.00版。这个版本可以启动,运行两个进程,分别在屏幕上打印出AAA和BBB,然后……就没了。虽然连句整话都不会说,不过这是一个好的开始,至少能启动了。

*提示:*FREAX源于英文中的freak。freak有怪诞,怪物之意,Linus取其谐音命名其操作系统为FREAX。

3 Linux的由来

如果Linus就这么干下去,估计到今天只会有两种结果。

(1)成家立业后的Linus经常指着他的电脑C盘里面的一个文件夹对来访的朋友说:看,我那时候还写过一个FREAX系统。

(2)Linus为完成FREAX系统挑灯夜战,最终累得吐血身亡,永远活在我们心中。

总之,如果他一直自己干下去,就不会有Linux这个东西了,因为一个人的力量是有限的。有道是人多力量大,众人拾柴火焰高。Linus深刻明白这一点,他没有独自在家闭门造车,而是让他的操作系统和互联网,亲密接触了。

“Hello everybody out there using minix——I'm doing a (free) operating system.”这是他当年在comp.os.minix上发布的消息,告诉大家,他正在写一个操作系统。并且,他还把他写的“异想天开”操作系统的代码上传到ftp.funet.fi的服务器上供大家下载,以便交流心得,共同学习。这就相当于你跑到网站上发帖子说:我研究出一种萝卜炖牛腩的方法,主料是啥啥啥,配料是啥啥啥,怎么怎么炖,大家都试试吧!(对不起,我又饿了)于是很多有兴趣的人就来尝Linus炖的牛腩,哦不对,是尝试Linus写的系统。不过当时那个服务器的管理员Ari Lemke看着这个异想天开的名字就不顺眼。想想,既然是Linus写的操作系统,又是类UNIX的,干脆,叫Linux吧。

这里先要说一个概念,Linux是什么?狭义地讲,Linux只是一个操作系统的内核,它只是各位的Ubuntu系统里面/boot/目录下的那个内核文件vmlinuz-x.x.xx-xx-generic。就好比汽车,Linux只是一个引擎而已,只是大家普遍习惯把装了Linux这种引擎的汽车叫做Linux汽车。那么既然Linux只是一个内核,要想工作,就还需要很多周边软件的支持,比如文件系统;比如一个命令行程序;比如一些基本的软件。这些东西加在一起成为一个系统,其实应该叫做GNU/Linux系统。不过为了符合平时习惯,本书后面如无特别声明,所提到的Linux都指GNU/Linux系统。

ls /boot

4 众人拾柴造就Linux

Linux被公布在网上之后,引来大家纷纷的路过和围观,很多人觉得这个东西挺有意思,不过第一个对外发布的0.01版Linux还有很多的不完善(这简直是一定的)。于是,全世界的有志之士纷纷伸出援手,共同完善这个刚刚出生的Linux。

首先就要感谢RichardStallman大牛创建的GNU计划,这使得Linux不必去从头开始开发那些最基本的软件和命令,而是直接利用GNU计划中的那些优秀的开源软件——前面说过了,那时候GNU系统除了内核以外,已经比较完善了。

有了基本的软件之后,还需要一个文件系统。由于当初Linus大侠是在Minix系统上开发的,所以最开始Linux用的文件系统是借用Minix的文件系统。可老借别人的总不是个事儿,还是应该有自己的文件系统,要不然你怎么好意思跟别的操作系统打招呼?这时候,来了个牛人叫Theodore Ts'o,就是图1.14中这位。


Linux操作系统发展而来的5个阶段

图1.14 Theodore Ts'o,曹予德


Theodore Ts'o,曹予德,华裔,1990年毕业于美国MIT大学计算机科学专业。他爱好广泛,喜欢烹饪、骑车、无线电报,还有折腾电脑(这些爱好都不挨着啊),当然这不是我们的重点。他看到Linux觉得很有意思,于是怀着极大的热情为Linux提供了邮件列表服务以便大家一起讨论问题,后来还提供了ftp站点来共享Linux的代码,并且一直用到现在。除此之外,技术上,他编写了 0.10内核中的虚拟磁盘驱动程序和内存分配程序。在感觉到Linux缺少一个自己的文件系统后,他提出并实现了ext2文件系统,此后ext系列的文件系统一直都是Linux世界中事实上的标准,任何一个发行版都会默认支持ext文件系统,现在已经发展到了ext4了。

另一位牛人,一个英国人——Alan Cox,请见图1.15,不要问我为什么牛人都不爱刮胡子,我也不知道。


Linux操作系统发展而来的5个阶段

图1.15 Alan Cox

他工作于英国威尔士斯旺西大学,特别爱玩电脑游戏(又一个玩游戏的,可见玩游戏也不是坏事),尤其是网游(你看你看,还是网游),不过那时候的网游不像现在这样华丽,那时候是字符界面的,能想象吗?字符界面的网游!那种网游叫做MUD——Multi-User Dungeon or Dimension。玩MUD当然就得有计算机,得有网,所以Alan Cox开始逐渐地对计算机和网络产生了兴趣。为了提高电脑运行游戏的速度及网络传输的速度,他开始接触各种操作系统,为自己选择一个满意的游戏平台,争取榨干电脑的每一个指令周期。

经过仔细考虑,他买了一台配有80386-SX型CPU的电脑,并且装了Linux 0.11版的系统。这主要是因为预算比较紧张,即使是Minix他也买不起。于是他开始使用Linux,进而学习其源代码,并对Linux产生了兴趣,尤其是网络方面相关的代码(整天琢磨怎么榨干他家那点带宽呢)。在Linux 0.95版之后,他开始为Linux系统编写补丁程序,以后逐渐加入Linux的开发队伍,并成为维护Linux内核源代码的主要人物之一。有一个稍微有点软的公司还曾经邀请他加盟,被他稍微有点硬地拒绝了。

*提示:*80386-SX是Intel公司于1988年年末推出的一款廉价版CPU。其价格只相当于主流版本80386-DX的三分之一。

再有一位,Michael K. Johnson,他是著名的Linux文档计划的发起者之一,写了《内核骇客手册》一书,曾经在Linux Journel工作,现在就职于著名的商业发行版Red Hat的公司。

当然除了这些大牛,还有更多的大牛,中牛,小牛,肥牛……(唉,又饿了)他们都为Linux的发展作出了自己的贡献。他们来自不同的国家,从事不同的职业,甚至从未见过面。但是他们为了一个共同的目标,通过网络,一起合作,利用自己的业余时间,义务地帮助Linux成长,才有了今天这个可以合法免费使用的操作系统。这是什么精神?这就是“人人为我,我为人人”的软件精神!

5 琳琅满目的Linux

这之后,Linux的发展可以用“一发不可收拾”来形容。很多商业公司和民间组织都纷纷看好这个系统,并加入了Linux的阵营,各种各样的发行版满足着众多Linux爱好者的需求。

商业化比较成功的发行版,要数来自俄罗斯的RedHat了,相信大家对图1.16里这顶红帽子有些印象。Red Hat 1.0版于1994年11月3日发布,之后一直稳健发展。到Red Hat 9.0之后版本出现分支,其中的桌面版与来自民间的Fedora计划合并,成为Fedora Core发行版。而Red Hat公司则把精力全部投入企业使用的服务器版本——Red Hat Enterprise Linux。RedHat为Linux社区作的最大的贡献要数rpm软件包了,现在,相当多的发行版都使用rpm作为默认的软件包格式。


Linux操作系统发展而来的5个阶段

图1.16 Red Hat的徽标

Mandriva是一个来自欧洲的发行版,它的前身是法国的MandrakeLinux。Mandrake的特点是方便,易用性好,硬件兼容性强。它为Linux的普及作出了很大贡献。2005年Mandrakesoft公司与拉丁美洲最大的Linux厂商Conectiva达成了收购协议,Mandrake从此更名为Mandriva。Mandriva和Red Hat一样,以rpm作为软件管理工具,部分兼容了Red Hat Linux/Fedora Core的软件包。图1.17所示是Mandriva的运行界面。


Linux操作系统发展而来的5个阶段

图1.7 Mandriva的运行界面

SUSE是一个来自德国的发行版,隶属于Novell公司。它的特点是界面漂亮,但消耗的资源相对多一些,图1.18所示就是SUSE的界面。另外,它包含了一个安装及系统管理工具——YaST2。用户可以用这个工具进行软盘分区、系统安装、联机更新、网络及防火墙组态设置、用户管理等操作,为原来复杂的设置工作提供了方便的组合界面。


Linux操作系统发展而来的5个阶段

图1.18 SUSE界面

还有一个比较有历史的发行版,就是Debian。它的徽标是一个豪放的螺旋,就像图1.19所示的这样。这是一个没有商业化,完全追随开源精神的发行版。Debian于1993年发布第一个版本,一直到现在,路线没有大的变动,以稳定、保守著称。它的deb格式的软件包和Red Hat公司的rpm包具有同等重要的地位。同时,它的apt软件包管理器,也成为其他发行版竞相效仿的模范。


Linux操作系统发展而来的5个阶段

图1.19 Debian的徽标

除了这些之外,还有灵活的Slackware、极端的Gentoo、简洁的Arch,以及我们这个故事的主角,在Debian的基础上改头换面而来的Linux界的新星——Ubuntu。

6 小结

好了,Linux家族的这点历史渊源就介绍到这里,相信您对UNIX、Minix、Linux这些发音差不多的系统,已经有了些简单的了解了。下一章,就该我们这本书的主角——Ubuntu系统登场了。

总结: 发展历史: 三个组织和两个人 开源计划: stallman, GNU Linux及各个版本

所学所得: 怀抱着榨取计算机性能的初心, 意像方法, C语言的发明人Det 凡事从小处做起, 比如unix系统, linux系统, 起初只有一个小目标.

展开阅读全文

页面更新:2024-03-24

标签:操作系统   徽标   软件包   异想天开   网游   文件系统   内核   界面   阶段   东西   版本   代码   计算机   系统   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top