Человек, не слишком разбирающийся в компьютерах, не знает, что ядро является фундаментальной частью любой ОС. Он настолько удален от поверхностных приложений, что самое близкое, что вы можете получить от типичного приложения на вашем компьютере, — это настройка сетевых протоколов и/или установка программного обеспечения драйвера. На самом деле только программисты обычно имеют дело непосредственно с ядром.
Чтобы нарисовать идеальную картину, ядро для компьютера является тем же, чем двигатель для автомобиля. Вы спросите, как лучше всего внести свой вклад в ядро Linux? Я не знаю. Я не специалист по ядрам, но у меня есть несколько советов, которые могут оказаться полезными.
Необходимые условия
Ядро Linux было написано на C и языках программирования на ассемблере быть типа Монолитный. Выпущенный под лицензией GNU GPL, он доступен на веб-сайте Linux Kernel Archives.
По умолчанию это означает, что вам необходимо иметь хотя бы базовые знания о том, как программировать, особенно на C и ассемблере . Ядро управляется с помощью GIT системы контроля версий, поэтому вам также необходимо понимать, как работать с GIT.
Хорошее место для начала — Kernel Newbies, где вы познакомитесь с Eudyptula Challenge — серией упражнений по программированию, которые обучают как внести свой вклад в ядро Linux.
Еще одна вещь, которую вы должны знать, прежде чем углубляться в код Linux, это то, что репозиторий Linux на GitHub в значительной степени является заменой зеркало, а Линус не принимает пул-реквесты.
"настоящее" зеркало здесь, и все идет по спискам рассылки. В Интернете есть руководства по работе со списками рассылки в Git, если вы посмотрите достаточно хорошо.
Способы внести свой вклад
Есть 3 основных способа внести свой вклад в ядро:
1. Совершенствуйте качество кода
Linus имеет строгие правила принятия изменений кода, и он единственный, кто может добавлять в ветку master. Тем не менее, есть несколько ошибок, которые приводят к ошибкам и предупреждениям статической проверки кода, и здесь вы можете устранить такие проблемы.
Это самый простой способ внести свой вклад в ядро, но помните, вам нужно будет понять рекомендуемый стиль кодирования, как указано в документации, и выполнить все необходимые настройки, которые позволят вам отредактированная работа доступна многим другим участникам.
2. Заполните ToDos
Если вы либо удовлетворены тем, что уже сделали, либо уже знаете, как это сделать, заполните список ToDo. отличный момент, чтобы быть. Все файлы ToDo в дереве исходного кода имеют описания работы, которую необходимо выполнить, чтобы вы могли сразу приступить к ней. Он может включать в себя новые функции, которые еще не добавлены, улучшения и т. д.
3. Исправить ошибки
Это может быть так же сложно, как выполнение ToDos, если не сложнее. Чтобы исправлять ошибки, вы должны уже понимать, что это за ошибка и как ее исправить, не нарушая стандартов документации и не нарушая других реализаций кода.
Итак, вот оно!
В каком-то смысле я вношу свой вклад в ядро Linux, пишу о нем для повышения осведомленности. Некоторые жертвуют свои финансы участникам всего спектра дистрибутивов, а некоторые вносят изменения в кодовую базу ядра.Лучший способ для вас зависит от ряда факторов, наиболее известных вам, и только вы можете решить, какой из них наиболее подходит для вас.
В конце концов, Ядро Linux доступно для всех, кто заинтересован в его разработке, и никто не находится под принуждение к этому.
Как вы думаете, лучший способ внести свой вклад в ядро Linux? Вы являетесь участником по коду или как-то иначе? Или, может быть, вы знаете таких людей. Оставьте свои два цента в поле для обсуждения ниже.