[導(dǎo)讀]作者|OneFlow社區(qū)來源?|OneFlow根據(jù)計(jì)算機(jī)領(lǐng)域的摩爾定律,如果在18個(gè)月內(nèi)都還沒有發(fā)布產(chǎn)品,幾乎意味著項(xiàng)目要流產(chǎn)了。WindowsNT操作系統(tǒng)的最初計(jì)劃也是18個(gè)月,但現(xiàn)在,他們已經(jīng)整整研發(fā)三年了。?好在,這個(gè)大制作已經(jīng)進(jìn)入測試和Bug修復(fù)階段,只差臨門一腳。還有不...
作者 | OneFlow社區(qū)
來源 | OneFlow根據(jù)計(jì)算機(jī)領(lǐng)域的摩爾定律,如果在18個(gè)月內(nèi)都還沒有發(fā)布產(chǎn)品,幾乎意味著項(xiàng)目要流產(chǎn)了。Windows NT操作系統(tǒng)的最初計(jì)劃也是18個(gè)月,但現(xiàn)在,他們已經(jīng)整整研發(fā)三年了。
好在,這個(gè)大制作已經(jīng)進(jìn)入測試和Bug修復(fù)階段,只差臨門一腳。還有不到兩個(gè)月,他們將最終交付這個(gè)計(jì)算機(jī)系統(tǒng)領(lǐng)域具有劃時(shí)代意義的操作系統(tǒng)內(nèi)核?!坝涀∵@美好的舊日時(shí)光吧”,大衛(wèi)·卡特勒(David Cutler)希望工程師們再鼓一把勁。 如果這是美好時(shí)光,Windows NT的締造者們會(huì)覺得有點(diǎn)不幸。
經(jīng)歷一次次延期發(fā)布,所有人身心俱疲,單調(diào)和乏味充斥著日常工作,而卡特勒這個(gè)暴躁工頭還在催趕工期,如果有工程師在家扎小人詛咒卡特勒,也不會(huì)讓人感到意外。畢竟,在這個(gè)1993年的6月,為了解壓和泄憤,他們就隨手完成了一次集體性反動(dòng)惡作劇。 一天,辦公室上方掉下了一條百葉窗的繩子,落在了走廊上形成了一個(gè)圓環(huán)。不久這個(gè)環(huán)出現(xiàn)了一些硬幣,隨后又有人放入了一支玫瑰花,一些賭博用的籌碼,奇怪的是,沒有人清理掉這些東西。 很快,圓環(huán)里多了一個(gè)裝糖果的盒子,還加入了一張卡特勒的滑稽大頭照。兩根蠟燭也隨后出現(xiàn)在圓環(huán)外面,盡管沒有點(diǎn)燃,但氣氛似乎恰到好處,給卡特勒照片營造了一種詭異的肅穆感。 沒錯(cuò),那是獻(xiàn)給卡特勒的祭壇。根據(jù)《觀止:微軟創(chuàng)建NT和未來的奪命狂奔》一書的描述,這些東西好幾周都沒有人移動(dòng),直到一天,卡特勒停下來問身邊的同事那些鬼東西像什么,知道真相的他憤怒地走開了,也許是假裝憤怒。 大多數(shù)工程師跟著他過著一維的生活,工作就是他們的全部。對下屬,他更多展現(xiàn)的是粗魯、嚴(yán)厲、蠻橫、好斗、無情的暴君形象,甚至在招聘女秘書時(shí)會(huì)問怎么看F打頭的那個(gè)詞。然而,很少有人會(huì)質(zhì)疑他對待工作的態(tài)度,專注、嚴(yán)謹(jǐn)、激情十足、不拘一格,具有天生領(lǐng)導(dǎo)力,而且有女性工程師看出他有時(shí)暴怒的背后只是虛張聲勢。 這些混雜的印象讓很多人對他產(chǎn)生了一種微妙的情感,怨恨中帶有絲絲仰慕,用當(dāng)代比較時(shí)髦的詞來形容,有些人說不準(zhǔn)就會(huì)討伐這個(gè)中年男是在“PUA”了。
有些牛人就是這樣,厲害到能讓別人忍受他身上的種種缺陷,更不用說卡特勒這種被譽(yù)為engineer's engineer(“公雞中的戰(zhàn)斗雞”)式的人物。 戈登·貝爾和比爾·蓋茨是他職業(yè)生涯中最重要的兩個(gè)伯樂。大學(xué)畢業(yè)后的卡特勒先在杜邦公司自學(xué)編程,而后入職DEC,1970年代后期在時(shí)任DEC副總裁的貝爾支持下,開創(chuàng)性地開發(fā)了VMS操作系統(tǒng),貝爾稱他是世界上最好的操作系統(tǒng)編寫者。 1988年,在蓋茨的招募下,他來到微軟,歷時(shí)5年花費(fèi)1.5億美元,領(lǐng)導(dǎo)200多位工程師開發(fā)出有430萬行代碼的Windows NT。其技術(shù)革命性嚴(yán)重沖擊了Novell的Netware和UNIX操作系統(tǒng)的地位,為微軟帶來不可估量的商業(yè)價(jià)值,影響著超過20億人的計(jì)算體驗(yàn)。也因此,他成為迄今為止唯一一位享有微軟Senior Technical Fellow頭銜的工程師,待遇比肩集團(tuán)VP。微軟前CEO鮑爾默更是直言,沒有他,就沒有今天的微軟。 不過,相比對這個(gè)世界產(chǎn)生的影響,他在外界的知名度卻不如同級別的Linus Torvalds,Jeff Dean那樣響亮。但他對此毫不在意,只專注于高質(zhì)量地完成工作,奉行行勝于言。他會(huì)強(qiáng)勢向你展示一種讓可能性變成現(xiàn)實(shí)的決心:我就是喜歡做這件事,我就要做成這件事。 Windows NT就是卡特勒決心要實(shí)現(xiàn)的那件事。
1
“雙非”工程師的逆襲
不同于大多數(shù)有著顯赫經(jīng)歷的牛人,卡特勒既非計(jì)算機(jī)科班出身,也非名校畢業(yè)生。在奧利韋特學(xué)院(Olivet College)上大學(xué)時(shí),他拿的是數(shù)學(xué)學(xué)士,對電腦一竅不通,畢業(yè)也并不想從事編程這種“似乎非常缺乏創(chuàng)造力且枯燥的工作”。
后來,他進(jìn)入杜邦公司從事材料測試,但工作任務(wù)無可避免地需要編程來建模,卡特勒只好去IBM開辦的學(xué)校去學(xué)習(xí)編程,并將他寫的代碼運(yùn)行在DEC的小型機(jī)上,假以時(shí)日,竟然不小心成了DEC計(jì)算機(jī)專家。 這段經(jīng)歷讓他在1971年順利進(jìn)入DEC公司編寫軟件。在那里,他為DEC的PDP-11計(jì)算機(jī)構(gòu)建實(shí)時(shí)操作系統(tǒng)RSX-11M時(shí)發(fā)揮了關(guān)鍵作用,通過結(jié)合總體概念和設(shè)計(jì)原則,利用匯編語言在非常有限的內(nèi)存空間內(nèi)實(shí)現(xiàn)了多項(xiàng)系統(tǒng)功能,比如樹型文件系統(tǒng)、交換應(yīng)用程序、實(shí)時(shí)調(diào)度和一整套開發(fā)工具等。過硬的技術(shù)和積極工作贏得了贊譽(yù),盡管他的暴脾氣沒給任何人留下好印象。 還好有貴人識才。有DEC技術(shù)靈魂之稱的貝爾發(fā)現(xiàn)卡特勒是個(gè)一流工程師,還讓他主導(dǎo)為新的產(chǎn)品線Vax編寫VMS操作系統(tǒng),這個(gè)系統(tǒng)需要滿足向后兼容已有應(yīng)用,同時(shí)要能在不同配置的Vax計(jì)算機(jī)上運(yùn)行。巨大壓力之下,他花兩年時(shí)間完成了這一任務(wù),35歲的卡特勒一戰(zhàn)成名。
(左為戈登·貝爾,右為大衛(wèi)·卡特勒) 當(dāng)打之年的卡特勒有著遠(yuǎn)大抱負(fù)。但DEC日益增長的官僚氣息讓他無法忍受,并威脅要離開公司,貝爾挽留了他。1985年,DEC給他約200人的軟硬件工程師來設(shè)計(jì)一個(gè)全新的計(jì)算機(jī)系列Prism,其操作系統(tǒng)叫Mica。 起初,這個(gè)團(tuán)隊(duì)幾乎像一個(gè)獨(dú)立的公司那樣運(yùn)作??珊镁安婚L,期間貝爾離開后沒人罩著,DEC其他部門對卡特勒團(tuán)隊(duì)的業(yè)務(wù)下手了。 1988年6月,DEC總部告訴他項(xiàng)目完全取消。心灰意冷的卡特勒準(zhǔn)備離開。幾年過后,當(dāng)一個(gè)類Mica的操作系統(tǒng)問世之際,DEC管理層會(huì)為當(dāng)初放掉這員猛將而付出“代價(jià)”。 彼時(shí),計(jì)算機(jī)產(chǎn)業(yè)正處在激情澎湃的技術(shù)革新期,新的軟硬件創(chuàng)業(yè)公司層出不窮,如OneFlow此前寫過的思維機(jī)器和Multiflow公司。 正如日中天的卻是微軟,DOS系統(tǒng)的成功讓蓋茨邁向美國首富,但他卻嗅到了面臨的危機(jī)。微軟的現(xiàn)金牛DOS可能面臨潛在威脅:一是RISC芯片的出現(xiàn)可能取代英特爾芯片,DOS卻與英特爾的芯片高度綁定;二是許多公司開始銷售裝有UNIX的電腦。要應(yīng)對這一難題,他想要微軟開發(fā)一個(gè)可移植的操作系統(tǒng)運(yùn)行在任一RISC芯片上,成為個(gè)人計(jì)算的通行標(biāo)準(zhǔn),這個(gè)新系統(tǒng)叫Windows New Technology,也就是Windows NT。 卡特勒要離開DEC的消息傳到了蓋茨那里,相約見面后,這個(gè)看起來很自負(fù)的工程師從上到下噴了一頓微軟的產(chǎn)品,但后者認(rèn)定,他將是領(lǐng)導(dǎo)新操作系統(tǒng)團(tuán)隊(duì)的最佳領(lǐng)導(dǎo)人選。大把股票、自主選擇研發(fā)團(tuán)隊(duì)和開發(fā)新操作系統(tǒng)的機(jī)會(huì),以及蓋茨表現(xiàn)出的誠懇態(tài)度最終將卡特勒這個(gè)狂人收入麾下,入職后還順便招募了不少他在DEC時(shí)的死忠。
2
躊躇滿志卻狀況百出
初來乍到,卡特勒團(tuán)隊(duì)與“微軟人”一度互相看不上,他把團(tuán)隊(duì)搞成了前DEC工程師的小圈子。
為了讓新人融入微軟體系,蓋茨將足智多謀的骨干工程師Steve Wood派到了這個(gè)團(tuán)隊(duì)。Wood曾接手被微軟最大的客戶IBM大力支持的OS/2系統(tǒng),這是個(gè)16位操作系統(tǒng),只能在英特爾硬件上運(yùn)行且不可移植。他對卡特勒沒有盲目崇拜,但發(fā)現(xiàn)與其他團(tuán)隊(duì)成員倒是“臭味相投”。 經(jīng)過幾個(gè)月的持續(xù)招募,在1989年4月,一個(gè)較為完整的NT團(tuán)隊(duì)就緒,帶著失意、憤懣的復(fù)仇情緒,卡特勒準(zhǔn)備大干一場。 NT操作系統(tǒng)的目標(biāo)既具挑戰(zhàn)性又雄心勃勃:
-
可移植且可用于多個(gè)目標(biāo)(MIPS、Alpha、PowerPc、x64)
-
可以在多個(gè)操作系統(tǒng)(POSIX (UNIX)、OS/2 和 Windows 32)上運(yùn)行
-
安全性和 C2 認(rèn)證(受信任的計(jì)算機(jī)認(rèn)證)
-
在具有多個(gè)處理器的系統(tǒng)上運(yùn)行,并且能同時(shí)運(yùn)行多個(gè)程序,這在當(dāng)時(shí)PC市場上獨(dú)有
高可靠性的要求使得卡特勒將NT分成了兩個(gè)部分:一個(gè)是內(nèi)核,不與程序發(fā)生關(guān)聯(lián),不會(huì)被它運(yùn)行失敗時(shí)所影響,另一個(gè)是操作系統(tǒng)的圖形化部分。這個(gè)模式的最大問題是會(huì)犧牲系統(tǒng)運(yùn)行的效率。蓋茨也表達(dá)了質(zhì)疑,但卡特勒堅(jiān)稱,他們會(huì)以高超的編程技巧彌補(bǔ)性能不足。 根據(jù)日程表,他們打算在1990年7月寫完NT的所有代碼,并在1991年3月30日交出最終版本。很快,那些預(yù)料之中和始料未及的挑戰(zhàn)會(huì)讓他一次次食言。
首先是技術(shù)上的難題。一方面,支持和測試NT系統(tǒng)的機(jī)器還沒制造出來,在英特爾的i860芯片上運(yùn)行NT的代碼,效果太差,而切換到卡特勒看好的MIPS芯片要走很多回頭路,后來他們切換到英特爾的386系列芯片,但還是必須忍受硬件的毛病。另一方面,缺乏編程工具拖慢了系統(tǒng)研發(fā)的進(jìn)展,打造工具也分散了團(tuán)隊(duì)的部分力量。 其次是團(tuán)隊(duì)磨合不暢??ㄌ乩罩幌雽W⑿F(tuán)隊(duì)去開發(fā)NT內(nèi)核,不想負(fù)責(zé)管理與之相關(guān)的圖形、網(wǎng)絡(luò)、測試小組。他們各自工作風(fēng)格不一,卡特勒甚至把測試小組當(dāng)做累贅,他從不依靠測試小組,認(rèn)為測試工程師只會(huì)讓程序看起來更糟糕。這種偏見源自他的個(gè)人編程風(fēng)格,在寫代碼前,他會(huì)先在頭腦里形成代碼圖,然后高精確度地寫下極少有Bug的代碼,每一行代碼都有注釋。 同時(shí),他還要很不情愿地根據(jù)項(xiàng)目經(jīng)理帶來的客戶意見來修改代碼和功能。 1990年春天,圖形可視化部分也遭遇嚴(yán)重困境,尤其采用C 語言使得程序容量超過計(jì)算機(jī)內(nèi)存,而MIPS芯片的發(fā)布也延遲了,蓋茨還把NT向386芯片移植的工作視為項(xiàng)目最高優(yōu)先級,但是沒有完成。 更糟糕的是,不少人懷疑模型NT的客戶-服務(wù)模型會(huì)降低運(yùn)行應(yīng)用的性能,包括蓋茨也因?yàn)楹ε聽奚嗨俣?,始終沒有認(rèn)可這種模型。但卡特勒依然堅(jiān)信他們會(huì)解決這個(gè)問題,在系統(tǒng)的可靠性和速度之間做出選擇時(shí),他最不能容忍的是不穩(wěn)定。 至此,要在7月寫完所有代碼的計(jì)劃不可能實(shí)現(xiàn)。卡特勒討厭不能如期兌現(xiàn)承諾,種種問題讓他很崩潰,但現(xiàn)在沒法撂挑子了,除了測試部門,網(wǎng)絡(luò)、圖形、兼容性等團(tuán)隊(duì)都交由其管理。他第一次感覺到,自己的事業(yè)與NT的命運(yùn)已經(jīng)聯(lián)系在一起。 3
截止日期節(jié)節(jié)敗退
1990年6月,Windows 3.0的發(fā)布讓整個(gè)軟件行業(yè)大變樣。他們開始思考如何將NT運(yùn)行到Windows上。但最大的矛盾在于,OS/2和Windows控制系統(tǒng)PC的方法互不兼容,這讓客戶和工程師都變得難以適從。對微軟來說,他們不可能主要去支持OS/2,但也不想與最大客戶IBM產(chǎn)生決裂。 蓋茨給IBM灌了兩斤迷魂湯。他讓后者相信,NT分別支持Windows和DOS系統(tǒng)將帶來諸多好處,盡管這與他建立統(tǒng)一軟件標(biāo)準(zhǔn)的說法有矛盾。背地里,微軟只讓來自以色列的一小隊(duì)人馬去設(shè)計(jì)NT的OS/2變種,而卡特勒團(tuán)隊(duì)卻向Windows發(fā)展成計(jì)算機(jī)標(biāo)準(zhǔn)這一真正的目標(biāo)前進(jìn)。 對卡特勒個(gè)人來說,此舉不僅讓他擺脫了IBM,也將實(shí)現(xiàn)替代UNIX的期望。他早前就以蔑視UNIX而聞名,認(rèn)為這是一幫博士設(shè)計(jì)出來的垃圾。那時(shí)的UNIX缺乏對系統(tǒng)資源配額的支持(例如,任何進(jìn)程都可能通過分配過多內(nèi)存或 fork() 循環(huán)導(dǎo)致系統(tǒng)崩潰),還缺乏VMS風(fēng)格的進(jìn)程權(quán)限、微內(nèi)核架構(gòu),以及缺乏對多個(gè)子系統(tǒng)的支持。 半年后,IBM才發(fā)現(xiàn)到被微軟擺了一道,還是后者主動(dòng)披露的。1991年1月,在微軟舉辦的應(yīng)用軟件開發(fā)者大會(huì)上,IBM工程師幻想著微軟NT團(tuán)隊(duì)會(huì)介紹支持OS/2的內(nèi)容,但直到演講快結(jié)束都有提到。IBM工程師當(dāng)場質(zhì)疑,NT工程師挑明要放棄支持OS/2,這導(dǎo)致IBM解除了與微軟的合作關(guān)系。
隨后新的研發(fā)進(jìn)度表出爐,卡特勒承諾會(huì)在1991年10月31日,在萬圣節(jié)前NT代碼將會(huì)完成。而測試和修Bug的工作則會(huì)推遲到1992年的第二季度,這也是把NT交付給客戶的時(shí)間。 NT逐漸成型,卡特勒希望團(tuán)隊(duì)都能嘗試使用NT系統(tǒng),這樣就可以檢查NT各個(gè)部分存在的缺陷和瑕疵,并對某些類型的程序缺陷進(jìn)行改進(jìn)。他們將轉(zhuǎn)換到NT系統(tǒng)的計(jì)算機(jī)上分為三個(gè)階段:純內(nèi)核NT、圖形以及網(wǎng)絡(luò)階段。 真正評判代碼優(yōu)劣的方法就是運(yùn)行代碼。隨著更多工程師使用NT,他們發(fā)現(xiàn),要在NT上完成一件工作非常困難,不得不花費(fèi)數(shù)小時(shí)甚至數(shù)天時(shí)間進(jìn)行修復(fù)Bug,大大影響了項(xiàng)目的進(jìn)度。直到1991年5月底,沒有Windows圖形的NT版本運(yùn)行得很快,可依然是個(gè)很差的替代品。 1991年8月,他們需要在三個(gè)月內(nèi)基本完成NT的程序以趕上截止日期,但現(xiàn)實(shí)是,NT的代碼最多只能完成80%。這時(shí)NT團(tuán)隊(duì)要考慮的是系統(tǒng)的安全性問題,主要是防止信息篡改。他們大大低估了這個(gè)工作的難度。再一次,卡特勒放棄了在10月完成NT的計(jì)劃,那時(shí)即使是最好的版本都有很多缺陷,而且性能上也有局限,盡管此前的測試表明Windows應(yīng)用在NT上運(yùn)行只比在DOS上慢比較小的百分點(diǎn)。 他給的最新截止日期是1992年4月。沒有人比他更想看到NT早日發(fā)布。 除了統(tǒng)一NT的兩個(gè)版本進(jìn)展緩慢,讓他更頭疼的是不斷新增的新功能,比如容錯(cuò)性,直到1991年圣誕節(jié)前夕都沒有完成,文件系統(tǒng)也遲遲沒有定型。甚至到1991年底,測試都沒有開始。兼容DOS和Windows應(yīng)用的進(jìn)展也落后了。而圖形小組由于使用C 而不是更容易的C語言降低了效率。 也不全是要延期的壞消息??ㄌ乩沼脧?qiáng)硬手段幫助團(tuán)隊(duì)度過了難關(guān),使得NT的MIPS-英特爾版本在圣誕節(jié)前發(fā)布。在開發(fā)早期階段,NT就達(dá)到了一個(gè)在其他系統(tǒng)上很難達(dá)到的水平,在他眼里這是一個(gè)重大成就。 項(xiàng)目進(jìn)度安排很嚴(yán)謹(jǐn),但研發(fā)過程中的項(xiàng)目工作量依然充滿未知。1992年2月,這是研發(fā)NT的第三年了,卡特勒的計(jì)劃一次次被NT的復(fù)雜性作弄。 節(jié)節(jié)敗退的日程表讓他很不安??ㄌ乩找恢闭J(rèn)為,操作系統(tǒng)的開發(fā)最好是盡早發(fā)布第一個(gè)版本,更多功能將來可以再添加,但Windows NT開發(fā)到現(xiàn)在已不只是按照他的個(gè)人想法可轉(zhuǎn)移。 這次,他把公開測試版推遲到了7月1日。 焦頭爛額之際,卡特勒得到了一個(gè)意外喜訊。他的老東家DEC同意成為購買NT的第一個(gè)計(jì)算機(jī)制造商。在他看來,被DEC取消的Mica項(xiàng)目和NT大體是等價(jià)的,實(shí)際上,NT的許多元素都有他在DEC做系統(tǒng)時(shí)的技術(shù)映射,比如內(nèi)存管理、進(jìn)程和調(diào)度與VMS非常相似,而DEC現(xiàn)在卻花大價(jià)錢買下原本可以免費(fèi)擁有的東西,這讓他體會(huì)到一絲復(fù)仇打臉的快感。 4
混亂終將變得有序
隨后卡特勒要求團(tuán)隊(duì)快馬加鞭,讓工程師注意細(xì)節(jié),為了激勵(lì)他們的斗志,有時(shí)還親自上陣負(fù)責(zé)寫模塊。 終于,1992年6月29日,他們發(fā)布了一個(gè)WindowsNT Beta版本,主要改善了系統(tǒng)的質(zhì)量和可靠性。接下來,他們需要花幾個(gè)月時(shí)間完成未完的功能、修復(fù)Bug、提高性能并盡可能減小NT,最終版本將在年底發(fā)布。 太大、太慢是一直困擾他們的關(guān)鍵問題。有人調(diào)侃,NT是一頭吃內(nèi)存的飛豬,在性能方面是一只蝸牛,這兩個(gè)指標(biāo)離蓋茨在三年前設(shè)定的目標(biāo)還很遠(yuǎn)。 卡特勒承認(rèn)NT太慢,但現(xiàn)在差不多達(dá)到他的期望了,因?yàn)閷π阅艿母倪M(jìn)沒有止境。軟件歷史充分證明,從IBM的360到不同風(fēng)格的UNIX,再到微軟的Windows,幾乎所有劃時(shí)代的系統(tǒng)都是在不成熟的狀態(tài)就發(fā)布出來,然后逐步演進(jìn)并贏得更廣泛的認(rèn)可。 內(nèi)存方面,蓋茨的公開目標(biāo)是將NT的最低內(nèi)存要求設(shè)定為8MB,但現(xiàn)在至少需要16MB才能滿足典型用戶的應(yīng)用需求,而當(dāng)時(shí)大多數(shù)個(gè)人電腦裝備的是4MB內(nèi)存,而增加內(nèi)存容量的話要花更多成本。 至此,蓋茨只能放棄了在8MB內(nèi)存的PC運(yùn)行NT的打算,但在性能的問題上他不會(huì)讓步,當(dāng)時(shí)操作系統(tǒng)業(yè)務(wù)大約占微軟所有銷售額的一半,如果這一點(diǎn)不能滿足客戶的要求,它們就可能轉(zhuǎn)向IBM的OS/2。 一次次的延期發(fā)布挫傷了團(tuán)隊(duì)的士氣。但催促連續(xù)不斷,而且沒有明確的結(jié)束期限。當(dāng)大多數(shù)人認(rèn)為這個(gè)操作系統(tǒng)快結(jié)束了,其實(shí)還有幾個(gè)月的乏味測試,以及尚未完成的功能和性能改進(jìn)等著他們。每天大約有2000個(gè)Bug需要解決,卡特勒關(guān)注Bug數(shù)量,就像關(guān)注著戰(zhàn)場上的傷亡數(shù)字。 他制定的殘酷進(jìn)度讓很多人難以忍受,尤其最后的死亡行軍期間,很多團(tuán)隊(duì)成員掙扎在工作和個(gè)人生活這條線上,讓他們跟情人、朋友、孩子的關(guān)系變得很緊張??ㄌ乩斩位橐銎茰?,基本沒有家庭生活上的牽絆,也一直待在戰(zhàn)壕里。NT團(tuán)隊(duì)此刻的拼勁后來也激勵(lì)了一位來自遙遠(yuǎn)東方的深度學(xué)習(xí)框架創(chuàng)業(yè)者,在《觀止》的第187頁空白處,他寫下了一段批注,“看看創(chuàng)造奇跡的人”。
距離創(chuàng)造奇跡還有一步之遙,只是卡特勒再?zèng)]敢承諾系統(tǒng)發(fā)布的準(zhǔn)確時(shí)間。為了提升團(tuán)隊(duì)士氣,他在全員郵件中重復(fù)著他的口號,“記住這美好的舊日時(shí)光”。 1993年6月21日,NT的發(fā)布終于進(jìn)入倒計(jì)時(shí),為了慶祝項(xiàng)目即將生產(chǎn),工程師們?yōu)樗I(xiàn)上一個(gè)祭壇。一個(gè)月后的7月26日,Windows NT終于發(fā)到工廠生產(chǎn)了。 獨(dú)自坐在辦公室的卡特勒難掩激動(dòng)心情,他發(fā)布了一封全員郵件,開頭寫著:NT發(fā)布了,再說一遍,NT發(fā)布了——一連摁了5個(gè)感嘆號。
5
那美好的舊日時(shí)光
卡特勒似乎是那個(gè)注定為Windows NT而生的人,它的成功占據(jù)天時(shí)地利人和。 微軟迫切需要一個(gè)可移植的操作系統(tǒng)來幫助其贏得未來,它擁有打造這個(gè)系統(tǒng)所具備的足夠資金和人才資源,但只差卡特勒這樣的技術(shù)領(lǐng)導(dǎo)者,同樣不容忽視的是,蓋茨和鮑爾默給了他本人最大程度的信任和支持,在微軟王國里封給了卡特勒一片擁有高度決策權(quán)的自由領(lǐng)地。
遠(yuǎn)大目標(biāo)的呼召和自由的管理空間對卡特勒推進(jìn)NT至關(guān)重要。在這里他完全施展了他獨(dú)特的領(lǐng)導(dǎo)和技術(shù)才能。NT團(tuán)隊(duì)沒有固定的匯報(bào)層級,他本人拒絕過度管理,討厭復(fù)雜的規(guī)章制度,盡可能不插手下屬的工作,相信最突出的才干會(huì)在人數(shù)較少的小團(tuán)隊(duì)中顯現(xiàn)。他在分配工作時(shí)留有一定靈活性,喜歡讓每個(gè)人扮演不同角色,可以主動(dòng)解決沒有明確職責(zé)歸屬的事,而不是畫地為牢。 卡特勒像是同時(shí)兼電影導(dǎo)演、演員和場務(wù)于一身,他證明自己可以把混亂的系統(tǒng)變得有序,不管它有多么難控制。
作為導(dǎo)演,他依賴于召集到的所有人的才能,同時(shí)將自己的思想和偏好施加到下屬身上。如果在方向問題出現(xiàn)各種創(chuàng)意和分歧,最后由他拍板如何去做。他的挑戰(zhàn)在于如何讓這些有才華的人遵循同一份進(jìn)度安排,服從同一份通知。同時(shí),作為演員和場務(wù),他又能時(shí)刻親自上陣,為系統(tǒng)的每一條程序把脈,值得一提的是,NT的177個(gè).c文件出自卡特勒,比NT首席架構(gòu)師Mark Lucovsky還要多一倍。在長期無序的技術(shù)架構(gòu)和組織結(jié)構(gòu)演變中,他是運(yùn)籌帷幄的那個(gè)人。 可以想象,在研發(fā)Windows NT的5年里,如果不是由卡特勒這樣執(zhí)著、強(qiáng)悍的猛人把持,要帶領(lǐng)250名精英工程師在心力交瘁的上千個(gè)日夜里不斷推進(jìn)絕非易事,換個(gè)人領(lǐng)導(dǎo)NT團(tuán)隊(duì)可能會(huì)是另一番光景。 當(dāng)然,NT的成功離不開每一位工程師付出的艱苦努力。而該項(xiàng)目后來的巨大成功也證明,他們的付出是值得的。一直到2001年Windows XP發(fā)布,NT已成為所有Windows產(chǎn)品的內(nèi)核系統(tǒng),包括2021年最新發(fā)布的Windows 11,而它卻是一個(gè)30年前設(shè)計(jì)的系統(tǒng),老年的卡特勒會(huì)自豪地告訴你,那全部都基于NT。 這離不開NT內(nèi)核的技術(shù)創(chuàng)新。從NT發(fā)布的第一天起,其諸多特性從根本上保證很多方面優(yōu)于UNIX,以及后來的Linux:
-
日志文件系統(tǒng)NTFS,具有抗崩潰能力和性能。Linux在NT發(fā)布6年后開始才具備類似的日志功能集
-
含有第三代擴(kuò)展文件系統(tǒng)ext3。
-
服務(wù)。在UNIX里,“守護(hù)進(jìn)程(daemons)”是常規(guī)進(jìn)程。要啟動(dòng)一個(gè)守護(hù)進(jìn)程,你必須知道它的位置、語法和依賴關(guān)系。而NT允許用戶集中管理服務(wù)進(jìn)程并自動(dòng)管理它們的依賴項(xiàng)。GNOME和KDE在2000年有了類似NT的服務(wù)概念,幾年后被DBus標(biāo)準(zhǔn)化。MacOS和SystemD則分別于2005、2011年才有。
-
注冊表,用于存儲和檢索應(yīng)用程序配置數(shù)據(jù)的統(tǒng)一模型。UNIX在 /etc中有任意格式的文本文件,但在實(shí)踐中效果不佳,導(dǎo)致產(chǎn)生版本控制/隔離問題。
-
線程和進(jìn)程有很大區(qū)別。UNIX將進(jìn)程作為執(zhí)行和地址空間的單位,它的一些實(shí)現(xiàn)支持線程(或LWP,輕量級進(jìn)程),但在POSIX線程出現(xiàn)前,它們的創(chuàng)建成本更高且非標(biāo)準(zhǔn)。
-
NT的模塊化設(shè)備驅(qū)動(dòng)架構(gòu)允許在系統(tǒng)初始化后加載設(shè)備驅(qū)動(dòng),而當(dāng)時(shí)的UNIX通常將驅(qū)動(dòng)編譯到內(nèi)核中。NT還支持PnP和“設(shè)備樹(device trees)”,所以可以正確計(jì)算驅(qū)動(dòng)初始化的依賴項(xiàng)。2003年,Linux才具備“統(tǒng)一設(shè)備模型”能力。
-
一個(gè) O(1) 調(diào)度程序。直到2003年Linux才具備。
-
NT的內(nèi)核是“可搶占的”,有更好的系統(tǒng)響應(yīng)能力和并行處理性能。在OS X Leopard前,OS X的搶占性(粗粒度鎖定)非常有限。Linux在2011年才擺脫了粗加鎖方式。
1996年,卡特勒停止管理整個(gè)NT項(xiàng)目,但繼續(xù)領(lǐng)導(dǎo)內(nèi)核開發(fā)直到2006年。自2000年以來,他參與開發(fā)了每一個(gè)Windows版本的核心技術(shù),包括第一個(gè)完整32位的Windows 版本,同時(shí)對AMD64平臺的Windows XP、Server 2003系統(tǒng)做出重要貢獻(xiàn)。后來隨著計(jì)算機(jī)行業(yè)從服務(wù)器轉(zhuǎn)向云服務(wù),他在2008年擔(dān)任微軟Azure云計(jì)算平臺的主要開發(fā)者。2012年,他參與開發(fā)了Xbox主機(jī)操作系統(tǒng)部分。 
在幾十年職業(yè)生涯中,他在架構(gòu)設(shè)計(jì)、編碼、注釋等方面表現(xiàn)出的嚴(yán)謹(jǐn)風(fēng)范,深刻影響了微軟技術(shù)團(tuán)隊(duì)的工程文化,這也是他影響工程師的永久性遺產(chǎn)。
如今,這位出生于1942年,現(xiàn)已是79歲的高齡工程師依然還會(huì)去辦公室寫代碼。他喜歡完成自己的代碼,然后看著它正常工作。休息間隙,這個(gè)倔老頭兒或許還會(huì)憶起開發(fā)NT的那美好的舊日時(shí)光。
題圖源自微軟官網(wǎng)、維基百科
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
近日,一個(gè)存在于Windows Mark of the Web (MotW)中的零日漏洞被發(fā)現(xiàn),并正在被攻擊者積極利用。但有趣的是,在微軟官方還沒有對該漏洞做出修復(fù)之前,第三方平臺0patch就提供了該漏洞的修復(fù)補(bǔ)丁。據(jù)...
關(guān)鍵字:
PATCH
Windows
微軟
APP
一般從事互聯(lián)網(wǎng)工作,尤其是軟件類崗位,通常加班現(xiàn)象都是比較嚴(yán)重的。那么,做硬件的就沒有加班了嗎?
關(guān)鍵字:
互聯(lián)網(wǎng)
程序員
工程師
麥格納(MAGNA)正在進(jìn)行一項(xiàng)1.2億美元的投資,在印度班加羅爾建立和運(yùn)營一座全新工程中心,旨在為出行電動(dòng)化提供支持。該設(shè)施占地約2.2萬平方米,預(yù)計(jì)將于2023年第一季度開業(yè),屆時(shí)該中心將聘請眾多經(jīng)驗(yàn)豐富的工程師和技...
關(guān)鍵字:
工程師
仿真
電動(dòng)汽車
軟件
深圳2022年9月26日 /美通社/ -- 9月24日,知行「科技X商業(yè)」研習(xí)院在深圳舉行了2022級科創(chuàng)大本營開學(xué)典禮。參與典禮發(fā)言環(huán)節(jié)的嘉賓包括XbotPark聯(lián)合創(chuàng)始人李澤湘、深圳天使投資引導(dǎo)基金董事長姚小雄以及往...
關(guān)鍵字:
創(chuàng)始人
半導(dǎo)體
工程師
TI
(全球TMT2022年9月22日訊)Granite River Labs(簡稱"GRL")日前宣布,其位于中國東莞的實(shí)驗(yàn)室已獲英特爾公司(Intel? Corporation)授權(quán),可為Windows系統(tǒng)平臺開展Thu...
關(guān)鍵字:
Windows
THUNDERBOLT
ST
OS
GRL東莞實(shí)驗(yàn)室將與上海和臺北實(shí)驗(yàn)室一同,提供Windows Host認(rèn)證服務(wù) 加利福尼亞州圣克拉拉市2022年9月22日 /美通社/ -- 高速信號和充電技術(shù)測...
關(guān)鍵字:
Windows
THUNDERBOLT
USB
OS
荷蘭ASML公司 (全稱: Advanced Semiconductor Material Lithography,該全稱已經(jīng)不作為公司標(biāo)識使用,公司的注冊標(biāo)識為ASML Holding N.V),中文名稱為阿斯麥爾(中...
關(guān)鍵字:
ASML
工程師
芯片
(全球TMT2022年9月20日訊)9月19日,華為全聯(lián)接大會(huì)2022在泰國開幕,以"創(chuàng)新無限,一切皆服務(wù)"為主題的華為云峰會(huì)成功舉辦,華為云亞太地區(qū)部總裁曾興云、華為云首席產(chǎn)品官方國偉以及多位客戶伙伴發(fā)表主旨演講。會(huì)...
關(guān)鍵字:
并聯(lián)
華為云
數(shù)字化
工程師
(全球TMT2022年9月16日訊)今日要點(diǎn):騰訊游戲海外投資額達(dá)千億元;阿斯麥今年將在臺灣招募1100名工程師;榮耀X40發(fā)布售價(jià)1499元起;華為云未來3年將支持10000家初創(chuàng)企業(yè)。 騰訊游戲海外投...
關(guān)鍵字:
騰訊
華為云
榮耀
工程師
以前都是等著,家里電器壞了趕緊拆解一下,這回實(shí)在是等不及了,找個(gè)便宜的下手吧。這個(gè)遙控器用了好多年,感覺還是不錯(cuò),起碼電池挺禁用的。古人云,三人行必有我?guī)熝?。那么對于每一個(gè)設(shè)備,也都有我們可以學(xué)習(xí)的地方。
關(guān)鍵字:
嵌入式
工程師
福建莆田2022年9月1日 /美通社/ -- 8月30日,武大靖攜手央視網(wǎng)共同走進(jìn)三棵樹醉美園區(qū),與央視網(wǎng)主持人常婷、黃鶴,一起開啟“尋綠之旅”,從綠色理念、綠色園區(qū)、綠色產(chǎn)品、綠色生產(chǎn)、綠色服務(wù),看三棵樹用綠色涂料涂刷...
關(guān)鍵字:
智能化
工程師
調(diào)試
研發(fā)中心
據(jù)悉,蘋果公司前工程師張小浪(Xiaolang Zhang)在加州圣何塞聯(lián)邦法院就跳槽小鵬汽車前涉嫌竊取蘋果汽車部門商業(yè)秘密案進(jìn)行了刑事指控并認(rèn)罪。之前,張小浪被蘋果指控在跳槽小鵬汽車前竊取了蘋果的自動(dòng)駕駛部門的商業(yè)機(jī)密...
關(guān)鍵字:
小鵬汽車
蘋果
工程師
自動(dòng)駕駛
北京2022年8月16日 /美通社/ -- "一只南美洲亞馬遜河流域熱帶雨林中的蝴蝶,偶爾扇動(dòng)幾下翅膀,可以在兩周以后引起美國得克薩斯州的一場龍卷風(fēng)。" -- 這便是著名的"蝴蝶效...
關(guān)鍵字:
噪音
讀寫
工程師
音頻
谷歌為Pixel用戶(Pixel 4、4a、5、5a和6系列等)送出驚喜,Android 13首個(gè)穩(wěn)定版正式推送。
關(guān)鍵字:
谷歌
Android13
Windows
(全球TMT2022年8月12日訊)2022年7月29日下午,美通社在北京舉辦聚焦B2B行業(yè)的媒體開放日活動(dòng)。本次活動(dòng)走進(jìn)了位于北京西城區(qū)的機(jī)工弗戈傳媒集團(tuán),來自能源、機(jī)械、汽車制造、化工、電子等行業(yè)的20多位企業(yè)和媒...
關(guān)鍵字:
大眾
汽車制造業(yè)
AI
工程師
據(jù)報(bào)道,在三星即將推出新款折疊手機(jī)之際,消息稱谷歌也將加入折疊手機(jī)市場,由鴻海代工,也讓鴻海的智能手機(jī)制造延伸至折疊手機(jī)領(lǐng)域。
關(guān)鍵字:
谷歌
Android
Windows
折疊手機(jī)
(全球TMT2022年8月1日訊)在2022年度分析師峰會(huì)上,SaaS軟件提供商Zoho宣布用戶量突破8000萬大關(guān),并實(shí)現(xiàn)了38%的年增長率。在過去的兩年內(nèi),Zoho開設(shè)了59個(gè)辦事處,涉及加拿大、拉丁美洲、中東、非...
關(guān)鍵字:
工程師
AUTOMOTIVE
智能電
MT
北京2022年7月26日 /美通社/ -- 近日,國務(wù)院第三次全國土壤普查領(lǐng)導(dǎo)小組辦公室確定公布了第二批共363家檢測實(shí)驗(yàn)室名單,其中SGS通標(biāo)標(biāo)準(zhǔn)技術(shù)服務(wù)有限公司大連分公司成功入選,能力覆蓋第三次全國土壤普查...
關(guān)鍵字:
NAS
BSP
工程師
廣州2022年7月20日 /美通社/ -- 廣州李錦記大廈憑借專業(yè)化的硬件設(shè)施、運(yùn)營管理以及環(huán)??沙掷m(xù)發(fā)展理念,獲得由美國綠色建筑委員會(huì)頒發(fā)的能源與環(huán)境設(shè)計(jì)先鋒(簡稱,LEED)銀獎(jiǎng)。7月18日,LEED獎(jiǎng)項(xiàng)的...
關(guān)鍵字:
可持續(xù)發(fā)展
BSP
工程師
照明控制
ARM架構(gòu)的處理器在移動(dòng)平臺所向披靡,但在高性能計(jì)算市場上還是被AMD及Intel的x86架構(gòu)主導(dǎo),現(xiàn)在挑戰(zhàn)x86的越來越多了,谷歌今天正式推出了基于ARM處理器的云服務(wù)Tau T2A,而且8核vCPU、32GB內(nèi)存的免...
關(guān)鍵字:
谷歌
Android
Windows
ARM