Скільки фактичних розробників працює над ядром Linux?


18

Для дослідження, яке я роблю, мене запитали, скільки фактичних розробників здійснюють типову версію ядра.

Я знаю, що Лінус Торвальдс є головним розробником, а за ним багато інших основних розробників. Кілька з яких працюють у компаніях. Але тут виникають мої сумніви:

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

  2. Чи є сторонні групи, які допомагають компаніям або головним розробникам?

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

Відповіді:


20

Це може бути цікаво клонувати git сховище linux та негайно запитувати його.

Клонування репо

Обережно, це великий файл! (~ 1,5 г)

Встановіть gitта запустіть наступне (у новому каталозі):

git clone http://github.com/torvalds/linux.git

Запит на репо

Після того, як ви його клонували, ви можете проаналізувати журнал комітетів git log. Оскільки журнал настільки довгий, ви можете обмежити свої дослідження меншим періодом часу:

git log <since>..<to>

наприклад

git log v3.4..v3.5

Це теоретично має багато інформації, яку ви могли б використовувати. Наприклад, ця команда друкує 20 найбільш плідних комітетів разом із їх кількістю комірок та їх електронною адресою.

$ git log v3.4..v3.5 | grep Author | cut -d ":" -f 2 | sort | uniq -c | sort -nr | head -n 20
417  Linus Torvalds <torvalds@linux-foundation.org>
257  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
196  Mark Brown <broonie@opensource.wolfsonmicro.com>
191  Axel Lin <axel.lin@gmail.com>
172  David S. Miller <davem@davemloft.net>
138  Daniel Vetter <daniel.vetter@ffwll.ch>
132  H Hartley Sweeten <hartleys@visionengravers.com>
128  Al Viro <viro@zeniv.linux.org.uk>
117  Stephen Warren <swarren@nvidia.com>
113  Tejun Heo <tj@kernel.org>
111  Paul Mundt <lethal@linux-sh.org>
104  Johannes Berg <johannes.berg@intel.com>
103  Shawn Guo <shawn.guo@linaro.org>
101  Arnd Bergmann <arnd@arndb.de>
100  Thomas Gleixner <tglx@linutronix.de>
 96  Eric Dumazet <edumazet@google.com>
 94  Hans Verkuil <hans.verkuil@cisco.com>
 86  Chris Wilson <chris@chris-wilson.co.uk>
 85  Sam Ravnborg <sam@ravnborg.org>
 85  Dan Carpenter <dan.carpenter@oracle.com>

Електронна адреса може дати вам уявлення про роботодавців розробників (google.com, cisco.com, oracle.com).


1
Можна також запитувати історію коду, не потребуючи клонування локально через github api , наприклад, ось список учасників api.github.com/repos/torvalds/linux/contributors (схоже, відсортований за кількістю комітетів )
matt wilkie

відповідно до цього команда вище лише перераховує поточну гілку, і її потрібно використовувати git log --all ...для більш всебічного списку
matt wilkie

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

Ймовірно, ви хочете порахувати кількість комісій, що не об'єднуються, і ви побачите, що Лінус робить набагато менше роботи, ніж це.
Олександр Беллоні

14

Перейдіть до сторінки охоплення ядра на LWN.net та виконайте пошук "Випуски" та "Статистика учасників". Також виконайте пошук "Хто". У цьому покажчику є різні статті з заголовками, як (останнім часом) Хто написав 3.5 .

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

Збір статистики проводиться за допомогою gitdm (доступна стаття LWN: gitdm v0.10 доступна ). Дякуємо фонбранду, що вказав на це. Наразі сховище можна отримати за допомогою січня 2015 року

git clone git://git.lwn.net/gitdm.git

Щодо 1 і 2, вони не так добре визначені. У випадку 1, я думаю, що відповідь майже напевно, так, деякий час. Але не ясно, що ви шукаєте - анекдотичні докази чи деякі статистичні дані. Якщо статистика, то в якій формі? У випадку 2, "сторонніми групами" не зрозуміло, що ви маєте на увазі, і про яку допомогу ви звертаєтесь. Чи вважають, наприклад, люди на каналі IRC як сторонні групи? Або ви говорите про більш формальні договірні відносини, коли гроші змінюють руки? Як зовнішня компанія, яку утримують для тимчасового консультування? У будь-якому випадку таку інформацію було б важко отримати, не поговоривши безпосередньо з розробниками ядра, і навіть тоді це було б анекдотичним. Я вважаю, що такі форуми, як список розсилки ядра Linux, були б можливими в цьому випадку.


Дякую. У третьому випадку я шукаю людей, які також якось допомогли взяти на себе зобов’язання. Наприклад, група людей, які допомагали комусь у компанії. Ця особа в компанії працювала з групою, яка наприкінці взяла на себе зобов’язання з ядром.
Луїс Альварадо

Збір статистики проводиться gitdm (стаття LWN announcig it lwn.net/Articles/290957 , остання комісія - від Arpil 2012)
vonbrand
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.