Розробка ядра linux

Ядро Linux - це величезний проект з відкритим вихідним кодом, розробка якого ведеться вже більше 25 років. Хоча багато хто думає, що більшість проектів з відкритим вихідним кодом розробляються ентузіастами, над ядром Linux працюють професійні програмісти, які отримують за це гроші.

Згідно з даними The Linux Foundation, починаючи з 2005 року, понад 14 000 індивідуальних розробників і більш ніж 1300 різних компаній внесли свій вклад в ядро. У цій статті ми розглянемо, як і ким ведеться розробка ядра Linux, хто все це фінансує і контролює.

Розробка ядра Linux

Приблизно раз на рік The Linux Foundation випускає звіт по процесу розробки ядра з даними про частоту випусків, швидкості змін і компаніях, які в цей раз внесли свій вклад. Наприклад, останній звіт був випущений в серпні 2016 року і охоплює версії ядер 3.9 - 4.7.

Одне з найбільш цікавих змін - це зменшення вкладу в розвиток ядра з боку неоплачуваних розробників. За цей період їх частка скоротилася від 14,6 до 7,7%. Це пояснюється тим, що багато хто з цих розробників були найняті компаніями.

Що стосується корпоративних внесків, то за цей період частка Intel склала 12,9%, Red Hat - 8%, Linaro - 4%, Samsung - 3,9%, SuSE - 3,2%, IBM - 2,7%. Але кілька років тому історія була зовсім іншою. У 2010 році Red Hat була на першому місці - 10.2%, за нею Intel - 8,8%, Texsa Instruments - 4,1%, Linaro - 4,1%, SuSE - 3,5%, IBM - 3,1% . Помітно зросла частка Intel. Директор відділу Intel Open Source Technology Center не раз заявляв, що ядро ​​Linux має для компанії дуже важливе, стратегічне значення. Як бачимо, підтримка ядра Linux виконується багатьма компаніями.

Також цікавим є збільшення вкладу компанії Samsung від 2,9 до 3,9%. На тлі інших компаній внесок Red Hat знижується, але спільна участь Red Hat і Intel тримається досить стабільним протягом багатьох років. Починаючи від низького рівня 18,1% у 2012 і до максимуму - 20,9% в 2016.




На конференції LinuxCon в 2016 році генеральний директор Red Hat, Джим Уайтхерст, говорив про те, що на ряду з технічним внеском в ядро, вони будують нову бізнес-модель. Можливо, збільшення частки Intel свідчить про те, що вони намагаються повторити те, що вже було зроблено в Red Hat. У плані патчів внесок різних компаній за 2016 рік такий: Red Hat - 18,4%, The Linux Foundation - 13,5%, Intel - 12,1%, Linaro - 8,7%, Google - 5,3%, Samsung - 3,5%, SuSE - 2,9%, AMD - 2,1%.

Те, що організація The Linux Foundation знаходиться на другому місці не дивно, оскільки тут працює Грег Кроа-Хартман, який займається підтримкою стабільної гілки ядра, підсистему тестування, а також кілька інших підсистем. Ця людина була відповідальна за 13,992 з 14,180 правок від The ​​Linux Foundation.

Хто керує процесом?




Проте вклади компаній і розробників нічого нам не говорять про те, як приймаються патчі в ядро ​​і як йде розробка ядра Linux. Ядро Linux - це величезний проект, над яким працює велика кількість розробників. Все це неможливо контролювати одній людині. Зробимо невеликий опис ядра Linux.

Ядро має різні підсистеми, наприклад, графічну, пристроїв USB, мережеву, планувальник і так далі. Підтриманням кожної з підсистем займається окрема людина - супроводжуючий. Компанії і розробники відправляють свої патчі супроводжуючим тих чи інших підсистем.

Супроводжуючі переглядають патчі, відправлені іншими програмістами, або компаніями і приймає їх, або ж повертає на доопрацювання. Так відбувається з кожною підсистемою. Після прийняття патча, він додається в тестову гілку ядра, де проходить тестування, і вже тоді, якщо все добре йде далі.

Для координації дій всіх розробників використовується розсилка Email. На перший погляд, може здатися, що це застаріла технологія, але насправді це не так. Пошта - це найкращий спосіб управління таким великим проектом, як ядро. Вона швидше, ніж будь-яка з альтернатив, при кількості змін від 8 на годину від 4000 розробників і 400 компаній, потрібно дуже потужне рішення.

Git міг би давно замінити розсилку, він має кілька переваг, але він хороший для невеликих проектів, що стосується таких потужних проектів, як ядро, то можливостей і масштабованості недостатньо.

висновки

У цій статті ми зробили опис процесу розробки ядра linux, хто основні розробники ядра, і як вони це роблять. Сподіваюся, інформація була корисною для вас.

Відео "Як розробляється Linux" від The ​​Linux Foundation:

Поділися в соціальних мережах:

Схожі
Драйвери пристроїв для linux, 3-е виданняДрайвери пристроїв для linux, 3-е видання
Установка драйверів в linuxУстановка драйверів в linux
Віртуальна флешка в linuxВіртуальна флешка в linux
Стів джобс свого часу пропонував роботу лінус торвальдсСтів джобс свого часу пропонував роботу лінус торвальдс
Чим відрізняється unix від linuxЧим відрізняється unix від linux
Chakra linux отримала kde plasma 5.7.3 і firefox 48Chakra linux отримала kde plasma 5.7.3 і firefox 48
Як оновити ядро ​​до 4.1 в ubuntuЯк оновити ядро ​​до 4.1 в ubuntu
Що таке ядро ​​linuxЩо таке ядро ​​linux
Оновлення драйверів ubuntuОновлення драйверів ubuntu
Оновлення ядра centos 7Оновлення ядра centos 7
» » Розробка ядра linux