Разгон android-устройства: все, что вам нужно знать

е под управлением Android.

Независимо от того, насколько быстро работают наши телефон ы, мы всегда желаем, чтобы они были чуточку быстрее. К счастью, Android позволяет вам сделать это. Этот процесс называется «разгон» - он означает, что главный процессор будет работать немного быстрее, чем обычно. Разогнать процессор очень легко, и это позволит вам получить дополнительные 30 процентов к его мощности. Ниже приводятся советы, как сделать разгон вашего Android-телефон а, чтобы он стал реально мощным телефон ом.

Как разогнать Android

Перед началом прочтите это

Прежде всего, мы хотим дать вам стандартное предупреждение. Разгон главного процессора вашего телефон а связан с определёнными рисками. Увеличение тактовой частоты процессора вызовет большее количество тепла и повышенный расход энергии. Конечно, не стоит полагать, что ваш телефон будет напоминать устройство, засунутое в огонь, или ваш аккумулятор будет испорчен, но выделение избыточного тепла может вызвать нестабильность и повлиять на время работы аккумулятора.

Основной момент – запастись временем. Не пытайтесь увеличить частоту процессора сразу на 30 процентов. Делайте это не спеша, и после каждого увеличения оценивайте стабильность системы. Если Android работает без нареканий, а уровень выделяемого телефон ом тепла и время работы аккумулятора приемлемы, и плюс, нет зависаний или странного поведения, то вы можете продолжить увеличивать тактовую частоту процессора. Если же дела пошли как-то странно, вернитесь к последней стабильной тактовой частоте.

Получение нужного ядра для разгона

Вы довольны результатами? Давайте продолжим. Единственное, что вам нужно для настройки параметров главного процессора вашего Android-телефон а – это так называемое ядро ОС, поддерживающее более высокую тактовую частоту. Отметим, что разгон процессора является основным элементом в моддинг-сообществе, так что недостатка в хороших ядрах точно не будет. Итак, вам нужно просто выбрать правильное ядро для вашей конкретной модели телефон а.

Потратьте немного времени на поиск нужного ядра для вашего устройства

Прежде всего, выясните номер модели вашего телефон а. Для этого нужно зайти в раздел «Настройки», далее в «О телефон е» и посмотреть, что там сказано. Также, вероятно, вы захотите записать данные о версии Android, установленной на вашем телефон е. Важный нюанс: для разгона главного процессора ваш телефон должен иметь root-права!

Читайте также: 14 полезных советов и хитростей для Android Marshmallow

Само собой, что этот процесс не будет покрываться гарантией, поэтому вы будете действовать на свой страх и риск. Кроме всего прочего, вам также надо будет установить в телефон пользовательский режим восстановления (также известный под именем «кастом рекавери»). Подробнее об этом смотрите ниже.

Вам необходимо установить пользовательский режим восстановления, например, TWRP или CWM

Замена ядра и разгон процессора занимают не так много времени, однако стоит потратить какое-то время на поиск нужного ядра. Некоторые сайты, например, XDA Developers, можно считать прекрасной площадкой для старта. Есть четыре аспекта, на которые вы обращаете внимание в ядре: 1) чтобы это ядро поддерживало разгон процессора; 2) чтобы оно было совместимо с вашей моделью телефон а; 3) чтобы оно работало в вашей версии Android; 4) чтобы оно имело положительные отзывы.

Чем большую популярность будет иметь ядро, тем легче будет получить помощь от сообщества в случае необходимости или же найти какие-либо предложенные параметры (если вы предпочитаете получать знания от усилий других людей, а не тратить на знания свои). В целом, чем больше отзывов будет о ядре, тем более информированное решение вы сможете принять.

Разгон ПО для вашего ядра

Некоторые ядра имеют соответствующее программное обеспечение, которое было разработано специально для того, чтобы помочь вам получить максимум пользы от ядра. В подобное ПО может входить обычный слайдер для разгона, регулятор настроек главного процессора, опции для уменьшения напряжения и т. д. Если у ядра, которое вы используете, имеется дополнительное приложение, то можете задействовать его. Если же нет, то тогда поищите в Play Store приложение для общего разгона (или менеджер для главного процессора) с хорошим рейтингом и положительными отзывами.

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

После того, как у вас появилось ядро для вашей конкретной модели телефон а, и вы убедились, что оно совместимо с вашей версией Android и поддерживает разгон процессора, можно двигаться дальше. Для этого практического занятия мы будем делать разгон рутованного Nexus 6 со стоковой версией Android 6.0 Marshmallow, используя ядро ElementalX.

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

Мы устанавливаем ядро ElementalX на наш стоковый Nexus 6

Как разогнать ваш Android-телефон

