• Online Tools
  • - Calculators
    • Character Count
  • - Download
    • TikTok Download
    • DouYin Download
  • - Web Tools
    • BASE64
    • Base64 to Image
    • Image to Base64
    • URL Encoding
    • JavaScript
    • Timestamp
    • Unicode Converter
    • JSON Format
    • Modify Extension
    • Make List
    • CSS Optimizer
  • - Encryption Tools
    • MD5 Encryption
    • Random Generator
  • - Image Tools
    • Image Compression
    • QR Code Generator
    • QR Code Reader
    • Wallpaper Preview
    • Image EXIF
  • - Info Sheets
    • Blood Type Heredity
    • Clothing Sizes
    • app.tool_clock
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
25年間のLinuxカーネル開発経験をまとめた9つの経験を簡単に述べる。
2022-01-05

原文:9 lessons from 25 years of Linux kernel development

作者:Greg Kroah-Hartman

雁が寒さに驚く

Linuxカーネルコミュニティは2016年に設立25周年を記念し、多くの人が私たちにこのプロジェクトが衰えず成功した秘訣を聞いた。私は普通先に笑って、それから冗談を言って、私は本当に25年を経験したことを知りません。このプロジェクトはずっと分岐と挑戦に直面している。しかし、厳粛に言えば、私たちがこれを行うことができるのは、コミュニティの反省と変化の能力と大きな関係があります。

約16年前、多くのカーネル開発者がお互いに会ったことがなく、私たちは電子メールで連絡しただけなので、Ted T'soはカーネルサミットの考えを提出しました。現在、カーネル開発者は毎年集まって技術問題を解決しています。さらに重要なのは、過去1年間で私たちがどのような正しいことをしたのか、またどのような間違いを犯したのかを振り返ることです。開発者は、相互にどのように交流するか、開発プロセスがどのように動作するかを率直に議論することができます。そして、プロセスを改善し、Gitのような新しいツールを開発し、協力方法を絶えず変えます。

Linuxカーネルの成功のすべての重要な原因はまだ完全に認識されていませんが、共有する価値のある経験があります。

1.より短いリリースサイクルが重要

Linuxプロジェクトの初期段階では、カーネルの各プライマリ・バージョンが何年もリリースされる必要があります。これは、ユーザーが新しい機能を享受するのに長い時間を待つ必要があることを意味します。これは、ユーザーとディーラーにとってかなりがっかりしています。さらに、このような長い周期は、大量のコードを一気に統合する必要があることを意味します。こんなに多くのコードを1つのバージョンに統合するのは、プレッシャーも大きい。

より短いサイクルでこれらの問題をすべて解決できます。新しいコードは、より短い時間で安定版に組み込むことができます。新しいコードをほぼ安定したベースラインバージョンに統合することで、システムに最小限の影響を及ぼす場合に根本的な変化を導入できます。開発者は、このリリースサイクルを逃した場合、2ヶ月以内にもう1つあることを知っています。そのため、コードを早期に組み込むことはめったにありません。

2.プロセスの拡張には分散型の階層開発モデルが必要である

以前は、すべての変更要件がLinus Torvaldsに直接移行していましたが、オペレーティングシステムのカーネルのような複雑なプロジェクトを全面的に把握できる人はいなかったため、すぐに不適切であることが証明されました。早くから、カーネルの異なる分野のメンテナンス者たちは、カーネルの一部をその分野に詳しい人に割り当てるという考えを提出した。例えば、ネットワーク、無線、PCIまたはUSBのようなドライバサブシステム、またはext 2またはvfatのようなファイルシステムである。その後、数百人の保守担当者がコードの審査と統合を担当するように拡張し、製品の品質を犠牲にすることなく、各リリースのバージョンに何千もの変更を含めることができます。

3.ツールの重要性

カーネル開発はBitKeeperというソースコード管理システムが登場するまで、開発者の範囲を拡大しようとしていたが、ほぼ一夜にしてコミュニティのやり方が変わり、Gitの出現は再び飛躍をもたらした。適切なツールがなければ、カーネルのような項目は正常に動作せず、自身の重量に押しつぶされます。

4.強力な世論誘導モデルが重要

一般的に、ある開発カレーが提出した変更を拒否した場合、この変更は統合されません。開発者が数ヶ月前に提出したコードがメールリストで拒否されたことに気づいたら、それは非常にがっかりします。しかし、これはカーネル開発が多くのユーザーと問題に適応できることを保証しています。他のグループを犠牲にして変更できるユーザーコミュニティはありません。マイクロシステムからスーパーコンピュータまでサポートできるコードライブラリがあり、多くのシーンに適用できます。

5.強力な「回帰なし」ルールも重要

