آشنایی با فرایند توسعهٔ Linux Kernel و دولوپرهایش طی 26 سال!

آشنایی با فرایند توسعهٔ Linux Kernel و دولوپرهایش طی 26 سال!

هرگاه در مورد اپن‌سورس بحث کنیم، این امکان وجود ندارد که حرفی از Linux Kernel به میان نیاید و این در حالی است که این پروژه به یکی از محبوب‌ترین و موفق‌ترین پروژه‌های اپن‌سورس تبدیل شده است. در حال حاضر، سیستم عامل لینوکس بر روی 90% پابلیک‌ کلودها اجرا می‌شود و 62% از سهم بازار را در اختیار دارد (99% سهم بازار اَبَر‌کامپیوترها). علاوه بر این، بر روی 82% از اسمارت‌فون‌ها نیز لینوکس نصب است. 

با وجود آپدیت‌های منظم که به صورت یک نسخهٔ پایدار هر 9 یا 10 هفته دریافت می‌کند، کِرنِل لینوکس در حال پیشرفت قابل‌توجهی در زمینهٔ پشتیبانی سخت‌افزاری است. چند ماه قبل، این پروژه 26 ساله شد. اخیراً بنیاد لینوکس -مؤسسه‌ای غیرانتفاعی که پشتیبانی از توسعهٔ کِرنِل را بر عهده دارد- گزارش سال 2017 توسعهٔ کِرنِل لینوکس را منتشر کرد. این گزارش شامل تِرِندهای مهم توسعهٔ کِرنِل از زمان انتشار کِرنِل 4.7 است.

موارد مهم توسعهٔ کِرنِل 4.8 تا 4.13
از لینوکس 4.8 تا 4.13، حدود 83000 تغییر به کمک 4319 دولوپر از 519 شرکت صورت گرفته است. در حالی که تعداد دولوپرها و تغییرات نسبت به گزارش قبلی افزایش یافته است، تعداد شرکت‌ها کماکان تغییری نکرده است. همچنین دورۀ نسخهٔ 4.9 کِرنِل، شلوغ‌ترین دوره در زمینۀ تغییرات در تاریخ کِرنِل لینوکس بوده است و نسخۀ 4.12 نیز رکورد جدیدی از تعداد دولوپرهای مشارکت‌کننده را بر جای گذاشته است.

سایز سورس‌کد کِرنِل لینوکس
اگر نگاهی به سایز سورس‌کد کِرنِل لینوکس بیندازیم، متوجه می‌شویم که رشد مداومی نسبت به انتشار اولیه‌اش در سال 1991 داشته است؛ زمانی که فقط 10000 خط کد بود! در بازۀ انتشار نسخهٔ 4.8 تا 4.13، سایز سورس‌کد کِرنِل به حدود 22 تا 24.8 میلیون خط کد رسیده است! به عبارت دیگر، در طول این دوره، جامعهٔ توسعه‌دهندگان لینوکس روزانه حدود 15 فایل و 7500 خط کد اضافه کرده‌اند.

چه کسانی در توسعهٔ کِرنِل لینوکس همکاری می‌کنند؟
دولوپرهایی که در توسعهٔ کِرنِل لینوکس همکاری می‌کنند، مهم‌ترین جنبهٔ کل این پروژه هستند. از زمان انتشار نسخهٔ 2.6.11 در سال 2005، جمعاً 15637 دولوپر در این پروژهٔ اپن‌سورس همکاری داشته‌اند (گرچه فقط تعداد کمی از این دولوپرها بخش بیشتر کار را انجام می‌دهند؛ به عبارت دیگر، 30 دولوپر حدود 16% کل کدها را نوشته‌اند). لیست دولوپرهایی که از نسخهٔ 4.8 تا 4.13 بیشترین همکاری را داشته‌اند عبارتند از:

 آشنایی با فرایند توسعهٔ Linux Kernel و دولوپرهایش طی 26 سال!

چه شرکت‌هایی در توسعهٔ کِرنِل لینوکس همکاری می‌کنند؟
در طول سال‌های گذشته، توسعهٔ کِرنِل لینوکس تعداد شرکت‌هایی که برای بهبود کِرنِل تلاش می‌کنند را افزایش داده است. هر دولوپر با استفاده از مواردی مثل آدرس ایمیل یا اطلاعات اسپانسری مشخص می‌شود؛ با این وجود، بیشتر دولوپرها به صورت ناشناس باقی مانده‌اند. از جمله شرکت‌هایی هم که بیشترین همکاری را در توسعه‌ٔ کِرنِل لینوکس داشته‌اند، می‌توان به موارد زیر اشاره کرد:
- اینتل
- ردهت
- آی‌بی‌ام
- سامسونگ
- سوسه
- گوگل
- ای‌ام‌دی
- اوراکل
- کانونیکال
- فیسبوک
- انویدیا

درس‌هایی که باید از این 26 توسعهٔ کِرنِل لینوکس سال چیست؟
گزارش سال 2017 توسعهٔ کِرنِل لینوکس به تعدادی از نکاتی که از این پروسه می‌آموزیم نیز می‌پردازد؛ مانند:
- اهمیت دوره‌های انتشار کوتاه
- اهمیت ابزارها
- اهمیت یک مدل توسعه‌ای منظم برای مقیاس‌پذیری پروسه
- اهمیت یک مدل توافق-محور
- اهمیت بیشتر همکاری تیمی
- قانون «نَه گفتن به پَسرفت»
- عدم نیاز به محدودیت‌های داخلی در پروژه

امیدواریم در سال‌های آینده شرکت‌ها و دولوپرهای بیشتری در این پروژه مشارکت کنند. اگر علاقمند به یادگیری لینوکس هستید، آموزش‌های آنلاین متنوعی وجود دارند که می‌توانند به شما در شروع این کار کمک کنند که از آن جمله می‌توان به دورهٔ آنلاین و رایگان آموزش لینوکس در سکان آکادمی اشاره کرد.

منبع


عبدالله داداشی