日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

24K 內(nèi)存上誕生的操作系統(tǒng),是如何改變計算機世界的?

 新用戶0118F7lQ 2021-04-28

1969 年,美國新澤西州,貝爾實驗室的閣樓上,一臺 24K 內(nèi)存的電腦里,一個操作系統(tǒng)孕育而生,它的名字叫 UNIX 。隨后的半個世紀(jì),UNIX 帶動了軟件行業(yè)的創(chuàng)新,甚至改變了計算機技術(shù)的發(fā)展軌跡,成為計算機歷史上的一座豐碑。

UNIX 是如何誕生的?貝爾實驗室為何培養(yǎng)了那么多圖靈獎得主?UNIX 操作系統(tǒng)為何重要?中國操作系統(tǒng)的未來會如何?

為此,《CSDN 悅讀時間》欄目邀請到了 CSDN 創(chuàng)始人&董事長、極客幫創(chuàng)投創(chuàng)始合伙人蔣濤,飛漫軟件總經(jīng)理、HybridOS 操作系統(tǒng)創(chuàng)始人魏永明,CSDN 副總裁、前微軟研發(fā)總監(jiān)鄒欣,《UNIX 傳奇》譯者、IT 產(chǎn)品與運營專家韓磊,圍繞最新發(fā)布的《UNIX 傳奇》一書,揭秘操作系統(tǒng)鼻祖 UNIX 的發(fā)展史,探尋傳奇之路的可借鑒之處。

圖片

圖片

初識 UNIX 系統(tǒng)

何時開啟了 UNIX 之路,其中遇到過哪些有趣的故事?

蔣濤:我最早學(xué)習(xí) UNIX 是在 80 年代末,那時進(jìn)機房得穿白大褂,主要目的是防靜電。1991 年,我進(jìn)入銀行工作后發(fā)現(xiàn),銀行用的也是 UNIX 系統(tǒng),所以我還寫過 UNIX shell 的程序。

不久在 PC 時代來臨之際,我轉(zhuǎn)用了 DOS 系統(tǒng),DOS 比 UNIX 簡單,是一個降維版的操作系統(tǒng),由命令行驅(qū)動,而很多命令來自 UNIX。DOS 之后是 Windows、Mac OS 等主流操作系統(tǒng),所以說 UNIX 是所有現(xiàn)代操作系統(tǒng)的鼻祖。

魏永明:我第一次接觸 UNIX 是在 1996 年,為了運行 Oracle 數(shù)據(jù)庫要開發(fā)一個集成系統(tǒng),使用的就是 UNIX 。還記得 UNIX 里有一個 VI 文本編輯器,當(dāng)時覺得它不如 Windows 的文本編輯器,不太好用。

后來在了解 UNIX 和 Windows 的歷史后,才發(fā)現(xiàn)它們的發(fā)展路徑和我的認(rèn)知路徑正好相反:我先知道 Windows 和 DOS 系統(tǒng),再進(jìn)一步了解 UNIX,導(dǎo)致對計算機技術(shù)發(fā)展演進(jìn)的認(rèn)知是缺失的。

了解 UNIX,使用 UINX ,會對 Windows、Ubuntu、Linux 等操作系統(tǒng)有更清晰的認(rèn)知。

鄒欣:我接觸 UNIX 也是在 80 年代末,當(dāng)時北大計算機系的機房裝了 UNIX,但因為是分布式、多用戶的系統(tǒng),使用起來特別慢。畢業(yè)之后進(jìn)入北大工作,負(fù)責(zé) UNIX 系統(tǒng)的漢化工作,還裝了 SCO 的 UNIX(OpenServer)。

當(dāng)時在機房工作,鬧了許多笑話。同事們接觸 DOS 比較多,下班之后習(xí)慣性地關(guān)機,第二天發(fā)現(xiàn)文件系統(tǒng)不斷報錯,不知道原因,以為是 UNIX 不行了。后來才知道關(guān)機執(zhí)行 shut down 之前,要先把文件系統(tǒng)關(guān)掉。

還有一次,我把 temp 臨時目錄里的文件都刪了,旁邊同事的項目內(nèi)容就全部丟失了,他還納悶自己的 VI 怎么沒了,原來是他把工作內(nèi)容都放在 temp 目錄下。

