首頁 > 娛樂

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

由 遊研社 發表于 娛樂2021-07-01

簡介確實有不少閒得發慌的程式設計師研究了特里的“神聖C語言”,甚至編寫了一些簡單的程式,但是特里還是覺得,沒有人像他期望的那樣用“神廟OS”來和上帝交流——當然,特里自己也始終沒有說清楚,正常人應該怎麼和“神廟OS”裡的隨機數上帝交流

三個智慧神廟怎麼過

2013年,特里·A·戴維斯釋出了他自己編寫的作業系統“神廟OS”(Temple OS)的最終版本。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

“神廟OS”看起來像是一個玩笑。一啟動,主介面就是一張劍與天平的畫,下面寫著:“神聖智慧,公共領域,64位,狀態完美的作業系統。”

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

這個“狀態完美”的系統,介面無比簡陋:後臺程式碼和記憶體地址的片段赤裸裸地塞在螢幕的邊邊角角,程式的圖示看起來像是小朋友在畫圖軟體上滑鼠勾出的簡筆畫。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

特里在系統裡留下了很多註釋和旁白,但是大部分都語無倫次,就像是午夜醉漢的呢喃一般,很多時候,看了註釋,反而讓人更迷惑了。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

1

去年有款蒸汽波風的遊戲叫《催眠空間浪子》,主介面惡搞了90年代的作業系統和網際網路。就是這麼一款純粹為了娛樂和惡搞創作的假“作業系統”,看起來也比“神廟OS”像樣得多。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

然而“神廟OS”卻並不只是一個玩笑,也不是一個偽裝成作業系統的遊戲。這是一款真正的,完整的,獨立的作業系統。它有一套自己核心,還有簡單的驅動,可以支援一些非常基礎的硬體,比如老式IDE硬碟、光碟機和PS2介面的鍵盤滑鼠。如果有合適的硬體,就可以直接安裝並執行這個作業系統。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

特里演示如何使用作業系統

“神廟OS”還預裝了不少軟體,從文字編輯器,到繪圖軟體,再到程式編譯器。甚至作業系統本身的外殼(shell)還自帶計算器功能,隨便找個地方輸入算式,系統就會自動返回結果。

“神廟OS”裡有各種各樣的遊戲:從模擬飛行、象棋,再到模擬經營和賽車,幾乎你能想到的遊戲型別,都能夠在這個系統裡找到。有好幾款都是3D渲染出來的,畫面表現還挺像回事。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

對於許多程式設計師來說,編寫一個作業系統,或者發明一套程式語言,兩件事完成一件,就是了不起的成就。當然,在今天,網上有許多現成的程式碼資源可以借用,做到這兩件事情沒有當年那麼困難了,但是依然需要花費大量的時間和精力。

“神廟OS”的作者特里不但做到了這兩件事情,而且是以最艱難、最原始的方式。他先是基於C語言,自己發明了一套新的程式語言和語法邏輯,然後用這套語言,從頭開始編寫了一個64位開源作業系統,然後還寫了各種各樣的程式和遊戲。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

令人震撼的是,在開發“神廟OS”期間,直到2018年去世,特里一直飽受精神分裂症的折磨。這也是為什麼“神廟OS”裡面充斥著各種凌亂的設計和令人費解的囈語。

這導致特里的程式設計思路也和一般程式設計師完全不同。在很長一段時間裡,沒有人能弄懂特里在做什麼。特里曾經在論壇上和別人討論過自己遇到的各種困難,卻遭到別的程式設計師的嘲笑,說他的系統根本不可能跑起來。特里無法直接照抄現成的程式碼,也無法和任何人討論自己遇到的問題,最終只能自己獨自去尋找答案。獨自程式設計的難度,現代程式設計師已經很難體會了。

特里從2003年開始開發“神廟OS”,2005年第一個版本“耶穌OS”上線,再到2013年最後一個版本釋出,特里在這個系統上,花費了整整十年時間。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

2

在這十年裡,一個“瘋子”,完成了許多頭腦清醒的程式設計師想都不敢想的壯舉。

從小,特里就有很高的程式設計天賦,自己編寫過許多軟體和遊戲。在他還是個中學生的時候,他曾經應家人的要求,寫了一個體感聯動遊戲,用動感單車操縱遊戲裡的角色,猛踩踏板就能躲避鬼魂的追擊。他還發明瞭一個自動鋸木機,可以按照程式設定把木板切成各種形狀。但是特里不太滿意機器的效果,最後把整臺機器都扔掉了。