Ваш телефон должен иметь root-права для установки пользовательского ядра. Также вам необходимо установить пользовательский режим восстановления (ввиду того, что у вас не получится установить ядра с помощью стокового режима восстановления). Если для этого вам нужна помощь, воспользуйтесь нашим руководством как установить пользовательский режим восстановления. Несмотря на то, что руководство в этой ссылке рассчитано для Nexus 5, однако процесс используется один и тот же.

  1. Убедитесь, что у вас имеется резервная копия ваших данных. Вы можете сделать такую копию с помощью кастомного рекавери, с помощью любого приложения или ПК-базовых решений.

Сначала загрузите ядро на ваш Android

  1. После того, как вы выбрали подходящее ядро, скачайте его (а также любое ПО, которое сопутствует ему) на ваш Android (скачивание можно делать в папку «Загрузки»). Также вы можете скачать ядро на ваш компьютер и затем скопировать ZIP-файл в корневой каталог вашего телефон а (если есть такое желание), но это несложное сделать на вашем телефон е и через рекавери.

Сделайте перезагрузку для входа в режим «Быстрая загрузка», затем перейдите в режим «Восстановление»

  1. Отключите ваш телефон и войдите в режим «Быстрая загрузка». Это можно сделать, нажав одновременно на кнопки «Вкл.» и «Громкость вниз», хотя некоторые производители определяют другую комбинацию клавиш.
  2. Находясь в «Быстрой загрузке», используйте клавиши громкости для выделения режима «Восстановление» и нажмите на кнопку «Вкл.» для его выбора.

Нажмите на иконку «Установить»

  1. Теперь вы можете вводить ваш «кастом рекавери». Мы используем тип TWRP.
  2. Нажмите на иконку «Установить» (или на «установить ZIP» в CWM) и перейдите в папку, где находится сохранённый zip-файл ядра.

Найдите ядро, которое вы загрузили раньше

  1. Установите zip-файл ядра и дождитесь появления сообщения о том, что установка прошла успешно. Некоторые ядра (например, Elemental X в нашем случае) будут запускаться через серию диалоговых окон, наподобие приложения Install Wizard на вашем компьютере.

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

Установите ядро

  1. Очистите кэш после успешно проведённой установки ядра.

Очистите ваш кэш

  1. Пройдите в подраздел «Расширенные настройки» в режиме восстановления и нажмите на иконку «Исправить права доступа к файлам и разделам».

Иконка «Исправить права доступа к файлам и разделам» после установки

  1. Перезагрузите систему.

Изменение частоты главного процессора

Если вы не изменяли настройки главного процессора во время установки вашего пользовательского ядра, то теперь вы можете запустить менеджер процессора (или приложение для ядра). Если у вас нет уже установленного совместимого с вашим ядром ПО, вам нужно будет найти соответствующее приложение в Play Store.

В принципе, есть множество подобных приложений, и работают они прекрасно, но мы используем бесплатное приложение Kernel Adiutor. Вам придётся предоставить приложению для ядра разрешение на использование root-прав, а также, вероятно, придётся установить приложение BusyBox (которому тоже будут нужны root-права).

Как вы можете видеть, мы установили пользовательское ядро

Найдите настройки, отвечающие за контроль тактовой частоты главного процессора. В зависимости от того, какое приложение вы используете, вы можете выбрать максимальную частоту процессора из выпадающего меню, либо воспользоваться слайдером. Помните, что пользоваться им нужно не спеша. Используйте каждый уровень тактовой частоты на некоторое время, чтобы посмотреть, как он влияет на стабильность, время работы аккумулятора и уровень выделяемого тепла. Для начала увеличьте тактовую частоту на 10 процентов по сравнению с вашей текущей частотой и в дальнейшем повышайте её понемногу.

Выберите максимальную тактовую частоту главного процессора и наслаждайтесь приростом его мощности

Не удивляйтесь, если частота вашего главного процессора не достигнет нового параметра слишком быстро. Что вы делаете, когда проводите разгон процессора? Меняете его максимальную тактовую частоту. Так что процессор сможет достигнуть большей производительности в том случае, когда это будет необходимо.

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

Если вы сталкиваетесь с какой-либо нестабильностью с вашими новыми параметрами, просто вверитесь назад и немного уменьшите тактовую частоту процессора, а затем посмотрите, как пойдут дела.

Как вы можете видеть, наш Nexus 6 теперь работает на 20 процентов мощнее, чем обычно

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

Расскажите нам о том, чего вы добились, и насколько лучше стал ваш разогнанный Android теперь

Как разогнать и поднять тактовую частоту процессора в телефоне либо планшете под управлением Android.

