Android начинает тормозить через некоторое время? Возможно вам поможет обрезание!

29220 / 105

fstrim_lagfix_title

Время от времени мне встречаются жалобы пользователей различных устройств на ОС Android на то, что после некоторого времени использования, их устройство начинает работать медленней, чем на свежей прошивке. Сам я почти никогда не замечал подобного, видимо потому, что в свое время часто перепрошивался, не задерживаясь на одной прошивке долгое время. Сейчас мой текущий Galaxy Note 2 почти все время эксплуатируется на одной прошивке, которую я постоянно обновляю без очистки данных и подобного тоже не замечаю, но возможно просто это особенности моего аппарата. Ведь похоже, проблема действительно существует. Как всегда, на помощь приходят умельцы с форума XDA-developers. Они изучили данный вопрос, исследуя отзывы владельцев различных устройств, и похоже нашли решение.

Вкратце, прочитав все материалы по теме, я могу сказать, что проблема напомнила мне проблему фрагментации дисков в Windows ОС. Что-то подобное происходит и с файловой системой в Linux, на котором основана ОС Android. При работе с файловой системой (установка и удаление программ, запись в кэш) остается много свободных блоков, которые надо освобождать (отрезать, отсекать лишнее) время от времени. Так как этого не происходит, можно сказать, что файловая система замусоривается, и аппарат начинает работать медленнее, соответственно появляются вышеописанные тормоза. Далее, я приведу перевод некоторых материалов с XDA и описание самого приложения – для тех, кто хочет подробнее разобраться в вопросе и попробовать провести лечебное “обрезание” файловой системы своего устройства на Android.

А причем тут собственно обрезание, спросите вы? Все просто. Процедура очистки файловой системы от свободных блоков называется “trim” – глагол, одно из значений которого “подрезать” или “обрезать”. А сама программа, вернее, небольшая утилита для выполнения данной операции называется fsTRIM LagFix. Так вот забавно выходит… :) Программа доступна для скачивания и установки из Google Play и существует в двух версиях – бесплатная и премиум (присутствует планировщик операции TRIM). Естественно, для использования программы вам нужен root-доступ к устройству. Ссылки на скачивание приложения вы найдете внизу статьи. А пока рассмотрим теорию и практику применения данного лагфикса.

Перевод описания программы из Google Play

Внимание! Это приложение должно использоваться только опытными пользователями!

Если вы не понимаете, что делает приложение – НЕ ИСПОЛЬЗУЙТЕ ЕГО! Вы можете найти подробную информацию в соответствующей ветке на сайте XDA. Изучите материалы, прежде чем задавать какие-либо вопросы или плохо оценивать данное приложение!

Некоторые пользователи Android страдают от низкой производительности своего устройства через несколько дней/недель интенсивного использования. Это связано с известной ошибкой TRIM, влияющей на эти устройства (мы получали отчеты о данной проблеме от пользователей Nexus-устройств, Samsung Galaxy S3 и HTC One X). Ядра с функцией сброса опции монтирования не устраняют данной проблемы!

Источником проблемы является то, что внутренняя память устройства не надлежащим образом регулируется по мере необходимости. Вы можете найти много информации на сайте XDA – тут и тут . Также хорошо известен факт, что запуск инструмента Linux fstrim время от времени устраняет проблему, пока внутренняя память работает без свободных блоков. Другие решения, такие как монтирование, сброс или отключения FSYNC могут быть медленными или опасными.

LagFix является удобной утилитой реализации инструмента fstrim. Она позволяет вам выбрать, какие разделы обрезать (вы должны оставить значения по умолчанию, если не знаете, что вы делаете) и легко запустить процесс. Планирование автоматической обрезки также доступно в премиум версии.

Обратите внимание, что результат выполнения  fstrim зависит от ядра и устройства. Программа отлично работает, если вы видите ошибки. Читайте руководство по fstrim, чтобы понять, почему все эти мероприятия являются действительно эффективными.

Часто задаваемые вопросы

Оригинал записи.

ВНИМАНИЕ!

Существуют некоторые устройства, подверженные BrickBug. Например, это Samsung Galaxy S2 и Samsung Galaxy Note. Есть также сообщения, что некоторые Acer A210/A211 и LG O2x также подвержены воздействию данного бага. Также существует приложение для тестирования устройства на предмет опасности BrickBug, но оно предназначено только для пользователей Samsung. BrickBug означает смерть вашего устройства, если вы попытаетесь запустить на нем LagFix! Есть некоторые ребята, которым уже повезло. В случае brickbug вы должны использовать гарантию и требовать обмен вашего устройства. Это аппаратный сбой и производитель несет ответственность в данном случае.

