<font id="zqva1"></font>
<rt id="zqva1"></rt>
  • <tt id="zqva1"></tt>
    <cite id="zqva1"></cite>

    <cite id="zqva1"><noscript id="zqva1"></noscript></cite>
      <rp id="zqva1"><meter id="zqva1"></meter></rp>

        <cite id="zqva1"></cite>
          <b id="zqva1"></b>
          <rp id="zqva1"></rp>
          <cite id="zqva1"></cite>

          <rt id="zqva1"></rt>

        1. <rp id="zqva1"></rp>

          LWN:內核開發者的更好的工具!

          時間:?2019-08-27閱讀:?20標簽:?工具

          從許多角度來說,Linux kernel這個項目在用的工具都太過時了,遠遠落后于現代的孩子們經常用的工具。kernel的工作流程在過去幾年表現都很好,不過已經有些跡象表明它不會永遠保持不變。一直以來都有一些討論關于如何改善kernel的工作流程,不過基本還沒怎么真正動起來。最近新提出的一個名為get-lore-mbox的簡單工具可能預示了工作流程的改進會逐漸加速。

          kernel項目一直以來都依賴email,這一點讓許多人感到很驚奇,覺得它很過時。這也許真的跟kernel社區開發人員的年齡層次有關。許多開發者,尤其是那些重要的maintainer們,都是在那些基于網頁的git服務管理網站出現之前就開始做現在的工作了。許多人其實還用過打孔編程的方式,他們中的許多人仍然沒有接受文本編輯器的價值。不過,kernel一直依賴emal的真正的原因其實還是因為沒有多少其他工具可以用來支撐這么大規模以及多樣化的一個社區。

          所以,盡管看起來email(這里不是指那些Gmail這類的公司服務)的未來還不是很明確,但是kernel社區后續會有什么替換工具還很不明朗。首先需要能說服開發者們,新工具會讓他們更輕松,而不是更麻煩。對于那些非常繁忙的maintainer來說,如果有什么改進方式會讓做事情更慢,他們一定不會接受的。

          Konstantin Ryabitsev提出的get-lore-tool并不是一個需要大量開發工作的產物,它僅僅有500行左右的Python代碼。核心功能很簡單:提供某封email的message ID,它會為你從lore.kernel.org下載完整的email thread,生成一個車本地的mbox文件。這個功能本身其實對所有需要了解某個email塔輪的來龍去脈的人都有用,不過它還擁有許多有用的功能:

          • -a 選項,只會下載這個email thread中最核心的那一系列patch文件,排好序并整理好格式,方便直接傳遞給git am命令。同時在email thread中如果有一些回復里包含有用的tag(例如Acked-by),也會自動加到相應的patch上去。

          • -t 選項,可以把那些只回復給這組patch的cover letter的tag都打到這組中所有的patch上面去。

          • 如果這個email thread中有多個版本的patch,那么只會保存最新一個版本的patch文件。也可以用 -v 選項來指定要求某個特定版本的patch文件。

          • 如果沒有提供message ID,此工具可以從標準輸入中讀入一個email message,提取出message ID。這樣在許多郵件閱讀軟件里面只要按一個鍵就可以完成所有工作了。

          Kernel maintainer經常需要花許多時間來閱讀email thread,從中整理patch,打上tag,等等。這個工具一發出來,最早的反饋(也包括在kernel.org內部用戶的郵件列表上的反饋)都是說這是他們長久以來一直渴求的工具。僅需要花很短的時間寫出這樣一個工具,就能省下許許多多的開發者的時間,不過此前一直沒人做這件事情。

          也許有人好奇這個工具為什么直到現在才出現。其實要想完成這個工作,首先有兩個前提條件。其中之一就是要把所有的kernel mailing list的內容都要可靠地存放起來,并且能用一個程序來簡單地進行查詢。此前一直缺少一個可靠地存放服務,并且沒有一個集中式的地方包含所有的kernel相關的list。在這個問題解決之前,get-lore-mbox這種類型的工具也無從查詢歷史郵件。lore.kernel.org服務就解決了這個問題,目前看來它已經成為了kernel開發流程的一部分,不過其實它也才出現了不到兩年。

          早在1975年的時候,Fredrick Brooks在他名為Mythical Man-Month(《人月傳說》)的書中,斷定說一個高效的軟件開發團隊需要像一個手術團隊一樣工作,不同的人做完成不同的角色的任務。kernel項目中也有這樣的核心“外科大夫”,同時也有許多其他的專家來完成其他工作。Brooks認為每個團隊都要有兩位秘書,而kernel社區看起來一直沒有這樣的角色。他還說每個團隊都要有位工具專家,專注于創建團隊所需的工具。

          kernel項目長期以來一直缺少這樣的工具專家。甚至沒有一個人能把各位maintainer為了方便自己的工作來創建的工具搜集起來,改為適合大家使用的工具。因此,maintainer在日常工作中經常沒有一個合適的工具,或者在使用他們自己簡單拼湊出來的工具。這樣導致社區失去了改善整體開發效率的 一些 機會。

          在自由軟件(free-software)世界里,有一個眾所周知的秘密:有一部分開發工作得到了許多公司的支持,但還有一些一直沒有公司投入進來。kernel里面也有同樣的情況,甚至可以說,有許多很急迫的工作,因為看起來并不是某個人導致的問題,因此沒有人會花精力來進行響應的開發。對這類問題的忽視,已經引出了許多問題:精疲力盡的開發者用盡方法來利用自己的業余時間開發來確保項目能有進展;許多安全漏洞;缺少測試和文檔;缺少整個社區都需要的工具,等等等等。

          除非有哪個業界巨頭或者組織愿意投入一些精力和資源來解決這類問題。對kernel來說,Linux Foundation就是這樣的一個角色。Linux Foundation一直在許多方面對kernel社區進行支持,包括雇傭了一些關鍵開發者,在2011年kernel.org被攻破之后接手了它的系統維護工作(此前這個工作一直被大家無視了)。最近,Linux Foundation支持了創建并運營lore.kernel.org,也包括get-lore-mbox工具本身。

          關于kernel工作流程的討論已經達成了不少共識,不過在這個領域還有許多工作需要完成。kernel的開發流程和工具在過去多年一直缺乏關注,從某種意義上來說,這也是因為表面上所有一切都還能正常 工作 。kernel社區在努力把自己運營好,這方面的工作,比起多數項目來說都做得好得多。當kernel社區找到一段時間來專注于改進工具的時候——Git就是一個很好的例子——最終的產物都會在開發社區中產生連鎖影響。不過還是需要先讓kernel項目的開發流程碰到一些危機、證明它無法良好支持社區運營,才能有動力進行工具的改善。

          真希望今后kernel這邊的開發流程的大改變能夠跳過這個“先遇到危機”的階段。其實只要能對kernel社區投入足夠的支持工作和資源,這一點希望是很有可能實現的。也就意味著,現在Linux Foundation在做的事情不僅不應該停下來,反而應該能變得更加宏大。支持這個開發工作(包括讓Linux Foundation的成員公司來支持)將會是Linux Foundation今后能對整個kernel項目進行支持的最好方式。

          By  Jonathan Corbet
          February 6, 2020
          原文來自:https://lwn.net/Articles/811528/


          吐血推薦

          1.站長廣告聯盟: 整理了目前主流的廣告聯盟平臺,如果你有流量,可以作為參考選擇適合你的平臺點擊進入...

          2.休閑娛樂: 直播/交友    優惠券領取   網頁游戲   H5游戲

          鏈接: http://www.modern-decoration.com.cn/article/detial/7794

          國內都有哪些免費的圖床工具

          七牛云是國內企業級云服務商,注冊認證后有10G永久免費空間,每月10G國內和10G國外流量,速度相當快,七牛云是國內專業CDN服務商,插件支持比較多,有免費ssl證書,但https流量收費。同時可以自定義域名,系統會默認分配測試域名,測試域名只能用20天

          LWN:內核開發者的更好的工具

          從許多角度來說,Linux kernel這個項目在用的工具都太過時了,遠遠落后于現代的孩子們經常用的工具。kernel的工作流程在過去幾年表現都很好,不過已經有些跡象表明它不會永遠保持不變

          程序開發必備工具推薦

          工欲善其事必先利其器,作為程序員不光熟練掌握某種語言技能,相關的工具的運用和選擇也相當重要,好的工具讓你事半功倍,現在我向碼農推薦一下工具

          Mac上程序員很喜歡用10大開發軟件

          走進BAT,你們會發現,他們都喜歡使用Mac,Mac作為一個創作工具,一直深受程序員,教授,高科技行業從業者的喜歡。Mac及佳的穩定性,也是用戶喜歡的一個主要原因,Mac可以讓你專注于創作

          程序員必備的學習工具

          學習技術過程我們經常需要使用搜索引擎來檢索資料,國內常用的也就是某度了。當然有條件的話,搜索引擎首先還是推薦使用 Google,如果沒辦法使用,可以使用以下幾個作為備用:

          7款最好的筆記工具

          編程容易產生挫折,即使作為一種業余愛好也可能是這樣。建立一個網頁,手機APP或桌面應用都是個很大的工程,好的記筆記技能是讓這個工程井然有序的關鍵,也是克服壓力、絕望和倦怠的好方法。

          js工具類

          整個body顯示半透明的遮罩層;給指定的div顯示半透明的遮罩層;清除顯示半透明的遮罩層;將數字每三位分割;為數字加上單位:萬或億;layout方法擴展 ;js截取字符串,中英文都能用

          18 個提高生產力的開發者工具

          本篇介紹一些提高生產力的工具,包括網站、瀏覽器插件、VSCode插件和命令行工具~如果你想要安裝一個新的依賴,這個網站可以查看這個依賴的大小、是否支持 tree-shaking 等各項指標

          11個代碼質量審核和管理工具,程序員收藏

          如今,代碼質量分析和審核已成為每個企業的基本流程。隨著開源代碼庫使用的增加,安全性和代碼質量對于構建高質量軟件至關重要。不良的代碼不僅會影響代碼的可維護性,而且還會在某些情況下影響其性能

          購買網絡自動化工具時應考慮的7個方面

          網絡自動化這個概念自網絡問世以來就存在了;就在不久前,由于許多原因(包括網絡工程師的抵制),其采用速度一直很慢。但現在,眾多因素共同上演了一場完美風暴,推動企業需要網絡自動化工具。

          fly63.com版權所有,內容以共享、參考、研究為目的,不存在任何商業目的。其版權屬原作者所有,如有侵權,請與小編聯系!情況屬實本人將予以刪除!

          文章投稿關于web前端網站點搜索站長推薦網站地圖站長QQ:522607023

          小程序專欄: 土味情話心理測試腦筋急轉彎幽默笑話段子句子語錄成語大全

          国产精品高清视频免费 - 视频 - 在线观看 - 影视资讯 - 唯爱网