1.2.3 初次释出Linux 0.02
2016-04-14 21:46
302 查看
《鸟哥的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上面贴了一则消息:
他说,他完成了一个小的操作系统,这个内核是用在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大受欢迎的重要因素!
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大受欢迎的重要因素!
相关文章推荐
- Linux---centos搭建SVN服务器
- 将/proc/uptime文件中的数转化成long然后转成日期
- linux 的 socket例子
- linux系统时间同步,硬件时钟和系统时间同步,时区的设置
- Linux gdb 调试命令
- Linux学习笔记知识点(find命令)
- 基于Linux和Windows管理的samba
- linux基础学习之 grep总结
- linux常用命令(一)
- arm移植NTP(同步嵌入式linux系统时间)
- Centos 7服务器搭建(二)—安装MySQL
- 1.1.2 Linux之前UNIX的历史(2)
- CentOS下使用命令行测试网速
- Centos 7服务器搭建(一)—最小化安装
- Linux内核分析(八)
- Linux 文件系统:procfs, sysfs, debugfs 用法简介
- Linux ssh远程命令启动
- Linux命令之ss
- 64位linux c+nasm混合编程 gcc编译报错
- Linux手动挂载硬盘且添加到文件