除此之外,大家還會經(jīng)常犯錯,譬如把機器弄死機。當(dāng)時有一家銷售 SCO UNIX 的公司,在北大的勺園賓館租了一個房間,因為距離我比較近,機器死機之后我就經(jīng)常去找他們借 UNIX 的磁帶重裝系統(tǒng)。在一次次的死機和重裝系統(tǒng)后,我也越來越了解 UNIX 系統(tǒng)。

現(xiàn)在許多人學(xué)新技術(shù),連安裝系統(tǒng)都不會,要么是版本不對,要么是 64 位和 32 位分不清楚,直接「從入門到放棄」。所以學(xué)習(xí)的時候要從最基本的做起,不怕犯錯誤,大不了就是重裝系統(tǒng)。大家都是從裝機開始,一步步成長起來的,現(xiàn)在回頭看覺得枯燥,當(dāng)時是樂在其中,很有意思的。

圖片

API 與專利,開源與創(chuàng)新

不久前,Oracle 與 Google 的 10 年專利案判決落地,法院判定操作系統(tǒng)的 API 接口不構(gòu)成專利,您認(rèn)為這個判決結(jié)果會帶來什么影響?

蔣濤:近幾年,Oracle 因?qū)@麊栴}已被很多人視為“bad company”。Oracle 的專利制度已經(jīng)落后時代。過去信息不發(fā)達(dá),專利是保護(hù)創(chuàng)新的一種方式,但如今卻成為了大公司“訛詐”小公司的重要武器,變成大公司之間的訴訟游戲。

2009 年,微軟起訴 Linux 侵犯了其操作系統(tǒng)處理文件存儲的專利,一幫支持 Linux 的公司就把自家的部分專利捐給開源組織 OIN(Open Innovation Network),揚言也要起訴微軟,微軟才作罷。

商業(yè)公司過度利用專利保護(hù)是反時代的,開源才是真正的潮流,未來開源會吞噬軟件,而 UNIX 就是開源的鼻祖。

因為接口問題,Oracle 和 Google 打了快 10 年的官司,拖了很長時間。法官在判決書上寫道,設(shè)立專利是為了讓人類社會的創(chuàng)新有更好的發(fā)展。把接口開放,有利于程序員更好創(chuàng)新,否則就得重新開發(fā)一套新接口,過去依賴這些接口的工作都要重新再做一遍,十分浪費資源。

UNIX 的源代碼被免費捐贈,但開源后的商業(yè)化并不成功。反觀 Linux 的開源,獲得了巨大的商業(yè)成功,這也說明專利制度遲早要重新修正

現(xiàn)在微軟也加入了 OIN,把部分專利捐給了 OIN 組織,還收購了 GitHub,強烈擁抱開源,在這方面是 180 度大轉(zhuǎn)彎。

魏永明:Oracle 習(xí)慣用官司的方式征戰(zhàn)獲利,當(dāng)年 Oracle 收購 SUN 公司沒有從 Java 賺到錢,但 Google 的 Android 利用 Java 賺錢了,所以 Oracle 就去找 Google 的麻煩,意欲分一杯羹。

編程的專利訴訟主要涉及兩個方面,一個是編程語言,一個是 API 接口。編程語言實質(zhì)上已有定論,無論是 C 語言也好,Java 也好,都無法申請專利,或者做版權(quán)保護(hù)。因為編程語言使用者越多,生態(tài)越繁榮,申請專利后別人就沒法使用了。

API 接口在這十多年里是有爭議的。在 Oracle 和 Google 訴訟的過程中,判決傾向也是反復(fù)變化,一波三折。業(yè)界、法律界對這件事有不同的意見,法官們的投票結(jié)果也是 6:2 ,并非全票支持。歐美國家采取判例法,有了這個判例,之后類似的案件就會遵循這個原則。

有一些應(yīng)用的編程接口是有價值的,該怎么保護(hù)是一個很復(fù)雜的問題,究竟是用專利的方式保護(hù),還是用 Copyright 版權(quán)的方式保護(hù),遠(yuǎn)沒有定論。這是一個法律問題,也是一個軟件道德問題

鄒欣:在這次判例以前,也有過類似的爭論。當(dāng)年,圍繞圖形用戶界面是不是專利這個話題,就已經(jīng)討論過一次了。