Разработчик не предоставляет никаких гарантий в отношении приложений LagFix! Используйте его на свой страх и риск.

Аппараты LG O2x могут быть восстановлены после brickbug по этой инструкции от пользователя fifi139.

Что делает LagFix?

Он запускает fstrim утилиту, которая в свою очередь осуществляет магические IOCTL-операции под названием TRIM.

Что такое fstrim?

Fstrim является Linux утилитой, которая выполняет TRIM на устройствах памяти. Вы можете найти более подробную информацию о данной утилите и ее исходный код на SourceForge. Теперь это часть Util-Linux, которая быть найдена внутри репозитория ядра Linux.

Что такое IOCTL?

Это программный интерфейс общения с устройствами хранения данных на низком уровне в UNIX OS. Подобное называется DeviceIoControl в Windows. Данный интерфейс позволяет сделать много различных низкоуровневых операций на устройствах хранения данных, такие как жесткие диски, CD-ROM, флэш-память и SSD диски.

Что такое TRIM?

TRIM является низкоуровневой функцией, которая информирует контроллер памяти о неиспользованных блоках памяти. Она используется на большинстве дисков SSD и некоторых EMMC (флэш-память). Для SD карт используется другая функции – SD ERASE. Подробнее смотрите в Википедии.

Почему появляются лаги?

Устройства с поддержкой TRIM должны быть обрезаны, чтобы система знала, какие части памяти является свободными и доступными для записи новых данных. Когда контроллер памяти не знает, какие части являются свободными, он начинает поиск, осуществляя запросы к операционной системе. Этот процесс требует времени и чем меньше свободного пространства, тем больше времени тратится на данные действия. И эта операция блокирует все остальные операции. Таким образом, устройство начинает ждать выполнения этой процедуры. Например, при переключении приложений, состояние сворачиваемого приложения сохранняется во внутренней памяти, чтобы вы могли вернуться к нему в случае необходимости. Сохранение = лаги. Все просто!

Какие устройства подвержены лагам?

Как известно в настоящее время, Nexus S, Galaxy Nexus, Nexus 7, Nexus 4, Nexus 10 и HTC One X нуждаются в регулярной обрезке. Считается также, что все устройства работающие на версии ОС до ICS и использующие различные типы памяти, не нуждаются в обрезке и не поддерживают данный процесс. Поэтому, поддержка устройств до ICS будет удалена в версии 1.2. Другие устройства работающие на версиях ОС выше 4,0? Проверьте! И сообщите нам, если LagFix действительно помогает – ваше устройство будет добавлено в список.

Как правильно проверить?

Используйте приложение AndroBench перед использованием LagFix и после процедуры. Вам нужно всего лишь провести микро-тест. Посмотрите на последовательные значения Write. На чтение из памяти LagFix никак не повлияет, потому что чтение не требует изменения данных и только запись запускает поисковый процесс для нахождения свободных блоков памяти.

Почему нужна перезагрузка?

Для большинства устройств не требуется перезагрузка после обрезки. Но некоторые редкие ядра не могут осуществить повторную инициализацию свободных информационных блоков после TRIM. Заранее невозможно обнаружить такие ядра, так что если LagFix сделал что-то, но показатели не улучшились – произведите перезагрузку!

Мое устройство находится в списке пострадавших, но LagFix ничего не делает.

Некоторые ядра монтируют накопители с опцией discard. Эта опция заставляет ядро ​​вызывать TRIM  после любой записи и удаления данных. Это означает, что функциональность  приложения является встроенным в ядро системы, и вам не нужен LagFix в таком случае.

Почему не каждое ядро поддерживает опцию discard по умолчанию?

Опция discard замедляет операции записи бита и удаления данных. Desktop Linux пользователи никогда не используют его, вместо этого они помещают fstrim в планировщик chron, для запуска операции один раз в день. Запланированный запуск LagFix добавлен в версии 1.2.

LagFix не доступен для моего устройства в Google Play, почему?

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

Итоги

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

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

fstrim lagfix 01 fstrim lagfix 02 fstrim lagfix 03

Скачать в Google Play Купить премиум в Google Play

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

Извините, нет активных голосований.

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


РЕКОМЕНДУЕМ! СВЕЖЕЕ ВИДЕО НА НАШЕМ YOUTUBE-КАНАЛЕ: