>
Январь 2018
Пн Вт Ср Чт Пт Сб Вс
« Дек    
1234567
891011121314
15161718192021
22232425262728
293031  

Универсальный ROOT для любого Android смартфона.

Разработчик Chainfire, извeстный благодаря системе управления root-полномочиями SuperSU, а также приложениям FlashFire, Recently и CF.lumen, рассказывает, как он реализовал поддержку SuperSU для Google Pixel.

Image result for root android pixel

Чтобы приложения могли получить доступ root в системе, должно быть как минимум два компонента: бинарный файл su, в Linux-системах используемый для выполнения команд с правами root, и приложение для обработки запросов на root-доступ и вывода соответствующего уведомления на экран.

Ранние приложения для рутинга размещали эти компоненты в разделе system: бинарник su в /system/bin (или /system/xbin), а приложение (Superuser.apk или SuperSU.apk) — в /system/app. Но была в этом подходе проблема: обновление прошивки либо стирало их, либо просто не устанавливалось (если речь об инкрементальном обновлeнии). Тогда Chainfire решил размещать эти компоненты в RAM-диске, который загружается в оперативную память сразу после ядра. Такой подход абсолютно не мешал обновлениям и отлично работал до выхода Android 7.0 и смартфонов Pixel.

Оказалось, что RAM-диск в них используется только при загрузке в recovery, тогда как содержимое «системного» RAM-диска находится в разделе system. Причем сам раздел system подключается как корень, а не к каталогу /system. Чтобы решить эту проблeму, пришлось создать утилиту, которая формирует RAM-диск заново, модифицирует ядро, чтобы оно загружало RAM-диск. Более того, чтобы она правильно отработала, сама утилита должна загружаться из RAM-диска.

Ссылка на первоисточник

[Всего голосов: 17    Средний: 3.6/5]
Share Button

Вам может быть интересно также:

Last updated by at .

Leave a Reply

You can use these HTML tags

<a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">