Быть новичком в Linux, возможно, это глупый вопрос! Я не совсем понимаю, как работает этот дистрибутив, Raspbian просто скомпилировал пакеты с исходным кодом, взятым из отдельных репозиториев соответствующих пакетов? Существуют ли изменения исходного кода, необходимые для создания дистрибутива, если есть, например, существует ли ветвь или репозиторий GitHub? И, наконец, как это связано с «linux» здесь github.com/raspberrypi/linux ?
20
Ответы:
Raspbian - это дистрибутив Linux . Все, что построено на ядре Linux, можно назвать дистрибутивом Linux.
Raspbian - это не новая ОС, а модифицированная версия популярного дистрибутива Debian
SqueezeWheezy (который в настоящее время находится в стабильномтестировании). Он работает на исправленной версии ядра Linux, которую можно найти на Raspberry Pi GitHub . Эта версия добавляет несколько оптимизаций Raspberry Pi к исходным кодам ядра.Самым важным отличием Raspbian является то, что он построен с поддержкой Hard Floating Point , что значительно повышает производительность. Пакеты, как правило, предоставляются в качестве исходного кода и могут быть скомпилированы любым компилятором, в этом случае каждый пакет (по-видимому, в настоящее время находится в районе 35000) должен был быть создан специально для Raspberry Pi с использованием компилятора hard float (и некоторых других оптимизаций ).
Вы заинтересованы в распространении? Вы могли бы начать с чтения процессов, которые прошли разработчики Raspbian при запуске. Вот интересный пост на форумах, который стоит прочитать. А затем подумайте о том, чтобы потратить пару дней, чтобы разобраться с проектом Linux From Scratch .
источник
Технически, Linux - это просто ядро, являющееся основным программным обеспечением, которое обеспечивает низкоуровневый доступ к оборудованию - такие как отправка данных по сети, отображение графики, вывод звука, запуск и остановка программ, чтение и запись файлов и так далее.
Очевидно, вам нужно гораздо больше программного обеспечения, чтобы иметь что-то полезное. Вам нужны такие вещи, как оболочка (командный терминал в Windows), графический интерфейс, программы для вывода списка и копирования файлов, а также все, что угодно, например, файловый менеджер, веб-браузер, медиаплееры, компилятор и все, что угодно. Все это вместе с ядром является «дистрибутивом». В мире Linux люди все чаще размещают в дистрибутивах. Мол, каждая часть программного обеспечения когда-либо написана.
Это откровенно неправильный способ сделать это, но никто еще не придумал лучшего способа, и причина проста: разные дистрибутивы не согласуются с тем, как все работает, поэтому часто приходится менять программное обеспечение, чтобы оно работало в разных дистрибутивах. , Например, они могут хранить файлы конфигурации в разных каталогах, или по-разному называть библиотеки, или всевозможные другие изменения, некоторые хорошие, некоторые идиотские.
Один из самых больших способов изменения дистрибутивов - это то, как они обрабатывают, включая все когда-либо написанные части программного обеспечения . Очевидно, что вы не можете установить всю эту чушь на свой компьютер - вместо этого она хранится где-то на некоторых серверах, и вы используете то, что называется менеджером пакетов, чтобы получить то, что вы хотите (в основном, как магазин приложений Apple, но гораздо более мощный и менее удобный для пользователя). и чуть менее надежный).
Двумя наиболее популярными менеджерами пакетов являются APT (Advanced Package Tool, я думаю), который используется в очень популярном дистрибутиве Debian, а также Ubuntu, созданный на основе Debian (у них много общего), и RPM (Red Hat Package Manager). можно было бы догадаться), который используется Red Hat. Это более популярно в корпоративном мире.
В любом случае, возвращаясь к сути, Raspbian - это модифицированная версия Debian, оптимизированная для работы на Raspberry Pi. Оптимизация - это в основном разные параметры компилятора, чтобы он работал быстрее. Да, и включает в себя все драйверы с закрытым исходным кодом и все необходимое для видеокарты RPi. GPU. Без разницы.
Вы можете думать об этом как о версии Windows RT для Linux.
Надеюсь, что это помогло. Извините, если это было слишком просто!
источник