Android действительно использует то же ядро, что и Linux?

25

Я где-то читал, что Android использует ядро ​​Linux. Это правда? Я думал, что ядро ​​Linux предназначено для настольных операционных систем.

Мистерио
источник
12
Ядро Linux используется на многих встроенных устройствах . Android является границей между встраиваемыми и настольными системами, есть гораздо меньшие устройства под управлением Linux.
Жиль "ТАК - прекрати быть злым"
15
Современные телефоны - это в основном настольные компьютеры с небольшими дисплеями. Если вы сравните их с десктопами десяти лет назад (которые прекрасно работали с Linux), вы обнаружите, что телефоны превосходят старые десктопы практически по всем характеристикам.
Дэвид Шварц
2
Вероятно, важно подчеркнуть три вещи - 1) настраиваемость ядра Linux - существует множество параметров, которые могут быть настроены по-разному в соответствии с ожидаемым использованием или опущены, если не нужны, и 2) ядро, как правило, представляет собой только один компонент (хотя он находится рядом или является компонент «нижнего уровня») в стеке программного обеспечения, в конечном счете отвечающего за взаимодействие с пользователем, будь то настольный компьютер, телефон, сервер или что-либо еще. Как вы можете заметить ниже, большая часть того, что делает Android «Android», не является ядром, и 3) аппаратное обеспечение телефона действительно мощное в наши дни.
LawrenceC
@ultrasawblade сказал, что ядро ​​отвечает за взаимодействие с пользователем. Это неправда. Пользователь смотрит в стек, компоненты внизу наиболее скрыты. В Debian, популярном Gnu + Linux, вы можете использовать ядро ​​bsd, делающее Gnu + bsd. Это не сильно меняет вещи с точки зрения пользователей. Системный администратор может увидеть разницу, если ее инструменты не скрывают эту разницу для нее.
Ctrl-Alt-Delor
Я сказал, что «ядро, как правило, всего лишь один компонент в стеке программного обеспечения, в конечном счете ответственный за взаимодействие с пользователем», - это не означает, что ядро ​​отвечает за него полностью, а просто играет роль.
LawrenceC

Ответы:

40

Архитектура Android

введите описание изображения здесь

Android использует Linux для основных системных служб, таких как безопасность, управление памятью, управление процессами, сетевой стек и модель драйвера. Ядро также действует как уровень абстракции между аппаратным обеспечением и остальной частью программного стека.

Последняя версия Android работает под управлением Linux версии 3.10 ( источник ).

И мой комментарий к вашему второму предложению заключается в том, что ядро ​​Linux предназначено не только для настольных операционных систем. Его варианты использования варьируются от настольных ОС до серверов, мэйнфреймов и суперкомпьютеров до встраиваемых устройств.

Linux является широко портированным ядром операционной системы. Из-за своей низкой стоимости и простоты настройки ядро ​​Linux используется на самых разных компьютерных архитектурах: в портативных устройствах и системах мэйнфреймов, в устройствах от мобильных телефонов до суперкомпьютеров.

С другой стороны: Palm (позже приобретенный HP) использует производную от Linux операционную систему webOS , которая используется в линейке смартфонов Palm Pre. Несколько сетевых брандмауэров и маршрутизаторов от производителей, таких как Cisco / Linksys, используют настроенное ядро ​​linux. Есть множество устройств , которые используют встроенный Linux .

Сачин Дивекар
источник
2
Я не знаю, почему говорят, что ядро ​​не предназначено для настольных операционных систем. Он отлично работает на настольных устройствах. Он также отлично работает на многих других классах устройств, поэтому, возможно, вы хотели сказать, что это не только для настольных устройств.
Ричм
@Richm, спасибо, что указал на это. Я исправил это в ответе.
Сачин Дивекарь
На платформах Linux / UNIX рабочий стол - это набор приложений, которые используют службы ядра. Это позволяет легко добавлять, менять или удалять рабочие столы. Серверы часто заменяют рабочий стол терминальной оболочкой.
BillThor
Разве «телефон» - это не просто форма рабочего стола? :-P
Йоханнес
Обратите внимание, что в Android изначально использовалась сильно модифицированная версия ядра linux, но начиная с 3.5 многие функции добавлены обратно в основное ядро. Android 4.4 в настоящее время работает на гораздо менее исправленном ядре Linux 3.4 (долгосрочный выпуск)
dtech
6

Да, как и многие другие встроенные устройства. Многие маршрутизаторы также используют ОС на базе Linux, поскольку, как сказал Сачин, их легко настроить.

Вот мой скриншот Xubuntu, работающий с mksh и ядром Android 3.0.8+ (из источников Android x86) Xubuntu Запуск mksh и ядра Android 3.0.8+

Джонатан
источник
3

Да и нет (в зависимости от того, что вы подразумеваете под Linux)

Существует много путаницы вокруг названия Linux; Это часто используется для обозначения двух разных вещей.

  • Это случай андроида и некоторые другие случаи. Это относится к ядру с именем Linux. Небольшая, но важная часть операционной системы. Ядро контролирует оборудование и предоставляет услуги остальной части системы. (см. хороший ответ на диаграмму @Sachin Divekar).

  • В случае почти всех настольных систем это относится к X11 + Gnu + Linux. Посмотрите диаграмму еще раз, но удалите все ссылки на телефон, телефонию и Android. Теперь измените Application Framework на Gnu Tools, добавьте слой с именем X11, а другой - с именем Gnome или Kde и т. Д. Затем верните приложение обратно. Для серверов обычно не существует X11 или Kde / Gnome, так как графический пользовательский интерфейс является источником ресурсов.

Android не использует X11 (хотя может, но не для запуска приложений для Android) или Gnu Tool. Однако, как и Gnu + Linux, некоторые библиотеки являются Gnu.

Часто трудно понять, какое значение имеет кто-то, когда говорит «Linux». Вот почему рекомендуется говорить «Gnu / Linux», когда вы имеете в виду Gnu + Linux, и «ядро Linux», как и вы, для ядра. Однако не говорите «ядро», если вы не знаете, что это такое (я слышал, что люди добавляют слово «ядро» перед Linux (потому что им сказали, что это правильный термин), держу пари, что они использовали его для обозначения Gnu + Linux).

Ctrl-Alt-Делор
источник
2

Это не просто встраивание и рабочие столы, где вы найдете ядро ​​Linux.

  • 490 из 500 суперкомпьютеров работают, полный, Gnu / Linux.
  • Около 80% веб-серверов работают под управлением Gnu / Linux.
  • Большая часть интернет-инфраструктуры работает под управлением Gnu / Linux или являются встроенными устройствами. Из этих встроенных устройств большая часть будет иметь ядро ​​под названием Linux.
Ctrl-Alt-Делор
источник
1
Теперь это все 500 лучших суперкомпьютеров под управлением Linux .
Дэвид Рефуа