LINUX.ORG.RU
ФорумTalks

Google планирует перевести Android на стандартное ядро Linux

 , ,


2

1

Мобильная операционная система Android использует специальную версию ядра Linux, которая подверглась ряду изменений со стороны производителей железа для смартфонов. Но вскоре ситуация может измениться: по заявлению представителей Google, компания планирует минимизировать разницу между Linux и Android, сделав популярную ОС ещё более универсальной.

На конференции Linux Plumbers разработчики Google сообщили, что компания заинтересована в максимальном приближении Android к ядру Linux. Это позволит решить ряд технических проблем, отказавшись от тысяч программных изменений в каждой новой прошивке. Кроме того, компания сможет отказаться от поддержки фиксированных версия ядра Linux в течение шести лет, как это реализовано сейчас.

Переход на ядро ARM Linux, по словам разработчиков, станет выигрышным и для рядового пользователя, поскольку положительно скажется на производительности и автономности устройств. Сейчас Google работает над объединением как можно большего числа модификаций Android в основное ядро Linux. По состоянию на февраль 2018 года ядро Android имело около 32 000 дополнений и 1,5 тысячи удалённых фрагментов сравнительно с оригинальным Linux 4.14.0.

В ходе конференции был продемонстрирован смартфон Xiaomi Pocophone, работающий под управлением Android 10, построенной на базе основного ядра Linux. Идея Google заключается в создании универсального интерфейса, который позволял бы активировать аппаратные элементы устройства в виде подключаемых модулей с установкой необходимых драйверов. При этом вносить изменения в само ядро ОС не потребуется.

Сроки реализации проекта по переходу на «десктопное» ядро операционной системы корпорация пока не объявила.

Источник: androidpolice.com

Ответ на: комментарий от ox55ff

Для микроконтроллеров может быть, но не для современных смартфонов с 8 ядрами и 8 гигами.

Unicode4all ★★★★★
()
Ответ на: комментарий от Avial

Fuchsia у них поле для экспериментов пока. И для IoT.

EXL ★★★★★
()
Последнее исправление: EXL (всего исправлений: 1)

отказаться от поддержки фиксированных версия ядра Linux

sT331h0rs3 ★★★★★
()

вскоре ситуация может измениться

Ключевое слово - может.

Deleted
()

Ты это указывай реальный источник.

А то я уже хотел на Androidpolice метку ставить, что бред пишут.

fornlr ★★★★★
()
Ответ на: комментарий от praseodim

Телеметрия-то не в ядре. Чего там в ядре «телеметрить»?

mono ★★★★★
()

Слишком хорошо, чтобы быть правдой.

Железки на generic kernel - великое благо, ncrmnt подтвердит.

Deleted
()

Т.е. вот так просто возьмут и дадут возможность людям сносить нахрен ведроид и накатывать GNU/Linux? Ну-ну. Не для того они с самого начала столько пердолились с намеренным говняканьем ядра («32 000 дополнений и 1,5 тысячи удалённых фрагментов»), специально чтобы его невозможно было использовать с чем-то кроме их долбаного ведроида.

Stanson ★★★★★
()
Ответ на: комментарий от Deleted

Ну да, конечно! Это просто проприерастов заставят писать код к своему говножелезу, который не трогает внутренности ядра. Польза, конечно, есть, но в основном у гугла, которому проще иметь дело с уязвимостями, да и всегда сказать можно «это уязвимость не у нас в ядре, а у них в драйвере»

unanimous ★★★★★
()

В ходе конференции был продемонстрирован смартфон Xiaomi Pocophone, работающий под управлением Android 10, построенной на базе основного ядра Linux

А где сорцы, G*****? Ты уже замайнлайнил?

a1batross ★★★★★
()
Ответ на: комментарий от Stanson

Ты ведь понимаешь, что с текущим состоянием тачинтерфейсов и отсутствием мобильных приложений на линуксе, Гуглу бояться нечего? Так же не забываем, что на момент выхода Android даже потуг в тачориентированность в лице gnome3 и gtk3 не было и в помине. Тут скорее желание «тяп ляп и в продакшен» вместо пропихивания кучи патчей в апстрим.

KivApple ★★★★★
()
Ответ на: комментарий от a1batross

Ну вообще gpl требует раскрытия сорцев только конечным пользователям. Если смартфон никому не давать, а только издалека показать на презентации, то сорсы можно не открывать.

KivApple ★★★★★
()
Ответ на: комментарий от Stanson

Linux != GNU/Linux.

Понимаю, очень легко перепутать.

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

a1batross ★★★★★
()
Ответ на: комментарий от KivApple

Это понятно. Но понты надо чем-то подтверждать. :)

a1batross ★★★★★
()
Ответ на: комментарий от KivApple

Ты ведь понимаешь, что с текущим состоянием тачинтерфейсов и отсутствием мобильных приложений на линуксе,

Всё в порядке с тачинтерфейсами на линуксе, meegotouch по-прежнему опенсорц и работает замечательно. Ньюфаги могут её до qt5 ковырнуть, при желании.

Гуглу бояться нечего?

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

