瘋子程序員編寫了一個操作系統,來與他的上帝溝通_風聞
游戏研究社-游戏研究社官方账号-2020-11-19 08:43
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”巧妙地底層設計,究竟是歸功天才的特里更多一些,還是瘋癲的特里更多一些。特里從混沌中醒來,留下了一座古怪的遺產,又回到了混沌之中,讓活着的西西弗斯們,再也無法忘卻死去的所羅門王。