1.2 Linux的发展历史
要讲Linux的发展历史,不能不提到UNIX和Minix。UNIX的早期版本源代码可以免费获得,但是当AT&T发布版UNIX 7时,开始认识到UNIX的商业价值,于是其许可证禁止在课程中研究源代码以免商业利益受到损害。许多学校为了遵守该规定,就在课程中略去UNIX的内容而只讲操作系统理论。
只讲理论会使学生对实际的操作系统产生片面的认识。为了扭转这种局面,荷兰的Andy Taonenbaum决定编写一个在用户看来与UNIX完全兼容,而内核全新的操作系统—Minix。Andy Taonenbaum希望读者通过Minix可以剖析操作系统,研究其内部运作机制。Minix其名称源于“Mini-UNIX”,且一直恪守“Small is beautiful”的原则,其最早的版本甚至不需要硬盘就可以运行,这使得许多早期的学生都能够有能力负担其硬件要求。随着功能需求的日益增长,很多人都想向Minix中加入一些新特性以使其更加强大和实用,而Andy Taonenbaum则坚持不增加新的特性,使其保持短小精悍的特点,进而便于学生理解。随后,芬兰赫尔辛基大学的学生Linus Torvalds决定编写一个类似Minix的系统,面向实用而非教学,他编写的这个操作系统就是Linux。
1990年,Linus Torvalds用汇编语言编写了一个在80386保护模式下处理多任务切换的程序,后来从Minix中得到灵感,添加了一些硬件的设备驱动程序和一个小的文件系统,这样0.0.1版本的Linux就出来了,但是它必须在有Minix的机器上编译以后才能运行。随后Linus决定彻底抛弃Minix,编写一个完全独立的操作系统。Linux 0.0.2于1991年10月5日发布,这个版本已经可以运行bash(一种用户与操作系统内核通信的命令解释软件)和GCC(GNU C编译器)了。
Linus从一开始就决定自由扩散Linux,他将源代码发布在Internet上,随即就引起世界范围内计算机爱好者和开发者的注意,他们通过Internet加入了Linux的内核开发之中。一大批高水平程序员的加入,使得Linux得到迅猛发展。他们为Linux修复错误、增加新功能,不断尽其所能地改进它。Linux 1.0于1993年底发布,它已经是一个功能完备的操作系统了,其内核紧凑高效,可以充分发挥硬件的性能。
Linux从1.3版本之后开始向其他硬件平台移植,目前可以在Intel、DEC的Alphas、Motorola的M68k、Sun Sparc、PowerPC、MIPS等处理器上运行,可以涵盖从低端到高端的所有应用。
Linux虽然加入了GNU并遵循GPL,但并不排斥商家的参与,不排斥在Linux上开发商业软件,故而使得Linux开始了新的飞跃,出现了很多的Linux发行版。许多公司还在Linux上开发商业软件或把其他UNIX平台的软件移植到Linux上来,目前很多IT领域的大腕如IBM、Intel、Oracle、Infomix、Sysbase、Corel、CA、Novell等都宣布支持Linux。商家的加盟弥补了纯自由软件的不足和发展障碍,使Linux得以迅速普及。