1992年,特里在亞利桑那州立大學取得了計算機工程學士學位,並在兩年後拿到了電子工程碩士學位。之後他在票務巨頭Ticketmaster任職程式設計師。按照這個道路下去,他原本將會成為高收入中產階級的一員,結婚生子,度過平淡而又幸福的一生。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

然而一切在1996戛然而止。這一年,特里被診斷出雙相障礙,隨後又發展成了精神分裂症,並且產生了各種妄想症狀。特里覺得外星人在冥冥中統治了地球,而CIA是他們的幫兇。而他自己由於窺探到了機密,陷入了無孔不入的監控中,只有上帝才能拯救自己和人類。隨後的幾年裡,他一直在各個精神病院中輾轉。

“我那時挺瘋癲的,”特里後來回憶,“當然,我現在也很瘋癲,但是這不是同一種瘋癲。”

2003年,特里的狀況有所好轉,便開始了“神廟OS”的開發程序。特里說,這一切都是因為上帝的啟示:他將建造一座供奉上帝的神廟,就像舊約中所羅門的神廟一樣。而當2。0時代到來的時候,他也將像所羅門一樣加冕為王。不過特里並不覺得自己信仰上帝,他覺得自己是個無神論者,只是剛好和上帝有一些交流而已。

特里“按照上帝的指示”對C語言進行了改造,發明了屬於他自己的“神聖C語言”(Holy C,諧音Holy See,隱含教皇、聖座的意思),用來編寫“神廟OS”。

“神廟OS”就是特里為“上帝”所建造的神廟,而特里所說的 “上帝”,則在神廟裡降下了代言人——一個用聖經全文作為種子的隨機數生成器(RNG)。

特里的“神廟OS”充滿了各種奇怪的設定。比如OS不支援外掛GPU,因為特里覺得圖形處理應該是透明的,公開的,不應該藏在GPU的黑盒裡。而神廟OS只支援用光碟機安裝,不支援USB,因為特里覺得USB是CIA發明的,目的是透過授權費偷偷向民眾收稅。

特里總是宣稱自己是“世界上最聰明的程式設計師”。如果有人不同意他的觀點,特里就會怒噴對方是“尼哥”,“娘炮”。這讓許多人覺得特里妄自尊大,難以理喻。

但特里的程式設計天分又著實讓人難以忽視。在一般的作業系統裡面,檔案會分成文字、圖片等等不同的型別。但是在“神廟OS”裡,所有的檔案都是同一種檔案。文字、圖片、3D模型和超連結全部都可以混合放在一個檔案裡面,直接指向原始碼。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

通常,在Windows這樣的系統上執行的程式,要先用原始碼編譯一遍。而 “神廟OS”的程式檔案直接以原始碼的形式存在。當程式要執行的時候,有一個即時(JIT)編譯器會直接把原始碼轉化成程式執行。

這些另闢蹊徑的做法,讓“神廟OS”非常便於開發和除錯,也加快了系統的執行速度,整個系統非常輕量,只有幾十MB。12萬行程式碼,沒有任何現代的版本控制,全靠一個人手動寫完,居然能夠順利跑起來,各種功能也大體運轉正常,既證明了特里的才華,也說明他的程式設計方式確實有不少可取之處。

著名程式設計師和科技記者理查德·米頓曾經仔細研究過“神廟OS”的開發環境,並感嘆:現在的程式設計師已經習慣把事情搞得太複雜,沒有人想過,一切還可以這麼簡單直接。

3

由於“神廟OS”太過特別,開發週期又很長,特里在程式設計師圈子裡一直有點小名氣。他在網上很活躍,很喜歡發表自己的觀點和言論,當然也少不了“不太正確”的那些。有次,一家科技網站採訪了特里,但是文章釋出以後,因為特里總在下面和其他網友互噴,網站不得不把他的賬號禁掉了。

在社交網路和直播興起之後,特里也開始直播他的“神廟OS”開發程序,向觀眾展示他編寫的作業系統裡的各種功能。

“上帝喜歡大象,我也喜歡大象。所以我用插值向量創作了這個非常寫實的大象。如果你不想要只是寫實,你也可以做到比現實更好。你問‘比現實更好是什麼意思?’,那你要看看我的這個藍眼睛的大象。”

影片載入中。。。

他最得意的作品是一款叫《埃及之後》的模擬經營遊戲。他覺得這款遊戲真正體現瞭如何用“神廟OS”來和上帝進行交流。玩家扮演摩西,負責照顧一群信眾的生活,以給信眾餵食喂水,也可以到山上去祈求神諭。特里還展示了一下游戲裡的法庭系統。