Однако, глядя на то, как под ведроид было испоганено ядро, изначальная цель гугла была всё-же в том, чтобы принципиально не допустить самой возможности сноса ведроида и установки нормальной ОС. Возможно, Гугл считает что теперь рынок полностью завоёван и эта цель потеряла свою значимость.

Stanson ★★★★★
()
Ответ на: комментарий от a1batross

Linux != GNU/Linux.

Я вообще-то сразу написал именно про накатывание GNU/Linux.

Понимаю, очень легко перепутать.

Ещё легче - читать невнимательно.

HAL нужен не только чтобы абстрагировать Android от тонкостей реализации драйверов и конкретного железа, но и чтобы обходить GPLv2.

Вот вообще насрать что там в ведроиде и зачем. Главное чтобы кончилась эта херня с намеренным говняканьем ядра для ведроида. Если производителям придётся вкорячивать mainline в свои поделия - это решит очень много проблем с установкой GNU/Linux на ведроидодевайсы.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Я вообще-то сразу написал именно про накатывание GNU/Linux.

Так речи о GNU/Linux не идёт.

Вот вообще насрать что там в ведроиде и зачем. Главное чтобы кончилась эта херня с намеренным говняканьем ядра для ведроида. Если производителям придётся вкорячивать mainline в свои поделия - это решит очень много проблем с установкой GNU/Linux на ведроидодевайсы.

Отчасти может быть, но далеко не так, как ты себе это воображаешь.

a1batross ★★★★★
()
Ответ на: комментарий от a1batross

Так речи о GNU/Linux не идёт.

Ты отвечал на сообщение, в котором речь шла исключительно о GNU/Linux. Ты его вообще читал?

Отчасти может быть, но далеко не так, как ты себе это воображаешь.

Мне ничего воображать не нужно. Я это всё самолично иногда палочкой тыкаю. Если гугль действительно будет использовать mainline ядро в своём ведроиде, то проблем с установкой GNU/Linux на ведроидодевайсы станет значительно меньше.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Ты отвечал на сообщение, в котором речь шла исключительно о GNU/Linux. Ты его вообще читал?

Ага. И сказал что к GNU/Linux их планы не имеют никакого отношения. Если они вообще воплотят эти планы в жизнь.

Я это всё самолично иногда палочкой тыкаю

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

Запустить GNU/Linux можно на любом устройстве так-то. Минимум работать будет – USB да WiFi, чтобы сделать из смартфона сервер. А вот дальше уже без костылей в виде libhybris не уйдёшь.

a1batross ★★★★★
()
Ответ на: комментарий от a1batross

А я вот тыкаю андроид далеко не палочкой, а руками.

А, понятно, так сразу бы и сказал. Я вот говно руками трогать брезгую.

Запустить GNU/Linux можно на любом устройстве так-то. Минимум работать будет – USB да WiFi, чтобы сделать из смартфона сервер.

На ванильном ядре не будет. Потому что ты не знаешь какие GPIO отвечают за подачу питания на USB да WiFi. А на ведроидном ядре вырвана с мясом даже такая невинная вещь как System V IPC, без которой куча софта просто не будет работать. Зачем это было сделано? Очевидно исключительно для того, чтобы нельзя было использовать гуглоядро для нормальной ОС.

А вот дальше уже без костылей в виде libhybris не уйдёшь.

На ведроидном ядре принципиально невозможно запустить xorg (даже тупо на fb, и это сделано гуглем специально) и ещё кучу всего. Потому что нужные для этого интерфейсы и пр. либо выдраны с корнем, либо изговняканы гуглем.

Поэтому, если гугль перейдёт на ванильное ядро, то хотя бы эти проблемы будут устранены. Т.к. гугль потратил много сил и средств на то чтобы сделать ведроидное ядро непригодным для использования в нормальной ОС я сильно сомневаюсь, что гугль это на самом деле сделает. Но если таки сделает - то это будет замечательно.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

А, понятно, так сразу бы и сказал. Я вот говно руками трогать брезгую.

Не привыкать. :(

Потому что ты не знаешь какие GPIO отвечают за подачу питания на USB да WiFi

А зачем, если есть сорцы ядра от производителя? Он же их как-то включает их.

А на ведроидном ядре вырвана с мясом даже такая невинная вещь как System V IPC

Ложь. Он просто включается в конфиге. Как и многое другое.

На ванильном ядре не будет

Конечно нет. Поэтому нужны сорцы ядра, чтобы обратно включить sysvipc, devtmpfs, отключить paranoid network, наверняка уже не нужен binder и так далее. В postmarketOS очень круто это решили, там специальный скрипт проверяет как настроено ядро и предлагает включить или выключить некоторые опции.

Но даже без них я заводил минимальный образ с busybox. Не GNU/Linux, но главное не Android! :)

Через него я потом прыгал в Gentoo, в котором уже OpenRC настройчиво попросил поддержку devtmpfs и sysvipc.

На ведроидном ядре принципиально невозможно запустить xorg (даже тупо на fb, и это сделано гуглем специально) и ещё кучу всего. Потому что нужные для этого интерфейсы и пр. либо выдраны с корнем, либо изговняканы гуглем.

