自從1991年誕生以來,一共有兩萬多人對Linux內核做出過貢獻。
這其中有業余愛好者、黑客、研究人員、有受聘于大公司的員工...... 其中有一個人,為Linux的發展做出了杰出貢獻,最后卻成了殺人犯。
這個人就是Hans Reiser。
0 1
神童
Linux內核奉行精英管理,只有最好的代碼才能進入Linux。
漢斯寫的代碼就是最好的代碼,他是一個神童,童年時不合群,受到過同學的排斥和虐待。
13歲時因為鄙視僵化、傳統的教育體系從初中輟學。
15歲時漢斯被加州大學伯克利分校錄取,但是他沒有好好讀書,13年后才獲得了計算機學士學位。
在此期間,他發明了一個角色扮演游戲,寫了一本外星人入侵地球的科幻小說,然后就發現了一個令他超級感興趣的東西:Linux。
他覺得Linux的文件系統還不夠好,想做一個更快更高效的。
什么是文件系統呢?
有個絕妙的比喻:文件系統是磁盤的圖書管理員。
當在圖書館里放一本新書時,管理員需要找到一個空書架,放到那里,然后更新卡片目錄(相當于索引),記錄下書具體的位置,這樣以后可以找到這本書。
如果你正在做這件事的時候,突然停電了,屋里一片黑暗,會發生什么事情呢?
圖書管理員可能找到了書架,但是書還沒放上去,或者放上去了,還沒有更新目錄。
這種半成品的狀態讓整個系統亂掉了,崩潰了,你得運行一個磁盤檢查工具,等上幾個小時......
另外,隨著文件越來越多,也會出現性能問題,系統會變慢。
1993年,30歲漢斯想解決這個問題,但是這不是一個人就能搞定的,他需要一個團隊。
0 2
愛情事業雙豐收
當時蘇聯剛解體不久,經濟崩潰,生活艱難。
俄羅斯那些數學基礎極好,才華橫溢的程序員,找不到工作,賺不到錢。
漢斯看到機會,飛到莫斯科,把這些程序員組織起來,讓他們和自己一起實現ReiserFS的夢想。
漢斯其實沒有多少預算,他拼命工作,努力賺錢,換了好幾家公司,Synopsys ,Sun,甚至在某個軍事研究中心兼職。
然后把賺來的錢給這些俄羅斯程序員發工資,錢雖然也不多,但對于處于困境的俄羅斯程序員絕對是雪中送炭了。
漢斯往返于美國和俄羅斯之間,督促團隊精益求精,確保代碼干凈,算法高效。
在他的不斷努力下,ReiserFS逐漸成型了。
ReiserFS完全從頭兒設計,幾個獨門絕技:
1.日志機制(Journaling)
每個實際的數據在修改之前,相應的日志已經寫入硬盤,文件和數據的安全有了保障,解決了“圖書館放入圖書時停電的問題”。
2. 優秀的小文件處理能力
ReiserFS 使用了一種叫做 B*-樹的數據結構,可以將小文件直接存儲在 B*-樹的葉子節點中,這讓它性能卓越。在處理文件小于1k小文件時,效率可以比ext2快約10倍。
3.高效磁盤空間利用
Reiserfs對一些小文件不分配inode。而是將這些文件打包,存放在同一個磁盤分塊中,非常節省空間
4.支持海量磁盤
ReiserFS可輕松管理上百G的文件系統,支持的最大文件系統為16TB,非常適合企業級應用。
優越的性能,讓ReiserFS受到很多公司的青睞,成為了SUSU Linux默認的文件系統。
對于那些經濟非常貧困、前景黯淡的國家,年輕女性嫁給富裕的西方人(尤其是美國人)可能是一條誘人的出路。
二戰以后的菲律賓是這樣,蘇聯解體后也是如此,一個叫做“郵購新娘”(Mail-order bride)的業務蓬勃發展,婚姻中介會在紙本目錄、網絡、電視、或其他形式的廣告宣傳想出嫁的女性,而那些富有的西方人會從這些列表中挑選對象。
當然,這種關系也充滿危險和欺詐,比如結婚拿到綠卡的第二天就離婚。
1998年3月,35歲的漢斯在俄羅斯遇到了郵購新娘尼娜·莎拉諾娃 (Nina Sharanova),妮娜是個醫生,漢斯對她一見傾心,他擔保妮娜進入美國,兩人很快戀愛,結婚。
1999年9月,他們的第一個孩子出生。
此時ReiserFS獲得了開源社區的認可,愛情事業雙豐收,一切看起來都非常美滿。
0 3
危機到來
但是危機的種子也被悄悄埋下,為了ReiserFS,漢斯大部分時間都在俄羅斯度過,妮娜在美國不得不獨自照看孩子,獨自面對新的文化和新的生活。
兩人的矛盾開始爆發,妮娜有自己的夢想,想在美國成為一名醫生。漢斯認為俄羅斯女人應該呆在家里,放棄事業,照顧孩子,專注家庭。
妮娜感到非常孤獨,困在了讓人窒息的婚姻中。
2001年,漢斯成立了一家Namesys的公司,除了維護ReiserFS之外,還開始了新的文件系統Reiser4的開發。
五角大樓向Namesys提供了60萬美元的資助,支持Reiser4的開發,漢斯長期在莫斯科和他的程序員團隊一起工作,妮娜則擔任公司的CFO。
但是不久以后,公司的現金儲備在莫名其妙地迅速縮水,漢斯的父親曾是越戰時期的陸軍情報人員,他對自己的兒媳婦進行了“評估”,并警告兒子,她不誠實,懷疑她挪用資金用于不明用途,但漢斯不相信。
公司沒錢,發不出工資,妮娜找到了漢斯兒時好友肖恩,說服他借給Namesys一大筆錢。
不久之后,妮娜就和肖恩就傳出了緋聞,肖恩讓妮娜接觸到搖頭丸,“兩人似乎都在尋求越來越多的刺激,并且走得越來越遠?!?/p>
憤怒的漢斯指責肖恩是一個“有紋身,吸毒成癮”的家伙,與妮娜一起合謀Namesys的資產。而肖恩則說漢斯是自大狂,“以為自己是世界上最偉大的程序員?!?/p>
在養育兒女上,兩人也矛盾重重,漢斯讓孩子玩暴力的電子游戲,這樣孩子可以接觸現實世界,向小男孩灌輸男子漢氣質。
妮娜則認為電子游戲中的那些怪物和死亡畫面會傷害孩子,孩子需要的安全舒適的環境,而不是虛擬的戰場。
他們的兒子羅里有焦慮、噩夢等行為問題,妮娜帶著羅里去看醫生,漢斯不以為然,認為這是成長中的正?,F象,妮娜捏造病情,是為了獲得監護權。
各種矛盾累加起來,沖突在不斷升級,兩人開始分居,打官司,2005年12月,法院將完全的監護權判給妮娜,漢斯有探視權。
這個時候ReiserFS也被爆出了問題,雖然它非常適合處理小型文件,但無法擴展。它無法處理越來越常見的海量數據集和高容量工作負載。
但漢斯不在乎,他對修復ReiserFS興趣不大,他有Reiser4,這個下一代文件系統將解決所有問題。
漢斯過于專注自己的愿景:建立完美的文件系統,有序的數據王國。但它忽略了現實世界:軟件是需要維護的,社區是需要合作的。
他和Linux內核開發人員產生了嚴重的沖突,Linux之父也對Reiser4不感興趣。
一方面是失敗的婚姻,家庭的矛盾;另一方面是開源社區的爭論。
漢斯的壓力越來越大,他失去了控制。
童年時遭受虐待的陰影開始出現,他瞄準了傷害過他的人。
0 4
rm -rf 妮娜
2006年9月3號下午,妮娜帶著孩子來到漢斯媽媽的家里,漢斯也住在那里。
兩個孩子到地下室去玩兒,妮娜和漢斯在樓上爆發了一場激烈的爭吵,導火索還是兒子的病情,妮娜說她現在有完全的撫養權,要繼續帶孩子去看心理醫生,漢斯勃然大怒,用拳頭打她的臉,用胳膊鎖住了她的喉嚨。
從那以后,妮娜便失蹤了,再也沒有人看到她。
警方對漢斯實施了監控,終于發現了漢斯失蹤了的本田思域轎車,里邊的血跡和妮娜的DNA匹配。
漢斯被逮捕,被判一級謀殺罪。
但案件有個巨大的缺口,警方一致沒有找到妮娜的尸體,這就像文件系統中,一個關鍵的數據——Nina的位置——丟失了。
2008年7月,漢斯與當局達成認罪協議,透漏了尸體的埋藏地點,以換取減刑。
Linux社區對于漢斯的罪行感到震驚和難以置信,ReiserFS也因為漢斯而蒙羞。
2022年,ReiserFS被Linux棄用,并計劃于2025年刪除。
漢斯認為他的Reiser4會徹底改變Linux,現在看來,永遠不可能了。
2023年,在加州監獄的漢斯發出了一封長信,信中談到了ReiserFS的發展歷程,自己犯下的錯誤。
最后他說到:
在監獄里我學會了“通過溝通來解決問題”,并且相信自己可以通過溝通來解決問題,我希望在我結婚前或者加入LKML(Linux內核列表)之前就學會這些能力,我也希望有一天,在小學能教這些東西。
全文完,覺得不錯的話點個贊或者在看吧!
近期爆文:
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.