“一個婦女犯下了罪——我選擇懲罰她。一個孩子犯下了罪——我選擇狠狠懲罰他。”

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

在“神廟OS”完工之後,特里很高興自己能夠完成十年前發下的宏願,但又似乎因為失去了人生目標而有點失落。他給自己加冕,叫自己“特里王”,並說,他已經搭建好了地基,只等待別人來分享這份喜悅。

“不要光顧著玩遊戲,你們應該在神廟OS上多寫些遊戲,然後分享給別人!”特里一有機會就呼籲別人多為“神廟OS”的生態做出貢獻。確實有不少閒得發慌的程式設計師研究了特里的“神聖C語言”,甚至編寫了一些簡單的程式,但是特里還是覺得,沒有人像他期望的那樣用“神廟OS”來和上帝交流——當然,特里自己也始終沒有說清楚,正常人應該怎麼和“神廟OS”裡的隨機數上帝交流。

有那麼幾年,特里就一直呆在父母家裡,上網直播,和網友互動。特里頗有一些“粉絲”,有些人是發自內心欣賞他的天才,被他和精神疾病鬥爭的故事所打動。但是在社交媒體的時代,更多的粉絲並不在乎“神廟OS”背後的故事,他們只是拿特里當做消遣,慫恿他發表更多充滿了F打頭、B打頭和N打頭詞彙的言論。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

特里的父母一直希望他能夠按時服用治療精神病的藥物。但是特里覺得這樣會傷害到他的創造力,一直不願意接受治療。最終,特里的父母下了最後通牒:他要麼乖乖吃藥,就要被送去精神病院。

特里不想吃藥,也不想去精神病院。於是他選擇離家出走,開始了一段流浪生涯。在幾個月裡,他先從中西部城市菲尼克斯,一路遊蕩到了加利福尼亞,北上到了波特蘭,最後又到了俄勒岡州的戴爾斯。

一路上,他依然不斷上傳影片。一些粉絲依然和他保持著聯絡,並且用各種方式接濟他。Terry接受了粉絲贈送的食物和生活用品,但是卻拒絕了粉絲們為他提供的住處。

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

這場漫長的遊蕩,讓Terry的精神狀態越來越差。他的鬍子越長越長,衣服也變得破破爛爛。他依然沉浸在自己當代所羅門王的幻境中,但旁人只覺得他邋里邋遢,神經兮兮,滿嘴瘋話。在Terry去世的前一天,他想要到圖書館去上會網,卻因為衣衫襤褸被趕了出來。

Terry大受打擊,上傳了他人生中最後一個影片。

“這個城市很純潔,很乾淨,我這樣骯髒的人一定是把他們嚇壞了,才會把我趕走。我挺喜歡這個圖書館的,不過他們真的估計氣得夠嗆。”

瘋子程式設計師編寫了一個作業系統,來與他的上帝溝通

Terry咳嗽了一下,對著鏡頭擠出一個笑容。

“當國王的感覺真棒。但在別人眼裡,也許我只是一個走來走去的怪人而已吧。”

第二天,特里在鐵道上游蕩的時候被火車撞擊身亡。火車司機堅信他是臥軌自殺,但有目擊證人的證詞說,特里在被撞擊前一刻轉了身,似乎剛剛意識到火車正從他身後開來。

特里曾經試圖用各種比喻來幫助別人瞭解他的生活。精神分裂症讓他難以分清自己生活中的真實和虛幻。別人對他說的話,都彷彿摩爾斯密碼,他知道自己逐漸陷入瘋狂,對此卻無能為力。

“什麼才是真實?我不知道。我有的時候看見鳥在盯著我的電腦螢幕,我會想,‘這隻傻鳥,根本不知道它在看什麼’。但是傻鳥不會明白自己是一隻傻鳥,也不會為此驚慌失措。傻鳥也沒有什麼選擇,只能這樣活下去。雖然它不知道這個世界到底是怎麼運轉的,但它總能學會,哪些是危險的,哪些是安全的,然後就這樣活下去。我就是這麼活著的。”

沒人知道,假如特里沒有患上精神病,他會取得什麼樣的成就。也沒人知道,“神廟OS”巧妙地底層設計,究竟是歸功天才的特里更多一些,還是瘋癲的特里更多一些。特里從混沌中醒來,留下了一座古怪的遺產,又回到了混沌之中,讓活著的西西弗斯們,再也無法忘卻死去的所羅門王。

Tags:特里os神廟作業系統程式設計師