和 API 接口類似的,還有一個叫設(shè)計模式。我們提到「工廠模式」,就能立刻知道這是一個單列,如果不能用「工廠模式」,就必須另起一個名字,日常的溝通交流反而不方便。API 也一樣,當(dāng)一個請求是 Authentication(身份驗證),大家會知道它有典型的返回,知道這個模式可以承接。

以汽車為例,大家學(xué)車的時候知道左腳是離合,右腳有剎車和油門,如果把這個當(dāng)成專利,其它車不能這么設(shè)計,不同的車要用不同的腳操作,那還怎么開車呢?每輛車都必須不一樣,這對于汽車行業(yè)也是一個巨大的內(nèi)耗,沒有必要這么做。

同樣,編程序的時候,大家也不希望每個程序的模式必須不一樣,這是違反自然規(guī)律和發(fā)展規(guī)律的。如果在內(nèi)部實現(xiàn)時把創(chuàng)新隱藏在模式里面,模式可以自由的使用和傳播,模式內(nèi)部實現(xiàn)創(chuàng)新。這樣區(qū)別之后,就能有利于創(chuàng)新,也有利于社會的發(fā)展。

圖片

操作系統(tǒng)與 35 歲危機

除了 UNIX ,很多操作系統(tǒng)都是經(jīng)驗豐富的老程序員開發(fā)出來的,為什么他們沒有經(jīng)歷 35 歲危機?當(dāng)前國內(nèi)做操作系統(tǒng)會和之前、和國外有什么不同?

蔣濤:前段時間,Python 創(chuàng)造者 Guido Van Rossum 發(fā)推特宣布加入微軟,Anders Hejlsberg 也在評論中表示期待和他一起工作,這兩個人加起來 100 多歲了。

開發(fā)系統(tǒng)和架構(gòu),需要有經(jīng)驗的程序員。Ken Thompson 發(fā)明 UNIX 的時候算比較年輕,但那時候計算機也剛出來沒多久,所以他在計算機領(lǐng)域也算老前輩了。

所以說「家有一老,如有一寶」,老將更適合做有價值的事情,而不是適應(yīng)新的潮流。世界上的編程語言有幾百種,為什么還要發(fā)明新語言?為什么還要造一個新的輪子?是因為每一種新語言都有它想要解決的問題。

我們應(yīng)該培養(yǎng)更多鉆研底層技術(shù)的程序員,讓有經(jīng)驗的程序員,來做這些更有價值和意義的事情。現(xiàn)在國內(nèi)的大公司慢慢地意識到這一點,都在做一些這樣的工作,往架構(gòu)層和比較深的層次去做。

操作系統(tǒng)和語言這樣的大事,不可能一次就成功,100 種新語言里可能只有 1 個成功。學(xué)術(shù)界和工程屆也是這樣,要把科技創(chuàng)新的機制建立起來,利用老同志們的經(jīng)驗,也讓年輕人能夠自由發(fā)揮

魏永明:現(xiàn)在的操作系統(tǒng)和七十年代的 UNIX ,有著巨大的不同。操作系統(tǒng)的概念,慢慢在外延

在 UNIX 時代,核心 Core 加上一套工具就組成了一個操作系統(tǒng)。Windows 和 Mac OS 后,操作系統(tǒng)有了圖形界面,后來還有 Android 和 iOS 這樣的移動操作系統(tǒng)。

一個操作系統(tǒng)之所以區(qū)別于另外一個操作系統(tǒng),是因為兩者在編程語言和 API 上有區(qū)別,然而這兩點都無法用專利版權(quán)保護(hù)。

曾經(jīng)移動端的智能操作系統(tǒng)有三個:Windows Mobile、Android、iOS。Android 的編程語言是 Java,iOS 之前是 Objective-C,現(xiàn)在是 Swift,它們的語言不一樣,API 也不一樣,所以是兩個完全不同的操作系統(tǒng)。

中國要發(fā)展自己的操作系統(tǒng),就得從編程語言這樣基礎(chǔ)的東西做起,操作系統(tǒng)和編程語言其實是同根同源的。

圖片

技術(shù)管理的平衡之道

IT 公司的人才管理,即要給員工自由,鼓勵創(chuàng)新;也要保證制度規(guī)范,穩(wěn)定產(chǎn)出;該如何平衡兩者?

