Как задействовать все ядра на андроиде. Android-приложения работают лишь на одном ядре — правда или вымысел

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

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

Вы должны разогнать свой android смартфон/планшет, если хотите получить больше мощности, так как под разгоном мы понимаем: увеличение частоты/скорости процессора для достижения большей производительности. Таким образом, операция разгона применяется на смартфоне или планшете так же, как и на ПК или ноутбуке, и представляет собой увеличение частоты процессора; хорошо, что здесь почти невозможно сжечь разгоном процессор телефона (особенно, если вы будете следовать и использовать специальные руководства), так как у мобильных процессоров большое количество механизмов безопасности, для предотвращения процессора от выгорания, если сравнить с процессорами компьютера.

Таким образом, разгон Android это безопасно ? Ну, мы можем сказать, да, хотя вы должны разогнать только 10-20% стоковой частоты или же устройство столкнется с другой проблемой: разрядка аккумулятора. Во всяком случае, скажем, вы разгоняете телефон с 1 ГГц до 1,5 ГГц; это не означает, что android-устройство будет постоянно работать на частоте 1,5 ГГц, так как эта частота будет использоваться только в случае необходимости (запуск игр или нескольких приложений, просмотр HD фильмов или запуск 3D-инструментов).

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

Разгон – подготовка

Разгон частоты процессора — это неофициальным операция, которая не имеет ничего общего с Android, Google или производителем вашего телефона. Поэтому, перед применением этого метода вы должны подготовить устройство. К сожалению, здесь присутствуют и негативные аспекты, имеющие отношение к гарантии: она будет аннулирована. Тем не менее, если вы собираетесь разогнать устройство, сначала прочитайте и выполните пункты из следующего списка.

  • Получите рут-права на телефоне. Увеличение производительности процессора может быть выполнено только если вы установите собственное ядро (kernel); и делать такие вещи можно сначала разблокировав систему смартфона/планшета.
  • Получив корневой доступ, вы также получите доступ к внутренней системе телефона (заводские ограничения будут сняты), поэтому гарантия станет недействительной.
  • Вы можете восстановить гарантию вернув назад стоковую прошивку Android или путем обновления официальной ОС Android.
  • Замените стоковый образ восстановления на пользовательский — CWM или TWRP. Стоковый recovery не может быть использован при попытке прошить ядро, поэтому пользовательский recovery должен быть предварительно установлен.
  • Обратите внимание, что многие пользовательские прошивки уже имеют пользовательское ядро, которое поддерживает разгон; так что если устройство в настоящее время работает на пользовательской прошивке, то разгон может быть уже включен — в этом случае вам не придется прошивать новое ядро.
  • Важное значение имеет резервное копирование данных, которые хранятся во внутренней памяти android-устройства, так как обычно требуется делать вайп (при установке пользовательской прошивки или пользовательского ядра).
  • Кроме того, будет хорошей идеей для сохранения текущей прошивки — вы будете иметь возможность восстановить ее после разгона.
  • Потребуется компьютер, телефон и USB-кабель.
  • На компьютере вам придется установить драйверы телефона и остановить антивирусную программу.
  • Вы должны зарядить батарею смартфона/планшета перед началом процесса, и также нужно включить опцию отладки по USB.

Это все; теперь вы готовы разогнать android-устройство, давайте посмотрим, как это сделать:

Итак, как уже было сказано, потребуется пользовательское ядро. Таким образом, вы должны будете изучить подходящее руководство, которое может быть безопасно применено на устройстве; не устанавливайте ядро, не получив всей нужной информации, так как вы повредите программное обеспечение телефона.

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

Теперь, после включения возможности разгона, вам нужно скачать одно из этих приложений: SetCPU, No-frills CPU Control или IncrediControl; установить приложение на устройство и запустить. Следуйте указаниям на экране, для того, чтобы увеличить частоту процессора, перезагрузитесь и это все.

Мы уже не раз писали о кастомных прошивках, 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-архив.

Многие привыкли подключать смартфоны к заряднику каждый вечер. Сегодня это норма. Развиваются технологии, оптимизируется Android, производители нашпиговывают свои аппараты hi-end начинкой, но при этом, как будто сговорившись, очень неохотно увеличивают емкость аккумуляторов, издевательски балансируя на том самом уровне автономии в один световой день. Но не будем поднимать тему о заговоре маркетологов, в этой статье мы раскажем об оптимизации того, что имеем, и всех наиболее эффективных и безопасных способах улучшить энергосбережение смартфона как минимум на 50%.

ЧАСТЬ 1. ЖЕЛЕЗО

Беспроводные сети и GPS

Запомни: хочешь сэкономить энергию - отключай лишних потребителей, то, чем в данный момент не пользуешься. Например, оставленные включенными беспроводные сети Wi-Fi и Bluetooth постоянно сканируют пространство и ищут доступные точки для подключения или устройства для спарринга; включенная «передача данных» (мобильный интернет) позволяет многочисленным приложениям постоянно «ломиться» в сеть для обновления своих данных и отправки запросов, дополнительно загружая процессор и опустошая проплаченный трафик или кошелек; включенная геолокация (GPS, ГЛОНАСС, определение координат по беспроводным сетям) помогает постоянно отслеживать твое положение, выполняя запросы любопытных приложений. Все это может потреблять значительную часть заряда аккумулятора, поэтому «вымыл руки, закрыл кран», ну в смысле - нажал на кнопку и отключил потребителя.

Мобильная сеть

Уровень приема мобильной сети оказывает сильное влияние на сохранение заряда. Чем слабее уровень принимаемого сигнала (меньше делений индикатора антенны на экране), тем больше аппарат тратит энергии на усиление и поддержание этого сигнала. Поэтому в зонах неуверенного приема сигнала (в поезде, к примеру) лучше включать режим «В самолете», тем самым отключая радиомодуль устройства. Аналогично можно поступать вечером, отключая радиомодуль на ночь.

Проблема выбора: 2G или 3G Рассматривая характеристики любого телефона, ты, наверное, замечал, что производители всегда указывают время автономной работы в сетях 3G меньше, чем в сетях 2G. Это объясняется тем, что сети 3G многоканальны и обеспечивают более высокое качество и надежность соединения (безразрывный переход от одной станции к другой). Поэтому, если тебя не пугают кратковременные потери сигнала и чуть худшее качество разговора при выходе из подземного перехода (хотя это зависит и от множества других факторов), можешь в настройках режима сети (Настройки → Еще →Мобильные сети → Тип сети) выбирать «только 2G» (only GSM) и экономить до 20% на связи с сетью.

Кроме того, если ты находишься в зоне плохого приема сети 3G, а на аппарате выбран автоматический режим «2G/3G», аппарат будет постоянно пытаться подключиться к сети 3G, даже если ее сигнал в несколько раз слабее сигнала 2G. Стоит ли говорить, что такие постоянные скачки требуют значительного расхода энергии, которого также можно избежать.

Однако, когда речь заходит о передаче данных (подключении к интернету), ситуация меняется на противоположную. При болееменее значительном трафике предпочтительнее использовать сети 3G или Wi-Fi вместо 2G. На первый взгляд это кажется спорным утверждением, но дьявол кроется в деталях: во-первых, передача данных в сети 2G (по технологии EDGE) требует на 30% больше энергии, чем в сети 3G, и лишь на 10% меньше, чем потребляет Wi-Fi; во-вторых, скорость передачи данных в сети 3G (HSPA) до 170 раз выше скорости в сети 2G (EDGE), не говоря уже о Wi-Fi, где разница будет в 600 раз. Это означает, что для скачивания той или иной информации устройству потребуется меньше времени, а значит, и меньше энергии.

Простой пример: ты хочешь скачать несколько песен общим размером 30 Мб. С помощью EDGE на это уйдет 30 Мб * 8 / 0,08 Мбит/с / 60 = 50 мин, c помощью HSPA - 30 Мб * 8 / 14 Мбит/с = 17 с, ну а с помощью Wi-Fi - всего 30 Мб * 8 / 50 Мбит/с = 5 с. Теперь, умножив время скачивания на среднее потребление того или иного режима, получим: для EDGE - 300 мА * 50 мин / 60 = 250 мА ч; для HSPA - 210 мА * 17 с / 60 / 60 = 1 мА ч; для Wi-Fi - 330 мА * 5 с / 60 /60 = 0,5 мА ч. В конечном итоге все будет зависеть от объема данных: чем он больше, тем больше будет экономия при использовании более скоростной сети.

Вывод.

При упоре на голосовые вызовы и редком обращении в интернет (например, только обновление погоды и чтение новостей) предпочтительней использовать режим 2G, он даст наибольшую экономию энергии. При частом использовании интернета с большим объемом трафика (просмотр страниц с картинками, работа с почтовыми вложениями, скачивание файлов) предпочтительнее использовать режим 3G. В качестве компромиссного решения при необходимости можешь менять настройки сети 2G/3G, используя панель быстрого доступа или виджеты.

Датчики и сенсоры

Современные телефоны напичканы всевозможными датчиками, которые, естественно, требуют энергии для своей работы. Посмотреть, какие датчики есть в твоем телефоне и сколько они потребляют, очень просто, достаточно установить приложение Android System info, зайти во вкладку System и выбрать пункт Sensor. В первых Android-устройствах обычный акселерометр (датчик, определяющий положение устройства) потреблял до 15 мА ч, в современных аппаратах это значение, как правило, в 100 раз меньше, поэтому нет особого смысла отключать «автоматическую ориентацию экрана» или «автоматическую яркость» (датчик освещенности), значительным образом это не повлияет на общее энергопотребление аппарата.

Однако следует помнить, что многие приложения, в которых задействовано управление наклонами аппарата, могут использовать сразу несколько датчиков (акселерометр, гироскоп, датчик вращения, датчик ускорения, датчик ориентации, датчик гравитации и другие), что в сумме может дать потребление до 100 мА ч.

Экран

Экран любого современного устройства - главный потребитель энергии, при этом есть ряд основных факторов, влияющих на его прожорливость:

  1. Размер экрана. Чем экран больше, тем больше энергии необходимо на его подсветку.
  2. Яркость и время подсветки. Чем больше значения яркости экрана и тайм-аута отключения, заданные в настройках, тем больше устройство потребляет энергии. Рекомендую установить автоматическое управление яркостью (по датчику освещенности) и тайм-аут подсветки не более 30 с.
  3. Разрешение экрана. Чем оно выше, тем больше энергии потребляет видеоускоритель устройства, отвечающий за отображение изображения на экране.
  4. Технология изготовления экрана. Грубо все экраны можно разделить на две категории:
  • жидкокристаллические (ЖК) дисплеи, состоящие из ЖК-матрицы и источника света (подсветки). К ним относятся экраны LСD, TFT-LCD, SCLCD, IPS, TFT;
  • дисплеи на органических светодиодах (OLED), состоящие из активной матрицы, излучающей свет. К ним относятся экраны AMOLED, Super AMOLED и подобные.

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

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

В AMOLED-экранах свет излучают только те пиксели, которые задействованы в формировании изображения, если пиксель в нем не участвует (при черном цвете на картинке), он ничего не излучает и, соответственно, не потребляет энергии. Таким образом, общее потребление экрана будет зависеть не только от установленной яркости, но и от изображения: чем больше в нем черного цвета и темных оттенков, тем меньше потребление энергии экраном. Однако есть и обратное правило: чем больше на картинке белых участков, тем больше такой экран потребляет энергии, и в определенных случаях AMOLED-экран может оказаться даже более «прожорливым», чем ЖК-экран.

Сравнение энергопотребления экранов LCD и AMOLED в зависимости от отображаемой картинки

Смотрим таблицу..
Таким образом, все плюсы от экономичности AMOLED- экранов можно получить, лишь соблюдая некоторые нехитрые правила, а именно: стараться не использовать белый фон, в приложениях устанавливать темные темы; в качестве обоев рабочего стола использовать темные картинки с температурой цветов не более 6500К. Только в этом случае AMOLED-экран сможет оказаться до двух раз экономичнее ЖК-экрана.

Процессор

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

Частота.

Все современные устройства могут управлять частотой своего процессора, уменьшая ее при малых нагрузках, тем самым снижая энергопотребление. Правильно оптимизированное устройство при выключении экрана должно переходить в режим экономичного энергопотребления, снижать частоту процессора до 15–30% от максимальной величины и оставаться на этой частоте до следующего пробуждения пользователем. Поэтому оценить оптимизацию энергопотребления устройства можно, посмотрев статистику работы процессора на той или иной частоте. Для этого открываем приложение Android System info, выбираем вкладку System и пункт CPU.

Если большую часть времени процессор работает на максимальной частоте, значит, с оптимизацией есть проблема. Для ее решения устанавливаем приложение SetCPU (нужен root), с помощью которого можно не только задать рабочую частоту процессора (или уточнить диапазон рабочих частот), но и создать профили частот, активируемые по какому-либо событию (запуску приложения, уменьшению заряда, отключению экрана, времени), то есть оптимизировать процесс управления частотой под себя. Например, частоту в рабочем режиме можно установить не более 1000–1200 МГц; по событию «экран выключен» и «заряд менее 15%» максимальную частоту ограничить половиной от рабочей частоты, а минимальную - установить на минимум; задать профили для часто запускаемых приложений с ограничением их максимальной рабочей частоты той величиной, при которой сохраняется комфортная для тебя отзывчивость интерфейса (так, для игр вполне может хватить 800 МГц, а для просмотра фильмов и прослушивания музыки - 500 МГц). Такой подход поможет сэкономить до 50% заряда, расходуемого процессором.

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

Скажу лишь, что для многоядерных устройств предпочтительнее использовать режим hotplug (если такого режима у тебя в списке SetCPU нет - используй interactive, ну или ondemand, он есть по умолчанию на большинстве ядер), который в простое отключает незадействованные ядра процессора и наиболее эффективен в соотношении производительность/экономичность.

Уменьшение напряжения процессора (андервольтинг).

Этот вариант оптимизации энергопотребления процессора уже рассматривался в статье , поэтому не будем на нем останавливаться.

ЧАСТЬ 2. СОФТ

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

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

Тема борьбы с такими пробуждениями уже затрагивалась в статье « », но сейчас остановимся на этом поподробнее.

Для начала нужно проверить, есть ли у девайса проблемы с режимом энергосбережения в режиме «сна». Сделать это можно даже без установки сторонних приложений с помощью стандартного пункта меню настроек «Использование аккумулятора» (или «Батарея»), желательно после долгого периода бездействия телефона, например утром. Можно не задерживаться на первом экране, показывающем, на какие задачи ушел уже израсходованный заряд, тут мало для нас интересного, лучше тапнем на график и перейдем в «Подробный журнал», отображающий график разряда аккумулятора и пять полосок. Определить наличие будящих приложений можно, сравнив полоски «экран включен» и «рабочий режим».

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

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

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

Disable Service: синий - работающие в фоне процессы, красный -отключенные, белый - общее количество процессов приложения

C такими приложениями и процессами можно поступить одним из следующих способов:

  • Удалить, если это не особо нужное пользовательское предложение.
  • Отключить автозагрузку с помощью Autorun Manager. Советую отключать не только подозрительные и будящие программы, но и другие редко используемые приложения, которые часто висят в оперативной памяти и кеше (вкладка настроек «Приложения → Работающие»). Так в памяти появятся действительно часто запускаемые программы.
  • Временно заморозить с помощью Titanium Backup или того же Autorun Manager. Это на случай, если приложение понадобится в будущем или если речь идет о системном приложении, которое нежелательно удалять (если, например, ты хочешь сохранить возможность обновления по воздуху). При заморозке приложение пропадет из списка программ, но физически не удалится. Однако следует помнить, что заморозка некоторых системных приложений может привести к сбою в работе системы, поэтому действуем осторожно.
  • Отключить конкретный будящий процесс приложения с помощью программы Disable Service, без отключения всего приложения.
  • Принудительно отправить будящие приложения в глубокий сон с помощью приложения Greenify. Но следует учитывать, что «гринифицированное» приложение перестанет запускаться по событиям, обновлять свои данные, получать push-уведомления и прочее до следующего запуска вручную. Еще одна полезная мелочь - Greenify встраивается в Wakelock Detector, и его функционал доступен прямо оттуда.

Иногда сторонние приложения могут влиять на сон устройства через системные процессы, которые оказываются «крайними» и выводятся в списке wakelock’ов как виновники незасыпания (например, процессы suspend, events/0). Найти истинных виновников незасыпания в этом случае можно, последовательно замораживая/удаляя подозрительные приложения (начав с недавно установленных) и наблюдая за лидерами в списке wakelock’ов.

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

  • Покупай аккумуляторы и зарядные устройства только от официального производителя. Как показывает опыт, реальная емкость дешевых аккумуляторов гораздо меньше указанной, а дешевые зарядные устройства в лучшем случае не выдадут заявленный на них максимальный ток, а в худшем - навредят аккумулятору повышенным напряжением или пульсирующим током.
  • Старайся заряжать устройство не от USB-порта компьютера, а от сетевой зарядки. На старте зарядка аккумулятора идет более высоким током, который не может выдать USB-порт, в результате увеличивается время зарядки и уменьшается ресурс аккумулятора (прежде всего это касается мощных аккумуляторов с большим зарядным током от 1 А).
  • Заряжай устройства полными циклами, старайся не допускать глубокого разряда (до выключения) и частичных подзарядов в середине цикла, все это сказывается на ресурсе аккумулятора, постепенным снижением его емкости.
  • SD- и SIM-карты могут влиять на энергопотребление. Если ты столкнулся с высоким разрядом, попробуй походить день без SD-карты. Если предположения подтвердятся - отформатируй карту в самом телефоне или при необходимости замени ее. SIM-карты также лучше менять на новые каждые 3–4 года (благо это бесплатно).
  • Раз в полгода (а при подозрительно быстром разряде - чаще) проверяй внешнее состояние аккумулятора на наличие вздутия и деформаций (начало вздутия можно заметить, приложив аккумулятор к ровной поверхности), в случае их обнаружения аккумулятор лучше заменить.
  • Также периодически продувай и чисти USB-контакты устройства.
  • Last updated by at Январь 27, 2017 .

Сейчас смартфоны и в особенности смартфоны на Андроид проходят фазу бурного развития. Подобное было с настольными компьютерами лет 5-10 назад. Когда выход нового процессора мог увеличить производительность системы сразу в полтора два раза, по сравнению со старым процессором. Примерно так сейчас происходит и со смартфонами. Вы покупаете смартфон с флагманскими характеристиками, а через пару лет он оказывается откровенно устаревшим и не может справиться с новыми играми.

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

Перед тем, как приступать к каким либо действиям, связанным с разгоном процессора на Андроид смартфоне, нужно понять, что это довольно рискованная операция. Устанавливая рабочую частоту процессора, инженеры учитывают множество факторов. Например, потребляемую мощность, теплоотдачу, напряжение на процессоре и т.д. Используя разгон процессора, вы вносите дисбаланс в эти показатели, поэтому данная процедура опасна и может привести к поломке смартфона.

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

  • Root права на устройстве. Разгон процессора это серьезное вмешательство в систему, поэтому без Root прав здесь не обойтись. Если у вас нет Root прав, то их нужно получить до того как приступать к разгону Андроид устройства.
  • Программа для разгона процессора. Для того чтобы изменить параметры процессора нам нужна программа, которая это умеет делать. К счастью это не проблема, такую программу можно найти и скачать в Google Play.

Сам процесс разгона довольно прост. На Андроид устройстве с Root правами вы запускаете программу для разгона процессора. Как правило, в таких программах есть два перемещающихся ползунка. С их помощью нужно выставить минимальную и максимальную частоту процессора.

Минимальная частота процессора, это частота, на которой работает процессор Андроид устройства в момент минимальной нагрузки или во время простоя. Например, тогда когда устройство заблокировано и не используется пользователем.

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

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

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

Программы для разгона процессора на Андроиде

AnTuTuCPU Master

AnTuTuCPU Master – это программа для разгона процессора на Андроид смартфонах. Как вы уже, наверное, догадались, данная программа разрабатывается тем же разработчиком, что и известный бенчмарк AnTuTu Benchmark. Программа AnTuTuCPU Master имеет как платную, так и бесплатную версию.

Скриншот платной версии AnTuTuCPU Master

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

SetCPU

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