半人半神,Unix、C语言和Linux诞生记

在遥远的1965年以前,电脑是军方和那些有钱的大学才可以玩,才玩得起的东西。
主机特别大,一个像房间那么大的主机大概可以连接30台的终端。

简而言之,用起来,极度不爽。

汤普森花了一个月的时间写出了 Unix 操作系统的原型

后来,大名鼎鼎的贝尔实验室、麻省理工(MIT)和通用电气决定改善一些体验,简单来说就是想让一个大型主机可以更多的终端,转眼就到了1969年,4年时间过去了,项目没啥实质性进展。

在1969年,已经退出这个计划的Ken Thompson(肯·汤普森)因为妻子回家探亲感觉无聊,心里老是寻思着想在实验室玩星际旅行(Space Travel)这款游戏,这个家伙,用了 1 个月的时间,使用汇编写出了 Unix 操作系统的原型!

到了1970年,Ken Thompson以为BCPL 语言为基础,设计出了B语言 ,叫做B语言是因为取BCLP的第一个字母。
然后这个他用B语言写出了第一个UNIX操作系统。

Ken Thompson(肯·汤普森)

汤普森写出了第一个UNIX 操作系统

1970 年,Ken Thompson设计出很简单且很接近硬件的 B 语言(叫做B语言是取BCPL的首字母B),并且他用 B 语言 写了第一个 UNIX 操作系统。

因为喜欢玩游戏,里奇搞出了C语言

时间已经到了1971年了,汤普森虽然搞出了Unix的原形和B语言,但是他依然玩不了游戏。
这个家伙,真的很有耐心,还一直在折腾。
除了他,还有一个很想玩游戏的家伙 Dennis M.Ritchie(丹尼斯·里奇) 加入了Ken Thompson所在团队,而的主要工作是改进B语言,因为B语言不是跨平台的。

一年时间又过去了,在1972年某个看起来沉闷的日子了,大神 里奇 把大名鼎鼎的C语言搞出来了。。。
没错,取名为是因为在BCPL中,C排在B的后面。

Dennis M.Ritchie(丹尼斯·里奇)

C是支持跨平台的,无上牛逼。
(机器语言和汇编语言都不具有移植性,为 x86 开发的程序,不可能在 Alpha,SPARC 和 ARM 等机器上运行,C 语言程序则可以使用在任意架构的处理器上,只要那种架构的处理器具有对应的 C 语言编译器和库,然后将 C 源代码编译、连接成目标二进制文件之后即可运行)

UNIX做为一个开源的系统,一个一个版本不停地迭代更新着。

UNIX闭源了,21岁的Linus搞出了Linux。

在UNIX的 Version 7 Unix 推出之后,通用电气把UNIX闭源了。

既然闭源了,那么大学也不用了。这时候有一位叫做Andrew S. Tanenbaum的教授为了教学方便,在UNIX已有的基础上搞了一个小型的UNIX,称为 MINIX,取UNIX(mini-UNIX)之意。

1991 年 林纳斯(Linus) 就读于赫尔辛基大学期间,对 Unix 产生浓厚兴趣,尝试着在Minix 上做一些开发工作。

林纳斯(Linus)

因为MINIX功能比较简单,林纳斯看新闻和邮件不方便,然后这个家伙就折腾出了LINUX(没错,跟他名字一字之差),那年,林纳斯,21岁!

一开始 Linux 只适用于 386,林纳斯 利用 GNU 的 bash 当做开发环境,gcc 当做编译工具,编写了 Linux 内核,一开始 Linux 并不能兼容 Unix,后来经过全世界的网友的帮助,最终能够兼容多种硬件,终于跨了平台。

有胡子的林纳斯

所以,每一门计算机语言的发明人都是大胡子的的传说是真的。

END,THANKS

你可能感兴趣的:(半人半神,Unix、C语言和Linux诞生记)