Когда у меня появился первый компьютер, никому даже и в голову не могло прийти спросить, сколько ядер у его процессора. Однако прошло совсем немного времени, и появились двухъядерные процессоры, затем четырехъядерные и так далее. То же самое достаточно быстро случилось со смартфонами, однако не все понимают, для чего процессору смартфона иметь 8 ядер. Более того, многие считают, что Android-приложения для своей работы используют только одно ядро. Гэри Симс из Android Authority разобрался в этом вопросе и опубликовал свое объяснение.

Первое, что следует знать о мобильных ARM-процессорах, это то, что в восьмиядерных процессорах используется как минимум две разные архитектуры ядер. В современном 64-битном восьмиядерном процессоре будут использованы высокопроизводительные ядра Cortex-A72 вместе с энергоэффективными ядрами Cortex-A53. Такое сочетание называется big.LITTLE, и это отличает ARM-процессоры от тех, что используются для компьютеров. 8-ядерный процессор в смартфоне используется не для высокой производительности, а . Если мы это запомнили, тогда можно идти дальше.

Как используются многоядерные процессоры

Если нагрузить компьютер одной задачей, он отлично с ней справится, однако так в современном мире не бывает. И на компьютеры, и на смартфоны сваливается несколько задач одновременно, поэтому в сердце операционной системы, включая Android, сидит планировщик. Планировщик решает, каким задачам, в каком порядке и количестве будет уделено время процессора. Все планировщики разработаны по-разному и могут отдавать приоритет определенным типам задач.

Если устройство работает на процессоре с несколькими ядрами, это позволяет планировщику отправлять одну задачу на первое ядро, а другую — на второе. Чем больше ядер процессора, тем больше процессов смогут выполняться одновременно. Однако может ли многоядерный процессор помочь решить одну задачу быстрее? Может, если задача подразумевает разбиение. бывают однопоточными и многопоточными. Однопоточные программы не могут извлечь никакой выгоды от использования многоядерных процессоров, в то время как многопоточные программы приспособлены разбиваться на разные задачи, которые могут выполняться одновременно на разных ядрах.

Как это происходит в случае с Android

Android, можно сказать, создан для использования многоядерных процессоров, так как порой даже для выполнения однопоточной программы системе требуется запустить дополнительный процесс, что отчасти делает ее многопоточной. Помимо этого, есть большое количество задач, которые нужно одновременно выполнять, например, синхронизация. Однако перейдем вплотную к приложениям. Созданы ли они для работы с многоядерными процессорами?

Гэри Симс провел несколько тестов и не нашел ни одного приложения, которое использовало бы все 8 ядер на 100%. Так и должно быть, ведь, как мы помним, 8-ядерные процессоры применяются ради энергоэффективности. Система выбирает подходящую комбинацию ядер и, когда требуется нагрузка, подключает высокопроизводительные ядра, а когда есть возможность сэкономить энергию, в ход идут энергоэффективные. Однако в некоторых случаях работают и те и другие.

Тесты

Для того чтобы проверить, как используются ядра процессора при выполнении различных приложений, Гэри Сименс создал программу, считывающую эти данные. Затем он протестировал несколько приложений на устройстве с четырехъядерным Snapdragon 801 и на устройстве с восьмиядерным Snapdragon 615. Совместно с Робертом Триггсом из Android Authority были созданы графики работы ядер этих двух процессоров с одним и тем же приложением.

Первым на тест отправился браузер Chrome. Если бы эта программа являлась однопоточной, стоило бы ожидать постоянной нагрузки двух ядер с периодически появляющейся активностью остальных. Однако большую часть времени Chrome использовал все четыре ядра.

В случае с восьмиядерным Snapdragon 615 браузер Chrome большую часть времени использовал 7 ядер, иногда 8, а иногда 6 или 4. Так как Snapdragon 615 — это big.LITTLE-процессор, то и ядра его используются иначе. Вы можете видеть на графике, как растет нагрузка на одном ядре в то время, как она падает на другом.

Chrome — многопоточное приложение, а что с остальными? Точно таким же образом были проверены приложения Gmail, YouTube Riptide GP2 и Temple Run 2. Игра Temple Run 2 нагрузила только одно ядро, однако при запуске на процессоре MediaTek нагрузка была равномерно распределена. Остальные приложения подтвердили чистоту эксперимента с Chrome. Была также прослежена работа AnTuTu, и на графике четко видно, как искусственно создается нагрузка на все ядра процессора.

Вывод

Если вы еще когда-нибудь услышите, что Android-смартфону не нужен восьмиядерный процессор и что приложения используют одно ядро, знайте — это не так. Как используются ядра процессора во время работы приложений, вы могли видеть на графике. И думаю, вы запомнили, что 8-ядерные процессоры используют в смартфонах не для рекордного быстродействия, а для разумного использования ресурсов, давая возможность находить компромисс между мощностью и энергоэффективностью.

