1965年以前,计算机的输入复杂并且缓慢,而相对而言,计算机的cpu对输入的数据处理起来却非常快,所以cpu大部分时间是处在空闲状态等待着数据的输入。因此当时迫切需要一套可以让一台计算机同时多人使用并且同时处理多个任务的操作系统。

    1965年,美国电话电报公司(AT&T)的Bell实验室,美国麻省理工学院的人工智能实验室(MIT)和美国通用电气公司(GE)联合研发一套多任务多用户的操作系统,称为Multcis。后来,由于Multics项目的目标过于庞大,这个项目渐渐迷失了,1969年前后,该项目即宣告失败,三家公司全部退出。

    当时Bell实验室很多工程师已经很依赖于Multics系统工作了,由于Bell实验室的退出,他们便不能继续使用Multics。Ken Thompson便是其中一位,当时他正在开发一款名为“Space Travel”的游戏,没了Multics系统来运行游戏,该游戏项目自然也就搁置了。后来,Ken在实验室的角落里发现了一台实验室淘汰的PDP-7(当时的小型计算机设备),于是他决定在这台设备上自己开发一套操作系统来运行“Space Travel”游戏。经过一段时间的努力,Ken的操作系统初具雏形,他把它称为Unics。后来,Ken很高兴地在同事中推荐他的“Space Travel”游戏,但是大家对他的游戏并不感兴趣,对他开发的Unics操作系统却兴趣十足,大家纷纷安装学习使用。

   1969年,一次偶然的机会,Ken通过接手一个新项目获得了一台当时最高配的PDP设备,Ken如获至宝,便开始大力研发他的Unics,此时Unics已经在Bell实验室广泛传开,Ken的一个同事Dennis Ritchie也加入到Unics系统的研发中,该系统也更名为Unix。

    Dennis和Ken发现,由于Unix在PDP设备上面开发的,该系统只能运行在PDP设备上,为了让他们的系统可以运行在不同的硬件平台上面,他们不得不一次次的移植和改写系统,于是他们想使用一种比汇编语言更高级的语言来重写系统。当时有一个比较著名的脚本语言叫B语言,但是性能比较差,并且过于简单,他们便将B语言进行改进,称为C。强大的C语言由此诞生!

    1974年,Ken和Dennis联合发表了一篇关于Unix的论文,于是Unix便广为人知,很多人都想获取该系统研究和学习。由于Ken和Dennis是Bell实验室的员工,他们开发的Unix自然也属于Bell实验室,当时AT&T刚被美国最高法院反垄断法裁定不能销售除电话电报以外的任何商品,于是Unix便被无偿的提供给社会各机构,在大家的共同努力下Unix渐渐被加入许多新特性和新功能,变得更加完善。

   1977年,Berkeley大学的Bill Joy(Sun公司的创始人)针对他的机器修改Unix源码,称为BSD(Berkeley Software Distribution)。从BSD开始,各大厂商及商业公司根据自身公司的硬件架构,并以BSD系统为基础进行Unix系统的研发,从而产生了许多不同版本的unix操作系统。

    1979年,Bell实验室从AT&T独立出来,这样他就不再受之前法院对AT&T的反垄断约束,于是Unix的开放权被Bell实验室收回,各机构纷纷因为付不起Unix的版权费而放弃使用Unix。当时已经有许多靠包装发行Unix来获取商业利益的公司,如HP,IBM,SUN,Microsoft 等,Bell实验室的此一举动自然引起了许多商业纠纷,并且也是对Unix发展的一次重大打击。

      Unix被收回开放权后,各大学就无法自由使用了。芬兰赫尔辛基大学的一名教授Andrew Tanenbaum为了给学生讲操作系统,便参照Unix自己编写了一个系统,称为Minix,Minix系统完全兼容Unix。同样,Minix是Andrew基于自己的电脑开发的,无法安装在其他电脑上面,他的一些学生为了Minx能运行在其他设备上面为Minx写了驱动,但是Andrew为了保证代码的纯净不愿意在系统中加入这些驱动。因此学生便觉得很郁闷,这其中便包括研究生Linus Torvalds。Linus在仔细研究了Minix的设计思想后决定参照Minix自己写一个操作系统。

    1991年,Linus Torvalds在研究了Minix的设计思想后基于gcc、bash开发了针对386机器的Lniux内核;

    1993年,Torvalds发布Linux-v1.0,并且Linux转向GPL;

    1994年,Linux的第一个商业发行版Slackware问世;

    1996年,Torvalds发布Linux-v2.0,确定了Linux的吉祥物:企鹅。

至此,Linux终于诞生!我们不得不说这些人真牛。