鄒欣:從 UNIX 誕生背后的貝爾實驗室來看,它的管理有一點很重要,就是沒有「微觀管理」,這也是成功的研究院的特性。當(dāng)年我在微軟研究院時,領(lǐng)導(dǎo)就說,成功的訣竅就是招最優(yōu)秀的人過來,然后把他們分散開,Get Out Of The Way。

優(yōu)秀的人知道自己該干什么,給他自由讓他放手做就可以了,當(dāng)然同時也要給他錢,給他一定的資源。

管理中有些 KPI 是至上而下的,有些從市場來,有些從友商競爭中來,還有一些是員工自發(fā)形成的。如果研究院里有一些優(yōu)秀的人,他們發(fā)自內(nèi)心想把工作做好,就會激發(fā)出好的環(huán)境,自然而然大家就會做出好成績。

還有一個與貝爾實驗室齊名,甚至更有名的 Xerox PARC(施樂帕克研究中心),也是離公司和管理層很遠(yuǎn)。Xerox PARC 每周五下午有一個講座,讓一個人來介紹自己正在做的東西,下面坐著一群有名的科學(xué)家,可以自由挑戰(zhàn)。

這個活動會激發(fā)每個人做出優(yōu)秀的工作,如果只做平庸的事情,搬運別人的勞動成果,就沒法上去講。

許多人把 R(Research)& D (Development)分開,認(rèn)為研究和生產(chǎn)是兩個方向。比如畫畫,有人畫出一幅蒙娜麗莎這樣的名畫,不能批評他用了 5 張草稿紙,太浪費,得控制在 3 張草稿紙內(nèi)才是好的,這是不對的。

研究要允許失敗和探索,但公司的商業(yè)目標(biāo)也要實現(xiàn),技術(shù)管理者必須有智慧分清楚這兩者。

蔣濤:管理上選擇自由還是嚴(yán)格,跟當(dāng)下的科技背景有關(guān)。UNIX 誕生在創(chuàng)造的時代,目標(biāo)是探索未知,探索未知要給予較大的自由度,因為不知道會發(fā)展成什么樣子。

有一本書叫《觀止》(《Show stopper》),它的價值非常高,記錄了 Windows NT 的誕生過程。如果把《UNIX 傳奇》和《觀止》這兩本書對比看就能發(fā)現(xiàn),UNIX 是在輕松的環(huán)境自由創(chuàng)造,但 Windows NT 不是。

針對 Windows NT,當(dāng)時比爾·蓋茨目標(biāo)很明確,就是要做一套工業(yè)級的圖形化操作系統(tǒng),能兼容各種系統(tǒng)和設(shè)備。因此微軟用了 5 年時間和幾億美金,不僅挖來了彼時號稱是硅谷最牛的 Kerner 開發(fā)者大衛(wèi)·卡特勒,還用嚴(yán)格的 KPI 管理 200 多名技術(shù)人員,最終才取得成功。

所以說,在科技的創(chuàng)新、應(yīng)用和競爭階段,管理的方式都是不同的?,F(xiàn)在中國就面臨著多種維度的共存,既有創(chuàng)新領(lǐng)域,也有應(yīng)用領(lǐng)域,還有競爭已經(jīng)很激烈的領(lǐng)域。

大家讀完《UNIX 傳奇》這本書,就會知道,怎么在高自由度的環(huán)境創(chuàng)新?哪些領(lǐng)域應(yīng)該鼓勵自由?哪些地方要比競爭對手跑更快,提高市場占有率。

圖片

了解技術(shù)演變,學(xué)會在造輪子的基礎(chǔ)上創(chuàng)新

回看 UNIX 的發(fā)展史,通讀《UNIX 傳奇》這本書后,您有什么樣的感想?

鄒欣:UNIX 是經(jīng)歷了失敗后的兩個人,在一個快廢棄的機器上創(chuàng)造出來的。這說明即使環(huán)境艱苦,只要讓優(yōu)秀的設(shè)計人員來做,擺脫外界干擾,一樣能做好。

UNIX 非常簡潔,有一套自己的設(shè)計理念,這非常了不起。一件事情不需要做太多太復(fù)雜,而是通過積木式的組合,或者管道線的方式把問題解決。