По материалам Android Authority

Всем доброго времени дорогие друзья, знакомые, читатели и прочие личности. Сегодня посмотрим как ускорить Андроид, всякие там приложения под него и игры вроде PUBG Mobile в том числе

Для многих не секрет, что мы любим чего-то покрутить и поотмизировать, что порой выливается в разного рода интересные интересности или странные странности. Впрочем, часто усилия приносят страшную такую пользу и Ваши устройства начинают бегать на порядок быстрее.

Сейчас мы наблюдаем занимательную историю, когда развитие железной компьютерной индустрии достигло некоего своего логического (и не очень) пика и все технологии (в том числе программные) ринулись в сферу мобильных устройств.

Вот о последних сегодня и поговорим.

Вводная

Все наверное слышали про всякие там режимы разработчика в Android, которые позволяют что-то такое там хитрое нашаманить в настройках.

Эти настрои действительно существуют и хитрое нашаманить реально позволяют. Вопрос лишь в том, - будет ли это на пользу и не очень, - да и кому, собственно, - Вам, Вашей батареи, производительности, или некому разработчику.

Тем не менее, - ведь попытка не пытка. Во-первых, телефон можно сделать быстрее, во-вторых и в трехмерных играх всё будет бегать побыстрее (с выходом PUBG Mobile ) все прямо помешались на этой идее), да и вообще, - интересно и приятно.

Что касается возможных побочных эффектов, - тут всё просто. В некоторых случаях всё конечно идет здорово, весело и всячески на пользу. Производительность растёт, ускорение присутствует, PUBG летает, лаунчер телефона счастлив безмерно, а Вы, как его владелец, - пишите хорошие комментарии под этой статьёй, рассказываете о ней друзьям и всё такое прочее-разное.

Во всех остальных же случаях, стоит понимать, что многое зависит от железа в Вашем Android-телефоне, планшете или на чём Вы там планируете всё это запускать и использовать, - так тут вопрос техники.

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

Как ускорить Андроид и запустить настройки разработчика

  • Переходим в настройки и находим вкладку "О телефоне ";
  • Там где-то прячется версия операционной системы, ядра или номер сборки (см.скриншоты ниже);
  • Старательно тыркаем по ней несколько раз, пока не получим обидное "Вы стали разработчиком ".

Теперь где-то в настройках (возможно отдельно) у Вас пункт, который называется "Для разработчиков ". Вот он там нам и нужен.

Ах да, скриншоты по включению (если с первого раза не получается, то потыкайте несколько раз по различным пунктам, вроде сборка/версия и тп, - должно помочь):

Собственно, тут и живет вся наша оптимизация, здесь же можно понять как ускорить Андроид и понять хитрости, чтобы Ваш телефон / планшет или устройство, работали быстрее, а во всякие игры, вроде PUBG Mobile игралось комфортнее.

Как с этим взлетать: как ускорить Андроид, игры вообще и PUBG Mobile в частности

Мы кстати уже немного писали на эту тему, когда рассказывали про ограничение числа процессов в статье " ":

Итого нам требуется "Многопроцессорный WebView ", - это один из крайне важных пунктов, который ускорит систему вцелом, хотя и может негавтивно сказаться на времени работы от батареи.

Как ускорить Андроид еще сильнее? И визуально понятно? Тоже самое касается пункта "оптимизация SD карты ", если конечно она у Вас вообще есть (карта) и пункт вообще).

Дальше, если Вы не любитель всяческих там анимаций, то крайне рационально будет отключить анимацию окон, переходов и убрать длительность анимации. Это на порядок сэкономит ресурсы, а визуально (субъективно и по ощущениям) у Вас телефон прямо начнет летать вообще.

Еще больше ускорения и оптимизации

Что касается аппаратного ускорения и GPU для компоновки экрана, - считается этот пункт актуален только на быстрых графических ядрах и только для 2D -приложений.

На деле это не всегда так, плюс ко всему, помимо всяких там PUBG Mobile и других 3-х мерных игр для Android , которые Вы и пытаетесь ускорить, собственно, - дело в том, что у Вас всегда задействован процессор как таковой, который работает с интерфейсом и процессами в фоне, поэтому перекладывая часть функционала на Вы можете получить некоторый прирост производительности.

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

Послесловие

На сим всё, теперь Вы знаете как ускорить Андроид. Традиционно, - это не моветон и нюансов может быть много. У кого-то сие возымеет эффект, а у кого-то начнет кушать батарею. Кто-то вообще не заметить разницы и не поймет зачем оно вообще нужно.

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

Такие дела. Если интересно, - пишите в комментариях, - мы разовьем тему и расскажем как тем же Kernel Auditor "ом реально ускорить любой девайс, исходя из глубокого настройка ядра любого телефона.

Как и всегда, если есть какие-то мысли, вопросы, дополнения и всё такое прочее, то добро пожаловать в комментарии к этому материалу.

Программа для управления частотой процессора на устройстве Андроид с целью увеличения производительности или увеличения времени работы от батареи.
Программа не умеет (и не должна уметь) самостоятельно разгонять процессор, она только управляет им. Из особенностей стоит отметить поддержку профилей (при отключенном экране, при подключенной зарядке, при определенном % заряда батареи, разговоре по телефону). Программе для работы нужен root. Для того, чтобы вы могли двигать ползунки, особенно в большую сторону, необходимо кастомное ядро с разгоном. Оно может быть установлено как отдельно, так и при установки кастомной прошивки.
Какие доступны режимы и частоты в программе, зависит только от того ядра, что у вас стоит.

Предустановленные режимы работы процессора Set CPU (наличие или отсутствие зависит от ядра):

Interactive - интерактивный режим, гоняет частоту ЦП в реальном времени, почти всегда на полную производительность.
Smartass - режим, основанный на Interactive. Отличается более быстрым снижением частоты в простое, а также понижает частоту до минимума при выключенном экране.
Conservative - работает на самой возможно низкой частоте ЦП и повышает пошагово, при необходимости.
Userspace - позволяет изменять частоту ЦП, либо в ручном режиме, либо динамически, по усмотрению программного обеспечения.
Powersave - понижает частоту ЦП до минимально возможного уровня.
Ondemand - работает на самой возможно низкой частоте ЦП и повышает на максимальную по достижении значения загрузки ЦП - 100%.
Performance - устанавливает максимальное значение частоты ЦП, запрещая изменять значение частоты в сторону понижения.

Скачать программу SetCPU на Андроид вы можете по ссылке ниже.

Разработчик: MichaelHuang
Платформа: Android (зависит от устройства)
Язык интерфейса: Русский (RUS) - v3.0.9
Root: Обязателен
Состояние: Full



Мы уже не раз писали о кастомных прошивках, root-приложениях и альтернативных загрузочных меню. Все это стандартные темы в сообществе Android-хакеров, однако, кроме всего перечисленного, существует еще такое понятие, как «кастомное ядро», которое может дать практически безграничные возможности управления смартфоном и его железом на самом низком уровне. В этой я статье я расскажу, что это такое, зачем нужно и как выбрать правильное кастомное ядро.

Custom kernel?

Что такое кастомное ядро? Как мы все знаем, Android представляет собой пирог, состоящий из трех базовых слоев: ядро Linux, набор низкоуровневых библиотек и сервисов и виртуальная машина Dalvik, поверх которой работает графическая оболочка, высокоуровневые инструменты и сервисы, а также почти все приложения, установленные из маркета. Создатели большинства альтернативных кастомных прошивок обычно работают только с двумя верхними слоями, добавляя функции в графическую оболочку (например, кнопки в шторке), изменяя ее (движок тем в CyanogenMod), а также добавляя новые системные сервисы (эквалайзер в CyanogenMod) и оптимизируя существующие.

Авторы популярных прошивок также по мере возможностей вносят изменения в ядро Linux: оптимизируют (сборка с более агрессивными флагами оптимизации компилятора), включают в него новую функциональность (например, поддержку шар Windows), а также вносят другие изменения вроде возможности поднимать частоту процессора выше предусмотренной производителем. Зачастую все это остается за кадром, и многие пользователи кастомных прошивок даже не подозревают об этих возможностях, тем более что тот же CyanogenMod поставляется с кастомным ядром только для ограниченного круга девайсов, для которых доступны как исходники родного ядра, так и возможность его замены. Например, почти все прошивки CyanogenMod для смартфонов Motorola используют стандартное ядро - заменить его на свое невозможно из-за непробиваемой защиты загрузчика.

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

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

Умный регулировщик

В SoC’ах OMAP35XX, используемых, например, в Galaxy S II и Galaxy Nexus, есть функция SmartReflex, которая выполняет роль умной системы регулировки вольтажа при изменении нагрузки на процессор. По сути, она избавляет от необходимости тонкого тюнинга вольтажа пользователем.

Оптимизации

Зачастую основной целью сборки кастомного ядра становится оптимизация производительности. Обычно вендор мобильной техники старается сохранить баланс между производительностью и стабильностью работы, поэтому даже хорошие техники оптимизации, способные существенно поднять скорость работы девайса, могут быть отвергнуты производителем только на основании того, что после их применения некоторые приложения начали падать каждый десятый запуск. Само собой, энтузиастов такие мелочи не смущают, и многие из них готовы применить к ядру собственной сборки любые опции компилятора, алгоритмы энергосбережения и задрать частоту процессора настолько высоко, насколько только выдерживает девайс. Среди всех оптимизационных техник наиболее распространены четыре:



