在遙遠(yuǎn)的1965年以前,電腦是軍方和那些有錢的大學(xué)才可以玩,才玩得起的東西。
主機(jī)特別大,一個像房間那么大的主機(jī)大概可以連接30臺的終端。
簡而言之,用起來,極度不爽。
后來,大名鼎鼎的貝爾實(shí)驗(yàn)室、麻省理工(MIT)和通用電氣決定改善一些體驗(yàn),簡單來說就是想讓一個大型主機(jī)可以更多的終端,轉(zhuǎn)眼就到了1969年,4年時間過去了,項(xiàng)目沒啥實(shí)質(zhì)性進(jìn)展。
在1969年,已經(jīng)退出這個計劃的Ken Thompson(肯·湯普森)因?yàn)槠拮踊丶姨接H感覺無聊,心里老是尋思著想在實(shí)驗(yàn)室玩星際旅行(Space Travel)這款游戲,這個家伙,用了 1 個月的時間,使用匯編寫出了 Unix 操作系統(tǒng)的原型!
到了1970年,Ken Thompson以為BCPL 語言為基礎(chǔ),設(shè)計出了B語言 ,叫做B語言是因?yàn)槿CLP的第一個字母。
然后這個他用B語言寫出了第一個UNIX操作系統(tǒng)。
Ken Thompson(肯·湯普森)
1970 年,Ken Thompson設(shè)計出很簡單且很接近硬件的 B 語言(叫做B語言是取BCPL的首字母B),并且他用 B 語言 寫了第一個 UNIX 操作系統(tǒng)。
時間已經(jīng)到了1971年了,湯普森雖然搞出了Unix的原形和B語言,但是他依然玩不了游戲。
這個家伙,真的很有耐心,還一直在折騰。
除了他,還有一個很想玩游戲的家伙 Dennis M.Ritchie(丹尼斯·里奇) 加入了Ken Thompson所在團(tuán)隊(duì),而的主要工作是改進(jìn)B語言,因?yàn)锽語言不是跨平臺的。
一年時間又過去了,在1972年某個看起來沉悶的日子了,大神 里奇 把大名鼎鼎的C語言搞出來了。。。
沒錯,取名為是因?yàn)樵贐CPL中,C排在B的后面。
Dennis M.Ritchie(丹尼斯·里奇)
C是支持跨平臺的,無上牛逼。
(機(jī)器語言和匯編語言都不具有移植性,為 x86 開發(fā)的程序,不可能在 Alpha,SPARC 和 ARM 等機(jī)器上運(yùn)行,C 語言程序則可以使用在任意架構(gòu)的處理器上,只要那種架構(gòu)的處理器具有對應(yīng)的 C 語言編譯器和庫,然后將 C 源代碼編譯、連接成目標(biāo)二進(jìn)制文件之后即可運(yùn)行)
UNIX做為一個開源的系統(tǒng),一個一個版本不停地迭代更新著。
在UNIX的 Version 7 Unix 推出之后,通用電氣把UNIX閉源了。
既然閉源了,那么大學(xué)也不用了。這時候有一位叫做Andrew S. Tanenbaum的教授為了教學(xué)方便,在UNIX已有的基礎(chǔ)上搞了一個小型的UNIX,稱為 MINIX,取UNIX(mini-UNIX)之意。
1991 年 林納斯(Linus) 就讀于赫爾辛基大學(xué)期間,對 Unix 產(chǎn)生濃厚興趣,嘗試著在Minix 上做一些開發(fā)工作。
林納斯(Linus)
因?yàn)镸INIX功能比較簡單,林納斯看新聞和郵件不方便,然后這個家伙就折騰出了LINUX(沒錯,跟他名字一字之差),那年,林納斯,21歲!
一開始 Linux 只適用于 386,林納斯 利用 GNU 的 bash 當(dāng)做開發(fā)環(huán)境,gcc 當(dāng)做編譯工具,編寫了 Linux 內(nèi)核,一開始 Linux 并不能兼容 Unix,后來經(jīng)過全世界的網(wǎng)友的幫助,最終能夠兼容多種硬件,終于跨了平臺。
有胡子的林納斯
所以,每一門計算機(jī)語言的發(fā)明人都是大胡子的的傳說是真的。