【Linux是什么】Torvalds的Linux开发

Minix

Torvalds大学期间通过开源的Minix学习到了很多内核程序设计的设计概念。

对386硬件的多任务测试

多任务即为CPU在不同的任务之间快速切换,而人感觉不出切换的时间。正是这个原因,同时开两个文件可以比先后开两个文件耗时一点点。

早期x86计算机对于多任务的性能不佳。386计算机推出后情况好了很多。Torvalds在他的386计算机上成功实现了多任务测试。

※要达到多任务(Multi-Tasking)的环境,除了硬件(主要是CPU)需要能够具有多任务的特性外,操作系统也需要支持这个功能!

初次释出Linux0.02

因不满足于Minix,Torvalds开始自己开发操作系统内核。好在有GNU项目提供的bash工作环境软件以及GCC编译程序等自由软件。开发结束后他将内核上传到了网上(FTP文件夹的名字恰好是Linux)供人们下载。

同时为了兼容UNIX系统,Torvalds为了让所有软件都可以在Linux上运行,他开始参考POSIX规范。从此Linux开始广泛流传并大受欢迎。

※POSIX是可携式操作系统接口(Portable Operating System Interface),重点在于规范内核与应用程序之间的接口。

Linux开发:虚拟团队的产生

单一个人维护阶段

Torvalds发布的Linux内核放置在FTP上面,并告知大家新的版本信息,等到用户下载了这个内核并且安装之后,如果发生问题,或者是由于特殊要求需要某些硬件的驱动程序,那么这些用户就会主动反馈给Torvalds。在他能够解决的问题范围内,他都能很快速地进行Linux内核的更新与排错。

广大志愿者加入阶段

因为Linux内核是开源的,所以志愿者很容易就能够跟随Linux的原本设计架构,并且写出兼容的驱动程序或者软件。

因为这种随时都有程序代码加入的状况,于是Linux便逐渐开发成具有模块的功能。就是将某些功能独立于内核之外,在需要的时候才加载到内核中。如此一来,如果有新的硬件驱动程序或者其他协议的程序代码进来时,就可以模块化,大大增加了Linux内核的可维护能力!

内核功能细部分工阶段

越来越多的人成为了Torvalds的开发副手,自愿传送修补程序的黑客志愿者。他们其实都没有见过面,称这群人为虚拟团队。为了虚拟团队数据的传输,Linux成立了内核网站www.Kernel.org

1994年,虚拟团队完成了Linux的内核正式版Version 1.0
1996年,更新了Version 2.0
在1994年之后,Linux便被移植到很多的硬件上面去了。除了x86之外,IBM HP Sun等公司的硬件也都有被Linux支持。

Linux的内核版本

内核版本命名一般是:
主版本.次版本.释出版本-修改版本
如2.6.18-92.e15
次版本号为奇数表示开发中版本,为偶数表示稳定版本。
释出版本则是在主次版本架构不变的情况下,新增的功能累计到一定程度后所新释出的内核版本。

而由于Linux内核是使用GPL的授权,因此大家都能够进行内核程序代码的修改。因此如果有针对某个版本的内核修改过部分的程序代码,那么那个被修改过的新的内核版本就可以加上修改版本了。

Linux的内核版本和distribution版本不是一个概念。

Linux distributions

可完全安装的Linux发布套件

很多商业公司或者非盈利团体将Linux内核加上可运行的软件集成起来,加上自己具有创意的工具程序,这个工具程序可以让用户以光盘或者通过网络直接安装管理Linux系统。这个”Kernel+Softwares+Tools”的可完全安装的系统我们称之为Linux distribution

各大Linux Distributions的主要异同:支持标准

为了让各大Linux Distributions不至于差异太大,有Linux Standard Base(LSB)和目录架构的File system Hierarchy Standard(FHS)来规范开发者。
基本上,每个Linux distributions除了架构的严谨度和选择的套件内容外差异并不太大。

Distributions主要分为两大系统:一是使用RPM方式安装软件的系统(Red Hat等) 二是使用Debian的dpkg方式安装软件的系统(Ubuntu等)

Linux在中国

中国台湾地区发起的CLE项目开发了很多中文套件及翻译了很多的英文文件。

选择适合的Linux distribution

先选定一个版本,从头彻尾地了解它,继续使用其他的版本时就可以很快进入状况。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。