Еще один тип оптимизации: изменение стандартного планировщика ввода-вывода. Ситуация на этом поле еще более интересная, так как вместо того, чтобы разобраться в принципах работы планировщиков, некоторые сборщики ядер просто читают в Сети документы по I/O-планировщикам для Linux и делают выводы. Среди пользователей такой подход распространен еще более сильно. На самом деле почти все самые производительные и умные Linux-планировщики совершенно не подходят для Android: они рассчитаны на применение с механическими хранилищами данных, в которых скорость доступа к данным разнится в зависимости от положения головки. Планировщик использует разные схемы объединения запросов в зависимости от физического положения данных, поэтому запросы к данным, которые располагаются близко к текущему положению головки, будут получать больший приоритет. Это совершенно нелогично в случае с твердотельной памятью, которая гарантирует одинаковую скорость доступа ко всем ячейкам. Продвинутые планировщики принесут на смартфоне больше вреда, чем пользы, а лучший результат покажут самые топорные и примитивные. В Linux есть три подобных планировщика:

  • Noop (No operation) - так называемый не-планировщик. Простая FIFO очередь запросов, первый запрос будет обработан первым, второй вторым и так далее. Хорошо подходит для твердотельной памяти и позволяет справедливо распределить приоритеты приложений на доступ к накопителю. Дополнительный плюс: низкая нагрузка на процессор в силу ну очень простого принципа работы. Минус: никакого учета специфики работы девайса, из-за чего могут возникнуть провалы производительности.
  • SIO (Simple I/O) - аналог планировщика Deadline без учета близости секторов друг к другу, то есть разработанный специально для твердотельной памяти. Две главные изюминки: приоритет операций чтения над операциями записи и группировка операций по процессам с выделением каждому процессу кванта времени на выполнение операций. В смартфонах, где важна скорость работы текущего приложения и преобладание операций чтения над записью, показывает очень хорошую производительность. Доступен в Leankernel, ядре Matr1x для Nexus 4 и SiyahKernel.
  • ROW (READ Over WRITE) - планировщик, специально разработанный для мобильных устройств и добавленный в ядро всего несколько месяцев назад. Основная задача: первоочередная обработка запросов чтения, но справедливое распределение времени и для запросов записи. Считается лучшим на данный момент планировщиком для NAND-памяти, по умолчанию используется в Leankernel и Matr1x.

Стоит сказать, что почти все стандартные прошивки и половина кастомных до сих пор используют ядро со стандартным для Linux планировщиком CFQ, что, впрочем, не так уж и плохо, поскольку он умеет правильно работать с твердотельными накопителями. С другой стороны, он слишком сложен, создает бОльшую нагрузку на процессор (а значит, и батарею) и не учитывает специфику работы мобильной ОС. Еще один популярный выбор - это планировщик Deadline, который не хуже SIO, но избыточен. Посмотреть список доступных планировщиков можно с помощью такой команды:

# cat /sys/block/*/queue/scheduler

Для изменения применяется такая (где row - это имя планировщика):

# for i in /sys/block/*/queue/scheduler; do echo row > $1; done

Некоторые сборщики ядер применяют и другой вид оптимизации, связанный с вводом-выводом. Это отключение системного вызова fsync, применяемого для принудительного сброса изменившегося содержимого открытых файлов на диск. Существует мнение, что без fsync система будет реже обращаться к накопителю и таким образом удастся сохранить время процессора и заряд батареи. Довольно спорное утверждение: fsync в приложениях используется не так уж и часто и только для сохранения действительно важной информации, зато его отключение может привести к потере этой же информации в случае падения операционной системы или других проблем. Возможность отключить fsync доступна в ядрах franco.Kernel и GLaDOS, а для управления используется файл /sys/module/sync/parameters/fsync_enabled, в который следует записать 0 для отключения или 1 для включения. Повторюсь, что использовать эту возможность не рекомендуется.

Добавляем в ядро новые функции

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

В основном это различные драйверы и файловые системы. Например, некоторые ядра включают в себя поддержку модуля CIFS, позволяющего монтировать Windows-шары. Такой модуль есть в ядре Matr1x для Nexus S, faux123 для Nexus 7, SiyahKernel и GLaDOS. Сам по себе он бесполезен, но в маркете есть несколько приложений, позволяющих задействовать его возможности.

