赞
踩
《鸟哥的Linux私房菜 基础学习篇(第三版)》第1章Linux是什么,本章介绍为何Linux可以免除专利软件之争,并且了解到Linux为何可以同时在个人计算机与大型主机上面大放光彩。本节为大家介绍初次释出Linux 0.02。
1.2.3 初次释出Linux 0.02
探索完了386的硬件之后,终于拿到Minix并且安装在托瓦兹的386计算机上之后,托瓦兹跟BBS上面那些工程师一样,他发现Minix虽然真的很棒,但是谭宁邦教授就是不愿意进行功能的加强,导致工程师在操作系统功能上面的欲求不满!这个时候年轻的托瓦兹就想:"既然如此,那我何不自己来改写一个我想要的操作系统?"于是他就开始了内核程序的编写了。
编写程序需要什么呢?首先需要的是能够进行工作的环境,再来则是可以将源码编译成为可执行文件的编译程序。好在有GNU项目提供的bash工作环境软件以及gcc编译程序等自由软件,让托瓦兹得以顺利编写内核程序。他参考Minix的设计理念与书上的程序代码,然后仔细研究出386个人计算机的性能优化,然后使用GNU的自由软件将内核程序代码与386紧紧地结合在一起,最终写出他所需要的内核程序。而这个小玩意竟然真的可以在386上面顺利地运行,还可以读取Minix的文件系统。不过还不够,他希望这个程序可以获得大家的一些修改建议,于是他将这个内核放置在网络上供大家下载,同时在BBS上面贴了一则消息:
- Hello everybody out there using minix-
- I'm doing a (free)operation system (just a hobby,
- won't be big and professional like gnu)for 386(486)AT clones.
- I've currently ported bash (1.08)and gcc (1.40),
- and things seem to work. This implies that i'll get
- something practical within a few months, and I'd like to know
- what features most people want. Any suggestions are welcome,
- but I won't promise I'll implement them :-)
他说,他完成了一个小的操作系统,这个内核是用在386机器上的,同时,他真的仅是好玩,并不是想要做一个跟GNU一样大的项目!另外,他希望能够得到更多人的建议与回馈来开发这个操作系统!这个概念跟Minix刚好背道而驰呢!这则新闻引起很多人的注意,他们也去托瓦兹提供的网站上下载了这个内核来安装。有趣的是,因为托瓦兹放置内核的那个FTP网站的目录为Linux,从此,大家便称这个内核为Linux了。(请注意,此时的Linux就是那个Kernel,另外,托瓦兹所丢到该目录下的第一个内核版本为0.02呢!)
同时,为了让自己的Linux能够兼容于UNIX系统,于是托瓦兹开始将一些能够在UNIX上面运行的软件拿来在Linux上运行。不过,他发现到有很多的软件无法在Linux这个内核上运行。这个时候他有两种做法,一种是修改软件,让该软件可以在Linux上运行,另一种则是修改Linux,让Linux符合软件能够运作的规范。由于希望Linux能够兼容于UNIX,于是托瓦兹选择了第二个做法"修改Linux"。为了让所有的软件都可以在Linux上执行,于是托瓦兹开始参考标准的POSIX规范。
POSIX是可携式操作系统接口((Portable Operating System Interface))的缩写,重点在于规范核心内核与应用程序之间的接口,这是由美国电气与电子工程师学会((IEEE))所发布的一项标准喔!
这个正确的决定让Linux在起步的时候体质就比别人优良,因为POSIX标准主要是针对UNIX与一些软件运行时候的标准规范,只要依据这些标准规范来设计的内核与软件,理论上,就可以搭配在一起执行了。而Linux的开发就是依据这个POSIX的标准规范,UNIX上的软件也是遵循这个规范来设计的,如此一来,让Linux很容易就与UNIX兼容共享互有的软件了。同时,因为Linux直接放置在网络上供大家下载,所以在运行的速度上相当快,导致Linux的使用率大增,这些都是造成Linux大受欢迎的重要因素!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。