走近Linux開發者:Linus Torvalds

  30 Linux Kernel Developers in 30 Weeks是Linux.com 網站在2012年開始的一系列專題文章,該專題訪問了三十位 Linux Kernel 的開發者,其中包含了Linus Torvalds和 Greg Kroah-Hartman 等廣爲人知的人士。這些人士所受訪的問題包括:負責的項目、任職的公司、居住地、喜愛的工具甚至是工做時會聽的音樂等等。git

  對於想要了解內核開發的人而言,這些文章值得一讀,並且能夠從中瞭解一些信息,例如多數的受訪者習慣於使用命令行界面的工具來工做,在桌面環境下亦然。此外有很多人表示本身偏好在安靜的環境下工做而不放任何音樂。這些受訪者還分享了許多對於開發者新手的建議,例如能夠從感興趣或者比較小的項目着手,並專一在上面,以及不用害怕與其餘開發者交流等。編程

  Linux Story 在接下來的日子裏會爲你們講述這些內核開發者的故事,敬請期待。瀏覽器

  歡迎來到30周30位Linux內核開發者系列專訪!本文是該系列的第一篇。Linux內核開發社區在不少方面都是獨一無二的。社區中的人們所負責策劃的是世界上最大的合做開發項目,而且對操做系統以及將來技術的發展有很大的影響。在接下來的日子裏咱們將逐步更新本系列文章,向你們展現他們如何工做,如何跟他們一塊兒工做以及什麼使得他們偉大。工具

  開篇介紹的是Linus Torvalds。本週Linus在他的家鄉芬蘭參加千禧技術獎典禮,成爲2012千禧技術獎的得主之一。在他離開前花時間回答了咱們的採訪。學習

Linus Pic copy

  你的名字是?開發工具

  Linus Torvalds測試

  你在社區中扮演什麼角色 / 負責哪一個子系統的開發?網站

  我是內核的頂層維護者,不直接參加任何子系統開發。可是偶爾會參與VFS層 (虛擬文件系統層) (以及更偶爾地參加VM討論)。編碼

  你的收入來源是什麼?操作系統

  Linux 基金會。

  你在哪居住?爲何選擇那裏?

  俄勒岡州波特蘭市,至於緣由嘛,這裏安靜的多,比硅谷更宜居,從搬來至今已經好多年了。也許氣候沒有那麼好,但我相信這裏更適合孩子的成長。還有在這邊咱們可以承擔得起大一點的學區房。

  你最喜好的軟件開發工具是什麼?你一般使用什麼?

  我只開一個瀏覽器(收發郵件和打發時間),和在幾個終端中跑git。偶爾會使用gitk窗口瀏覽git歷史記錄。大多數時間是讀和回郵件,合併開發樹以及查看結果。

  其餘我傾向於使用的工具是 perf,用於對我關心的負載問題進行壓力測試(主要有內核編譯和一些git工做負載)。

  如何參入Linux內核開發?

  嘿嘿,缺少常識和寫操做系統的知識,不可能勝任這份工做。

  是什麼讓你對這份工做始終抱有熱情?

  僅就技術層面來講,我喜歡不斷完善作些修修補補的事情。可事實是這份工做讓我和其餘人打交道,這一點真算得上意外收穫。

  在協做開發過程當中你以爲好玩的是什麼(嘴仗,愚蠢代碼的提交,驚人的成就)?

  我認爲我喜歡的部分是某人使用Linux作一些徹底瘋狂的事情。從技術角度看,是一些毫無心義但又使人歎爲觀止的事情(甚至花費幾個月幹這事)。

  像Alan Cox移植Linux到8086上的工做。或者一些使用了擁有RAM和SD卡的8位微處理器來構建本身的計算機的傢伙,在開發板上編寫一個ARM仿真器,而後啓動 Linux (很是很是慢)。

  你對想進入該領域的開發者有什麼建議?

  從小事作起。不必定非要作Linux,有不少的開源項目須要幫助,你能夠學習如何參與到其中。一旦你確實以爲用戶模式的編程是在浪費時間,想要參與到內核開發中,不要嘗試對內核代碼進行大改,應該嘗試找出一些小的問題,而後解決掉。一些像驅動程序沒有如期的運行的問題。

  若是你們看到你在提交不少複雜的補丁前已經作了一些事情,花些時間學習協同開發是有幫助的。

  但最重要的是要有「好的品味」。這個不太好描述的,倒是我我的尋找的東西。人們一般用「正確的方法」作事,我在這裏的意思並非指你應該遵照咱們這麼多年摸索積累出來的那些規則(可是你確實最好按照這些規則來作事)。其實我特別想談論一些可能出現的難以捉摸的代碼質量問題,寫代碼須要有強烈鮮明的意識去作對一件事情而且不會漏掉特殊狀況和複雜性, 同時也能夠避免沒必要要的抽象、作它應該作的, 「只作一件事,而且把它作好」。

  你在編碼的時候聽什麼?

  我須要徹底安靜的辦公環境。當我驅車帶孩子的時候才聽音樂,工做時我不想聽到任何聲響。不能有音樂,電腦的風扇也不能有噪音。只要安靜。

  在哪一個郵件列表或IRC頻道或會議中能夠找到你?

  我不使用IRC或其餘的實時通信工具,我只用郵件。我接收全部的內核和git郵件列表,但我有自動分析模式,這樣我就能夠查看我關注的或者我有被CC或要求查看的主題。

  說到會議,對我來講一般是指 Linux 內核峯會,然而大多數年份,我也會盡量出席Linux Conf Australia (LCA)峯會。我喜歡這個會議由於它召開的時候在澳大利亞正值他們的夏季。可是 LCA 對我來講只是一個工做完成以後的放鬆, 因此我僅僅是隔年參加一次或者更長時間才參加一次。

  有時候我也會出席一些其餘的會議,(而出席的緣由)一般是由於這些會議某些地方頗有趣,好比說某次會議結束以後我能順便潛個水。

  感謝你,Linus!下週咱們將對話Thomas Gleixner。本文由「www.zrnkyy.com」編輯

相關文章
相關標籤/搜索