Еще одна полезность - это включение в ядро драйвера ntfs-3g (точнее, в пакет с ядром, сам драйвер работает как Linux-приложение), который необходим для монтирования флешек, отформатированных в файловую систему NTFS. Этот драйвер есть в ядрах faux123 и SiyahKernel. Обычно он задействуется автоматически, но если этого не происходит, можно воспользоваться приложением StickMount из маркета.

Многие ядра также имеют в своем составе поддержку так называемой технологии zram, которая позволяет зарезервировать небольшой объем оперативной памяти (обычно 10%) и использовать ее в качестве сжатой области подкачки. В результате происходит как бы расширение количества памяти, без каких-либо серьезных последствий для производительности. Доступно в Leankernel, включается с помощью Trickster MOD или командой zram enable.

Последние две интересные функции - это Fast USB charge и Sweep2wake. Первая - это не что иное, как принудительное включение режима «быстрой зарядки», даже если смартфон подключен к USB-порту компьютера. Режим быстрой зарядки доступен во всех более-менее новых смартфонах, однако в силу технических ограничений он не может быть включен одновременно с доступом к карте памяти. Функция Fast USB charge позволяет включить этот режим всегда, отключив при этом доступ к накопителю.

Sweep2wake - это новый способ будить устройство, изобретенный автором Breaked-kernel. Смысл его в том, чтобы включать смартфон, проведя пальцем по клавишам навигации, располагающимся ниже экрана, либо по самому экрану. Это действительно удобная функция, но в результате ее включения сенсор будет оставаться активным даже во время сна устройства, что может заметно разряжать батарею.

Разгон, вольтаж и энергосбережение

Разгон популярен не только среди владельцев стационарных компов и ноутбуков, но и в среде энтузиастов мобильной техники. Как и камни архитектуры x86, процессоры и графические ядра мобильной техники отлично гонятся. Однако сам способ разгона и предпринимаемые для его осуществления шаги здесь несколько другие. Дело в том, что стандартные драйверы для SoC’ов, отвечающие за энергосбережение и изменение частоты процессора, обычно залочены на стандартных частотах, поэтому для тонкого тюнинга приходится устанавливать либо альтернативный драйвер, либо кастомное ядро.

Почти все более-менее качественные и популярные кастомные ядра уже включают в себя разлоченные драйверы, поэтому после их установки возможности управления «мощностью» процессора значительно расширяются. Обычно сборщики кастомных ядер делают две вещи, влияющие на выбор частоты. Это расширение частотного диапазона за рамки изначально заданных - можно установить как более высокую частоту процессора, так и очень низкую, что позволяет сохранить батарею и увеличить градацию частот, например, вместо трех возможных частот предлагается на выбор шесть. Второе - это добавление возможности регулировки вольтажа процессора, благодаря чему можно снизить напряжение процессора на низких частотах для сохранения заряда батареи и повысить на высоких для увеличения стабильности работы.

Всем этим можно управлять с помощью известной платной утилиты SetCPU или же бесплатной Trickster MOD. Рекомендации по управлению все те же, что и для настольных систем. Нижнюю частоту процессора лучше установить минимальной, но не ниже 200 МГц (чтобы избежать лагов), верхний порог повышается постепенно с тестированием стабильности работы, при падении которой рекомендуется немного поднять вольтаж для данной частоты. Каких-то рекомендаций по вольтажу нет, так как каждый процессор уникален и значения будут для всех разными.


Кроме изменения частот, сборщики зачастую добавляют в ядро новые алгоритмы управления энергосбережением (автоматическим управлением частотой процессора), которые, по их мнению, могут показать лучшие результаты в сравнении со стандартными. Почти все из них базируются на используемом по умолчанию в новых версиях Android алгоритме Interactive, суть которого заключается в том, чтобы резко поднять частоту процессора до максимальной в случае повышения нагрузки, а затем постепенно снижать до минимальной. Он пришел на смену используемому раньше алгоритму OnDemand, который плавно регулировал частоту в обе стороны соразмерно нагрузке, и позволяет сделать систему более отзывчивой. Сборщики альтернативных ядер предлагают на замену Interactive следующие алгоритмы:

  • SmartAssV2 - переосмысление алгоритма Interactive с фокусом на сохранение батареи. Основное отличие в том, чтобы не дергать процессор на высокие частоты в случае кратковременных всплесков нагрузки, для которых хватит и низкой производительности процессора. По умолчанию используется в ядре Matr1x.
  • InteractiveX - тюнингованный алгоритм Interactive, главная особенность которого в залочке процессора на минимальной указанной пользователем частоте и обесточивании второго ядра процессора во время отключения экрана. По умолчанию используется в Leankernel.
  • LulzactiveV2 - по сути, изобретенный заново OnDemand. Когда нагрузка на процессор превышает указанную (по умолчанию 60%), алгоритм поднимает частоту на определенное число делений (по умолчанию 1), при понижении нагрузки - опускает. Особый интерес представляет тем, что позволяет самостоятельно задавать параметры работы, поэтому подходит для прожженных гиков.

