码迷,mamicode.com
首页 > 系统相关 > 详细

Linux发展简史

时间:2015-08-18 06:45:53      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:linux发展简史

一、Linux发展简史


1.1969年以前:Bell,MIT与GE的“Mutics”系统


Bell:贝尔实验室,隶属于AT&T公司

MIT:麻省理工学院

GE:通用电气公司

Mutics:有“多数”的意思,意在让多人同时使用一台主机的资源(多用户


·60年代初,MIT开发出分时操作系统,最多同时提供30台终端机(技术上的限制)连接一台大型主机,以让更多用户可以同时使用同一台昂贵主机的资源;

·1965年,Bell、MIT与GE共同发起Mutics项目,目的是想让大型主机可以同时提供300台以上终端机来连接大型主机;

·1969年前后,Mutics项目资金缺乏,虽然项目仍然进行,不过Bell最终退出了该项目;

·Mutics项目最终还是成功的,只是没有受到太大的重视(需求问题)。




2.1969年:Ken Thompson的小型File Server System


Thompson:贝尔实验室的成员,当时参与了Mutics项目开发


·Mutics项目培养了优秀的人才,Thompson便是其中一员;

·Thompson从Mutics项目中获得了不少的想法;

·为了移植“太空旅游”游戏,Thompson将Mutics项目中庞大复杂的系统进行简化,在PDP-7主机上以汇编语言写出了一组内核程序内核工具程序以及一个小的文件系统,被称为Unics(UNIX的原型);

·Thompson开发的文件系统概念:

a.所有的程序或系统装置都是文件

b.不管构建编辑器还是附属文件,所写的程序只有一个目的,就是要有效地完成目标




3.1973年:UNIX正式诞生,Ritchie等人以C语言写出第一个正式UNIX内核


汇编语言:具有专一性,与硬件相关,Unics即用汇编语言所开发

B语言:高级语言,但所编译出来的内核性能不是很好

C语言:高级语言,由Dennis Ritchie将B语言重新改写而成


·Thompson开发的Unics实用性强,在Bell内部广为流传;

·当时计算机机器架构(硬件架构)都不太相同,给Unics移植带来一定的复杂性;

·Ritchie将B语言改写成C语言,并与Thompson合作,用C语言来重新必定与编译Unics的内核;

·发行出UNIX的正式版本;

·由于高级语言的特性,UNIX很容易被移植到不同的机器上(硬件架构不同的主机)。




4.1977年:重要的UNIX分支——BSD诞生


可移植性:UNIX用高级语言开发,理论具有可移植性,即只要取得UNIX的源码,针对不同主机特性加以修改,即可以移植到不同的主机上

Berkeley:加州柏克莱分校

Bill Joy:Sun公司创始人

Berkeley Softsare Distribution:即BSD

FreeBSD:由BSD改版而来,可以安装在x86硬件架构上


·由于UNIX的可移植特性,1973年后,Bell得以与学术界合作开发UNIX(学术界进行学术研究,往往需要使用计算机,而当时缺乏的是一个好的操作系统);

·Bell与Berkeley进行了重要的接触;

·Berkeley的Bill Joy取得UNIX的内核源码后,修改成适合自己机器的版本,增加很多工具软件与编译程序,并将其命名为Berkeley Softsare Distribution,即BSD;

·Bell Joy创建办Sun公司,以其修改的内核(BSD)来进行自己的商业UNIX版本的开发。




5.1979年:重要的System V架构与版权声明


协议:这里指硬件架构的通用生产协议,当时计算机硬件公司没有该概念,因此所生产的硬件需要合适的UNIX系统

x86:早期的个人计算机架构,该架构下的CPU没有多任务的作业能力

纯种的UNIX:指BSD以及System V


·UNIX高可移植性、强大性能、无版权纠纷,商业公司开发UNIX操作系统,推出自家的主机搭配“自家”的UNIX操作系统;

·这些公司开发的硬件没有遵循统一的协议(当时没有),开发的UNIX操作系统及相关软件只能在自家硬件架构的主机上运行;

·这些公司有:AT&T、IBM、HP、DEC、Sun、Cray等;

·UNIX强调多用户、多任务,由于x86的特性,没有人愿意移植UNIX到x86架构主机上;

·AT&T推出的System V第七版UNIX,支持x86架构的个人计算机;

·AT&T出于商业考虑,发行其第七版UNIX时,提出“不可对学生提供源码”,即要将UNIX版权收回。




6.1984年之一:x86架构的Minix操作系统诞生


Minix:迷你的UNIX操作系统


·System V每七版的版权声明,影响了教导UNIX内核源码学问的谭宁邦教授;

·为了教学的方便,谭宁邦教授与UNIX兼容的迷你UNIX操作系统Minix;

·Minix只能通过磁盘/磁带购买,但是提供Minix源码;

·谭宁邦教授没有继续开发Minix,只是点到为止。




7.1984年之二:GNU项目与FSF基金会成立

Richard Mathew Stallman:史托曼,GNU项目发起人,起草GPL

GNU项目:创建一个自由、开放的UNIX操作系统(Free UNIX)

GPL:,General Public License,GNU的通用公共许可证,避免GNU自由软件被商业利用而发起

AI Lab.:黑客圈中出名的人工智能实验室,1971年史托曼进入该实验室

Lisp:MIT开发的操作系统,属于专利软件,史托曼早期在Lab中即使用其来开发软件

Free Software Foundation:即FSF,自由软件基金会


--自由分享的环境

·史托曼早年进入AI Lab.中,强调“分享”,对于软件没有专利的困扰;

·AI Lab.的管理层问题,导致优秀黑客离开并加入商业公司开发软件;

·史托曼坚持分享、自由而留下来,但意识到需要成立一个开放的团体来共同努力。


--使用UNIX开发阶段

·实验室硬件的更换,使得史托曼放弃了Lisp,并得以接触UNIX;

·UNIX在那时虽然也是专利软件,但相比Lisp,其在架构上还是比较开放的;

·史托曼将在Lisp上写的软件移植到UNIX上,并公布源码。


--GNU项目的推展

·1984年史托曼开始GNU项目,旨在创建一个自由、开放的UNIX操作系统;

·由于当时只用史托曼一个人,并且创建操作系统并不容易,困难重重;

·史托曼采取“先开发UNIX操作系统上的软件”的策略,这些软件称为GNU软件;

·开发出Emacs:程序编辑器(非编译器),进行程序语法的检查;

·为了开发出UNIX下的编译程序(非常重要),史托曼利用Emacs出售赚来的钱,成立FSF

·FSF请更多工程师和志愿者来编写软件;

·进而开发的重要软件:Gcc,C语言的编译程序




8.1985年:GNU的通用公共许可证——GPL


·起草GPL,是为了避免GNU自由软件被他人利用而成为专利软件

·GNU项目的重要自由软件:

Emacs

GNU C(GCC)

GNU C Library(GLIBC)

Bash shell

·这些软件使得软件开发者可以更好地进行软件开发工作,从而壮大了自由软件团体;

·这些软件仍然是在那些授权的UNIX平台上工作,当时并没有“自由的UNIX内核”存在,直到Linux出现。




9.1988年:图形接口XFree86项目


XFree86:,开发用户图形接口的非营利性组织,即X Window System + Free + x86的简称


·用户图形接口需求日益加重;

·MIT在1984年已与第三方合作开发出X Window System;

·MIT在1988年成立非营利性组织XFree86。




10.1991年:荷兰大学生Linus Torvalds的一则消息


·1991年,Torvalds在BBS上发布消息,称以bash,gcc等工具写了一个小小的内核程序,并可以在Intel的386机器上面运行。





二、GNU项目


1.自由软件(Free Software)活动


·将源码连同软件程序一起公布的举动,就是自由软件活动。




2.自由软件的版权:GNU GPL


·GNU=GNU‘s Not UNIX;

·GNU与FSF开发出来的软件都挂上GPL的版权声明,FSF内核观念是:版权制度是促进社会进步的手段,版权本身不是自然权力。




3.自由软件“自由(Free)”的真谛


·史托曼对GPL一直是强调Free的;

·Free的解释:

-英文解释:


-中文大意:



本文出自 “香飘叶子” 博客,转载请与作者联系!

Linux发展简史

标签:linux发展简史

原文地址:http://xpleaf.blog.51cto.com/9315560/1685374

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!