約10年前、カーネル開発コミュニティは、指定されたカーネルが特定の環境で正常に動作すれば、後続のすべてのカーネルバージョンもこの環境で正常に動作することを約束しました。コミュニティが変更が他の問題を引き起こしたことを発見した場合、彼らはすぐにこの問題を解決します。このルールは、システムのアップグレードが元のシステムを破壊しないことを約束します。したがって、メンテナンス者は、新しい機能を開発するときにこのカーネルを継続したいと考えています。

6.企業が開発プロセスに参加することは重要ですが、カーネル開発を主導できる企業はありません。

2014年12月のバージョン番号3.18のカーネルリリース以来、500社近くの個人開発者約5062人がLinuxカーネルに貢献しています。多くの開発者は、彼らの仕事のために報酬を得ていますが、彼らの変更は彼らの会社のためにサービスされています。しかし、どの会社も具体的なニーズに応じてカーネルを改善することができますが、他人を傷つけたり、カーネル機能を制限したりすることを主導する会社はありません。

7.プロジェクトに内部境界があるべきではない

カーネル開発者は、カーネルの特定の部分に集中する必要がありますが、修正が合理的であれば、どの開発者もカーネルの任意の部分を修正することができます。したがって,問題は回避ではなく発生時に解決される.開発者は、カーネル全体について様々な見方を持っており、最も頑固なメンテナンス者であっても、指定されたサブシステムに必要な改善を無期限に棚上げすることはできません。

8.重要な機能は少しずつ始まる

元の0.01版カーネルは10000行のコードしかありません。現在では2日ごとに10000行以上増加しています。開発者が現在追加している基本的な、微小な機能は、将来的に重要なサブシステムに発展する可能性があります。

9.以上のように、25年間のカーネルの発展の歴史は、持続的な協力が共通の資源をもたらすことを示しており、これはあるグループだけで開発できるものではない。

2005年以来、1300社以上の企業から約14000人の個人開発者がカーネルに貢献してきた。そのため、Linuxカーネルは互いに激しい競争関係を持つ多くの会社の努力の下で、規模の大きい公共資源に発展した。


ソース元URL:https://dopubox.com/article/p/ad18f775e6d0295a

Other Tools
  • Character Count TikTok Download DouYin Download BASE64 Base64 to Image Image to Base64 URL Encoding JavaScript Timestamp Unicode Converter JSON Format Modify Extension Make List CSS Optimizer MD5 Encryption Random Generator Image Compression QR Code Generator QR Code Reader Wallpaper Preview Image EXIF Blood Type Heredity Clothing Sizes app.tool_clock
  • テレビ東京、不適切表現で謝罪 「激録・警察密着24時!!」
    2024-05-29

    一力が本因坊初防衛
    2024-05-30

    原作者の意向は取り入れられたと日テレ
    2024-05-30

    映像化は「作家の意向第一」と小学館が指針
    2024-06-02

    万博無料招待、大阪の学校7割が希望 「不参加」の選択肢ない調査手法に批判も
    2024-06-03

    河合隼雄賞に八木詠美さん「休館日の彼女たち」、湯澤規子さん「焼き芋とドーナツ」
    2024-06-02

    レイモンド・ローウィの名言「優れたインダストリアルデザインは、…」【本と名言365】
    2024-06-04

    福島県沖地震で解体 老舗文具店の新ビルが開店 イベントスペースも
    2024-06-04

    「国芳の団扇絵 猫と歌舞伎とチャキチャキ娘」(太田記念美術館)開幕レポート。世界初の展覧会
    2024-06-04

    美術評論家連盟が「ガザ戦争に対する意⾒表明」を公開
    2024-06-04

    国際博物館の日、今年のテーマは「学びと研究のための博物館」
    2024-06-04

    東京都写真美術館で「今森光彦 にっぽんの里山」が開催へ
    2024-06-04

    石川九楊の個展「石川九楊大全」が上野の森美術館で2ヶ月連続開催へ
    2024-06-05

    謎多き家形埴輪 「考古学の空白」に挑む橿考研ベテラン研究員、念願の特別展開催中
    2024-06-04

    3日間限定発売! 名作パントンチェアが新たな魅力を纏った限定カラーで登場。
    2024-06-05

    田名網敬一が新作の巨大インスタレーションを発表へ。世界初の大規模回顧展「田名網敬一 記憶の冒険」
    2024-06-06

    宗教2世のドラマが受賞 第50回放送文化基金賞
    2024-06-06

    佐渡金山「情報照会」と勧告 世界遺産登録に可能性残す
    2024-06-06

    佐渡金山、世界遺産登録に向け「追加情報の提出」求められる
    2024-06-06

    パートナーとの強い絆から生まれた、ベンジャミン・ブリテンの代表作【クラシック今日は何の日?】
    2024-06-06

    ©  Dopu Box
    💛