Вообще, сборщики ядер очень любят придумывать новые алгоритмы энергосбережения по причине простоты их реализации, поэтому можно найти еще с десяток других. Большинство из них полный шлак, и при выборе планировщика следует руководствоваться правилом: либо один из трех описанных выше, либо стандартный Interactive, который, кстати, очень неплох. Сделать выбор можно с помощью все той же Trickster MOD.

Интерфейсы управления

Большинство популярных кастомных ядер включают в себя несколько механизмов тонкого управления различными параметрами драйверов, наиболее распространены из которых ColorControl, GammaControl, SoundControl и TempControl.

Первые два интерфейса доступны практически везде, включая ядра CyanogenMod, вторые два - в Leankernel и, может быть, в других. Так или иначе, всеми ими можно управлять с помощью Trickster MOD.

Ядра

Какое же ядро выбрать? На этот вопрос нет однозначного ответа, и не потому, что «каждому свое», а потому, что в мире существует огромное количество Android-устройств и почти столько же различных ядер. Тем не менее есть несколько популярных ядер, которые разрабатываются сразу для нескольких устройств. Так или иначе многие из них я упоминал по ходу повествования, здесь же приведу их краткое описание.

  • Leankernel - ядро для Galaxy Nexus, Nexus 7 и Galaxy S III. Основной акцент при разработке делается на простоту и скорость работы. Алгоритм энергосбережения: InteractiveX V2, планировщик I/O: ROW, все перечисленные выше интерфейсы управления, поддержка Fast USB charge, Swap и zram, гибкие возможности разгона CPU и GPU. Одно из лучших ядер. Настраивается с помощью с помощью Trickster MOD.
  • Matr1x (http://goo.gl/FQLBI , goo.gl/ZcyvA) - ядро для Nexus S и Nexus 4. Простое и неперегруженное ядро. Поддержка разгона CPU и GPU, GammaControl, Fast USB Charge, Sweep2wake, планировщики I/O: SIO, ROW и FIOPS. Твики производительности. Настраивается с помощью Trickster MOD.
  • Bricked-Kernel (http://goo.gl/kd5F4 , goo.gl/eZkAV) - простое и неперегруженное ядро для Nexus 4 и HTC One X. Оптимизации для Snapdragon S4 и NVIDIA Tegra 3, переработанный режим энергосбережения для Tegra 3, возможность разгона, алгоритм энергосбережения: тюнингованный OnDemand (доступен и Interactive).
  • SiyahKernel - ядро для Galaxy S II и S III. Гибкие возможности разгона, автоматическая калибровка батареи, улучшенный драйвер сенсорного экрана, алгоритмы энергосбережения: smartassV2 и lulzactiveV2, планировщики I/O: noop, deadline, CFQ, BFQV3r2 (по умолчанию), V(R), SIO. Драйверы CIFS и NTFS (с автомонтированием). Конфигурируется с помощью ExTweaks.
  • franco.Kernel - ядро для Nexus S, Galaxy Nexus, Nexus 4, Nexus 7, Nexus 10, Galaxy S III, Galaxy Note, Optimus One и One X.

Возможности ядра сильно разнятся от устройства к устройству, поэтому подробности придется смотреть на месте. Тем не менее, прошивая это ядро, ты получишь возможность разгона, тюнинга драйверов, отличную производительность, а также поддержку различных алгоритмов энергосбережения и планировщиков. По сути, ядро включает в себя почти все описанные в статье твики. Считается одним из лучших доступных ядер. Имеется приложение для автоматического обновления franko.Kernel Updater. Конфигурировать можно с помощью Trickster MOD.

Как установить?

Все ядра распространяются в стандартных для Android ZIP-архивах, которые следует прошивать через консоль восстановления точно так же, как альтернативные прошивки. Обычно ядра совместимы с любыми прошивками, поэтому, подобрав нужное ядро, его можно смело устанавливать. Единственное, на что следует обратить внимание, - это версия Android, с которой обеспечена совместимость ядра. Оно может как подойти ко всем доступным для устройства версиям Android, так и работать только с одной (разработчик обычно явно говорит об этом). Перед прошивкой обязательно сделай бэкап текущей прошивки с помощью все той же консоли восстановления. Если что-то пойдет не так, ты всегда сможешь откатиться.

Выводы

Как ты смог убедиться, кастомные ядра обладают множеством преимуществ перед ядрами, используемыми в стандартных или сторонних прошивках. А что еще более важно - необязательно знать все тонкости Android, чтобы их использовать, достаточно скачать и установить ZIP-архив.