Это делает не G*****, но именно он предлагает такое решение, да. А уже вендоры говнокодят так, чтобы нормальный линукс там не работал. Как я говорил, для этого там и нужен Hardware Abstraction Layer, чтобы не только Android отвязать от железа, но и обойти GPLv2. То есть вендоры не обязаны раскрывать свои драйвера от видео, в ядре минимальная обертка, а уже реальную работу делает то что находится между Android и ядром.

В этом плане mainline может помочь, но я не уверен, что там всё так просто будет, вендоры всё равно не будут мейнлайнить свои устройства, а просто брать github.com/torvalds/linux и уже на базе него создавать порт. G***** не станет их обязывать это делать.

a1batross ★★★★★
()
Ответ на: комментарий от a1batross

Ложь. Он просто включается в конфиге. Как и многое другое.

Нет, оно там именно выдрано с потрохами. Теми самыми патчами, которых 100500.

Поэтому нужны сорцы ядра

Которые обычно не собираются, потому что вендор вкорячил зависимости от своих блобов, а блобов не дал, а чаще их просто нет.

Но даже без них я заводил минимальный образ с busybox.

С единственным IO устройством в виде serial? Или там ещё SD удавалось через SPI запустить? А нет, на SD же питание надо подавать и контактик наличия опрашивать. SPI flash. Упс. Там же оязательно какой-нибудь кривой NAND неподдерживаемый ядром окажется. Ну и т.д. В общем, смысла в таком запуске почти никакого.

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

Всякие невидии это прекрасно проворачивают и с mainline ядром, без малейших проблем с GPLv2. Так что за отмазку вообще не катит. Всё это ведроидоговно сделано исключительно для того, чтобы принципиально невозможно было запустить нормальный линукс вместо ведроида используя ведроидное ядро. И с большой вероятностью это единственная причина.

вендоры всё равно не будут мейнлайнить свои устройства, а просто брать github.com/torvalds/linux и уже на базе него создавать порт.

Да пофиг. Если они будут как невидия свои сраные секретные драйвера в виде блобов для mainline делать, это на порядки упростит дело.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

Нет, есть конечно вендоры которые не выкладывают сорцы или выкладывают их сломанными. Но зачем покупать такие устройства? Вы же поощраете их.

Но как так получается, что у меня всегда ядра собирались? Было шесть штук разных устройств и на всех было всё прекрасно.

Нет, оно там именно выдрано с потрохами. Теми самыми патчами, которых 100500.

Покажи, пожалуйста, просто интересно.

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

Зачем сразу опускаться в теории заговора, если это может быть просто лень и низкооплачиваемая работа?

a1batross ★★★★★
()
Ответ на: комментарий от a1batross

Но зачем покупать такие устройства?

Никогда в жизни не покупал устройств на ведроиде. Вообще. И не собираюсь.

Покажи, пожалуйста, просто интересно.

Сцылку на гуглосурс что-ли не можешь найти?

Зачем сразу опускаться в теории заговора, если это может быть просто лень и низкооплачиваемая работа?

Если бы была лень и низкооплачиваемая работа, то получались бы ядра как в роутерах. Они, конечно, говно, а посмотрев на некоторые модификации китайских ковырятелей и блевануть можно, но таких проблем по запуску линуксячьего софта как с ведроидодевайсами на роутерах не бывает. А тут именно немало усилий приложено чтобы как можно дальше от mainline оказаться.

Stanson ★★★★★
()
Последнее исправление: Stanson (всего исправлений: 1)

Так что там, наконец смогу на dell streak 5 запустить десяточку андроида?

One ★★★★★
()
Ответ на: комментарий от a1batross

Есть девайсы на базе этих сорцов и линукс на них «работает».

Починил. busybox в serial console - это не работает. Работает - это когда просто накатываешь дебиан или слаку на вендорское ядро и не обнаруживаешь, что половина штатных интерфейсов ядра выключена, а вторая половина изговнякана.

Stanson ★★★★★
()

Вот оно, стейбл ABI!

Valeg ★★★
()
Ответ на: комментарий от Stanson

Не надо меня исправлять, потому что я не ошибся. Нет графики, ну и что? Но в отличие от тебя я знаю что не так с графикой в Linux и Android одновременно. Я не обвиняю кого-то конкретного в этом, потому что оно просто такое и ничего с этим не сделаешь. Зато нежручие сервера из них вполне получались, только я не понял зачем они мне. :)

Бтв, глянь в скриншоты, где-то у меня фотография с одним из девайсов на котором я запустил то ли Arch Linux ARM, то ли Gentoo, уже не помню.

a1batross ★★★★★
()
30 апреля 2020 г.
Ответ на: комментарий от Stanson

Тот кто хоть раз хотя-бы копался в исходниках ядра того же медиатека, тот больше в цирке не смеётся. Но завод fbdev и состояние «загружается» делается относительно просто

мануал https://wiki.postmarketos.org/wiki/Porting_to_a_new_device

мой порт на новое устройство https://gitlab.com/postmarketOS/pmaports/-/merge_requests/325

моё видео, как оно работает https://youtu.be/HsSwfyjGKv0

gtk3 ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.