舉個例子,UNIX 中大部分的文件 block 都在 4k 以下,那如何用 awk、sed 或其它 shell 命令統(tǒng)計出當(dāng)前 UNIX 系統(tǒng)所有文件大小的分布情況?這個問題發(fā)在了 CSDN 的問答社區(qū),有一個同學(xué)寫出來一個非常短小精悍的命令,只用三行就把這個問題解決了。

圖片

當(dāng)年在《中國計算機報》上,經(jīng)常有這種用一行程序解決一個重大問題的題目,更多有趣的例子,大家可以去《UNIX 傳奇》里找,里面有專門講 UNIX 的哲學(xué)理念,一些小工具組合運用的方法。當(dāng)你真正把問題解決,而且是用很簡短的命令解決的,就會感受到美感和爽感。

魏永明:UNIX 的誕生,并非一蹴而就,它之前經(jīng)歷過許多失敗,開發(fā)的過程中也遇到了各種困難,但最后還是成功了,當(dāng)時的一些概念也保留到了今天的操作系統(tǒng)。

許多開發(fā)者并不了解操作系統(tǒng),因為它太底層了。做 Java 或 JavaScript 不會考慮這些東西,但如果再往下看的時候,會發(fā)現(xiàn)最早的技術(shù),發(fā)展到現(xiàn)在仍然是編程的重要思想。

國內(nèi)做基礎(chǔ)軟件沒有這樣的歷史條件,現(xiàn)在大部分的技術(shù)軟件,都是從海外尤其是美國基礎(chǔ)計算機科學(xué)家和工程師發(fā)展出來的,國內(nèi)的開發(fā)者只不過是在上面添磚加瓦而已。

在這種情況下,中國的技術(shù)軟件要突破,造輪子是有必要的。多做一些基礎(chǔ)性的東西,不停的造輪子,這次是方的,下一次會越來越圓,也越來越牛。

蔣濤:現(xiàn)在的中國在計算機應(yīng)用層有很多開發(fā)者,但懂操作系統(tǒng)的專業(yè)人員還很少,需要一批鉆研系統(tǒng)的人。越了解技術(shù)演變的歷史,對系統(tǒng)的理解就會更深刻

過去在國內(nèi)做系統(tǒng)基礎(chǔ)軟件很困難,CSDN 在 2004 年曾收購 ChinaUNIX,想推 UNIX,但是很困難?,F(xiàn)在時機到了,我們進(jìn)入一個新技術(shù)范式的時代,類似于當(dāng)年的 PC DIY ,一切智能硬件都可以加上 IOT OS ,這個 OS 可以重新改造。

《UNIX 傳奇》這本書在中國應(yīng)該給兩種人看:

一種是想做程序員的人;看完后他會發(fā)現(xiàn)做一個系統(tǒng)很酷,因為是在創(chuàng)造一個平臺,別人都要按照他制定好的規(guī)則往前走,這種感覺非常美妙。

曾經(jīng)有個年輕的作者寫了本書叫《自己寫個操作系統(tǒng)》,Ken Thompson 趁老婆帶著孩子回娘家,用三周時間就把 UNIX 操作系統(tǒng)寫出來了,寫操作系統(tǒng)沒想象的那么難。

第二種是負(fù)責(zé)科研的部門領(lǐng)導(dǎo);怎么做出中國的貝爾實驗室?要不要成立中國的國家半導(dǎo)體實驗室,搞自己的基礎(chǔ)創(chuàng)新?

為什么貝爾實驗室在當(dāng)時的條件下,能創(chuàng)造出這么多的技術(shù)?怎么創(chuàng)造一個好的環(huán)境,讓這些聰明的人,在沒有 KPI 的考核下,做出有價值有意義的事情?中國非常需要這樣的環(huán)境,所以這本書在中國出版的價值比在美國大。

圖片

趁年輕,多挑戰(zhàn) 

給當(dāng)代的開發(fā)者、《UNIX 傳奇》中文版的讀者的一句話?

蔣濤:看《UNIX 傳奇》,學(xué)習(xí)開源系統(tǒng),進(jìn)入開源社區(qū)。

魏永明:了解計算機科學(xué)的早期發(fā)展歷史,在這個基礎(chǔ)上,走好自己的路。

鄒欣:年輕的時候,多做有挑戰(zhàn)的事,如果每次都想安穩(wěn),會錯失很多機會。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多