Как, почему и когда надо чистить кэш на Android

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

Надо ли чистить кэш телефона?

Что означает очистка кэша приложения?

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

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

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

Как и когда делать очистку данных и кэша приложения фото 1

Схема «Настройки>Память>Данные кэша» дает решение в одно касание для удаления данных кэша.

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

Расположение и использование

Временные файлы находятся в специальных папках на устройстве или карте памяти. Полностью удалять их нельзя, поскольку сотрутся важные для нормальной работы смартфона объекты. Располагаются временные файлы в папке data и obb. В первой они имеют вид файлов, а во второй – архивов. При установке каждое приложение создает папку с таким же названием и наполняет ее временными файлами, которые увеличивают скорость загрузки уже просмотренных страниц.

Кэшированные данные в телефоне что это и как их удалить

Можно ли очищать кэшированные данные

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

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

Аппаратная реализация

Кэш центрального процессора

Основная статья: Кэш процессора

В связи с ростом частоты, на которой функционируют процессоры, и повышением производительности подсистемы оперативной памяти (ОЗУ), узким местом вычислительной системы стал интерфейс передачи данных.

Кэш-память может давать значительный выигрыш в производительности в случае, когда тактовая частота ОЗУ значительно меньше тактовой частоты процессора. Ряд моделей процессоров обладают собственным кэшем для минимизации времени доступа к оперативной памяти (ОЗУ), которая медленнее, чем регистры (эти регистры и буферы ввода-вывода могут считаться кэшем нулевого уровня). Тактовая частота для кэш-памяти обычно ненамного меньше частоты ЦП.

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

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

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

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

В неэксклюзивной кэши могут вести себя как угодно.

Уровни кэша

Кэш центрального процессора разделён на несколько уровней. Максимальное количество кэшей — четыре. В универсальном процессоре в настоящее время число уровней может достигать трёх. Кэш-память уровня N+1, как правило, больше по размеру и медленнее по скорости доступа и передаче данных, чем кэш-память уровня N.

  • Самым быстрым является кэш первого уровня — L1 cache (level 1 cache). По сути, он является неотъемлемой частью процессора, поскольку расположен на одном с ним кристалле и входит в состав функциональных блоков. В современных процессорах обычно L1 разделен на два кэша — кэш команд (инструкций) и кэш данных (Гарвардская архитектура). Большинство процессоров без L1 не могут функционировать. L1 работает на частоте процессора, и, в общем случае, обращение к нему может производиться каждый такт. Зачастую является возможным выполнять несколько операций чтения/записи одновременно.
  • Вторым по быстродействию является кэш второго уровня — L2 cache, который обычно, как и L1, расположен на одном кристалле с процессором. В ранних версиях процессоров L2 реализован в виде отдельного набора микросхем памяти на материнской плате. Объём L2 от 128 кбайт до 1−12 Мбайт. В современных многоядерных процессорах кэш второго уровня, находясь на том же кристалле, является памятью раздельного пользования — при общем объёме кэша в n Мбайт на каждое ядро приходится по n/c Мбайта, где c — количество ядер процессора.
  • Кэш третьего уровня наименее быстродействующий, но он может быть очень большим — более 24 Мбайт. L3 медленнее предыдущих кэшей, но всё равно значительно быстрее, чем оперативная память. В многопроцессорных системах находится в общем пользовании и предназначен для синхронизации данных различных L2.
  • Существует четвёртый уровень кэша, применение которого оправдано только для многопроцессорных высокопроизводительных серверов и мейнфреймов. Обычно он реализован отдельной микросхемой.
Читайте также:  Что нужно сделать чтобы ноутбук не перегревался

Ассоциативность кэша

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

При одинаковом объёме кэша схема с большей ассоциативностью будет наименее быстрой, но наиболее эффективной (после четырёхпотоковой реализации прирост «удельной эффективности» на один поток растет мало).

Кэширование внешних накопителей

Многие периферийные устройства хранения данных используют внутренний кэш для ускорения работы, в частности, жёсткие диски используют кэш-память от 1 до 256 Мбайт (модели с поддержкой NCQ/TCQ используют её для хранения и обработки запросов), устройства чтения CD/DVD/BD-дисков также кэшируют прочитанную информацию для ускорения повторного обращения.

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

Применение кэширования внешних накопителей обусловлено следующими факторами:

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

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

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

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

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

    Что такое кэшированные данные на смартфоне?

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

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

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

    установите кэш

    История появления термина

    Мобильные устройства

    В первый раз слово «cache» (кэш) в компьютерном контексте было употреблено в 67 году прошлого века во время подготовки к выходу статьи для размещения в одном из передовых специализированных журналов «IBM Systems Journal». Публикация касалась модернизации памяти в разрабатываемой в то время компьютерной модели. Главный редактор издания Лайл Джонсон дал задание сочинить более изобразительный термин, вместо существовавшего в то время термина «высокоскоростной буфер», однако, за неимением идей сам внес предложение назвать ее словом «cache».

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

    Итак, что такое кэш-память и как она возникла, стало более ясно. Посмотрим, где и как она может использоваться.

    Если очистить кэш на телефоне, что удалится

    C:\Users\Геральд из Ривии\Desktop\net-pamyati-1-729x590.jpeg

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

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

    Что будет, если очистить кэш

    Можно ли удалять кешированные данные? Ответ прост – конечно же «да». Это полезная для смартфона процедура. Повторюсь, это только сохранённые для быстрого доступа фото, видео и некоторая другая информация. При её удалении не пострадают пароли, вы не выйдете из аккаунтов, не потеряете сохранения игр или перечень открытых вкладок браузера. Здесь инструкция по тому как очистить кэш на Андроид Самсунг.

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

    Кэш браузера

    Когда браузер отображает веб-страницу, он должен загрузить логотип, CSS файл и другие ресурсы:

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

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

    Как включить кэширование в браузере

    • Измените заголовки запроса ресурсов, чтобы использовать кэширование;
    • Оптимизируйте свою стратегию кэширования.

    Изменение заголовков запроса

    Для большинства людей единственный способ кэширования сайта htaccess заключается в том, чтобы добавить код в файл .htaccess на веб-сервере.

    Файл .htaccess контролирует многие важные настройки для вашего сайта.

    Кэширование браузера через файл .htaccess

    Приведенный ниже код указывает браузеру, что именно кэшировать и как долго это « запоминать «. Его следует добавить в начало файла .htaccess :

    Сохраните файл .htaccess , а затем обновите веб-страницу.

    Как установить время кэширования для различных типов файлов

    В приведенном выше коде заданы промежутки времени. Например, 1 year ( 1 год ) или 1 month ( 1 месяц ). Они связаны с типами файлов. Приведенный выше код устанавливает, что .jpg файлы ( изображения ) следует кэшировать в течение года.

    Если бы вы хотели изменить это, чтобы и JPG изображения кэшировались в течение месяца, то вы бы просто заменили « 1 год » на « 1 месяц «. Указанные выше значения кэширования через htaccess оптимальны для большинства веб-страниц.

    Метод альтернативного кэширования для .htaccess

    Описанный выше метод называется « Expires «, он помогает с кэшированием большинству новичков. После того, как вам станет проще работать с кэшированием, можете попробовать другой метод кэширования Cache-Control , который дает больше возможностей.

    Возможно, что метод Expires не сработает на вашем сервере, в этом случае вы возможно захотите попробовать использовать Cache-Control .

    Cache-Control

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

    Пример использования в файле .htaccess :

    Приведенный выше код устанавливает заголовок Cache-Control в зависимости от типа файла.

    Как работает Cache-Control

    Рассмотрим упомянутую выше строку кода кэширования в браузере htaccess :

    Данная строка — просто примечание. Файл .htaccess игнорирует строки, начинающиеся с символа # . Это примечание рекомендуется, так как у вас может быть несколько различных наборов данных в качестве решения для кэширования файлов:

    Упомянутая выше строка говорит, что, « если файл будет одним из этих типов, то мы сделаем что-то с ним… »

    Самое важное в этой строке то, что в ней перечислены различные типы файлов ( CSS , JS , JPEG , PNG и т.д. ) и что инструкции кэширования следует применять к этим типам файлов. Например, если вы не хотите, чтобы JPG файлы кэшировались в течение указанного периода времени, можете удалить « JPG «. Если вы хотите добавить HTML , то нужно в этой строке указать « HTML «:

    В упомянутой выше строке установлены фактические заголовки и значения:

    • Часть « Header set Cache-Control » — устанавливает заголовок;
    • Переменная « max-age=2592000 » – указывает, сколько времени займет процесс кэширования ( в секундах ). В этом случае мы осуществляем кэширование в течение одного месяца ( 2592000 ) секунд;
    • Часть « public » сообщает о том, что это общедоступно.

    Эта строка кэширования через htaccess закрывает оператор и заканчивает блок кода.

    Общая проблема кэширования

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

    Цифровой отпечаток URL

    Получение нового (некэшируемого) файлового ресурса возможно при наличии уникального имени. Например, если файл CSS назван «main.css», то вместо этого мы могли бы назвать его «main_1.css». В следующий раз, когда мы поменяем его имя, мы можем назвать файл «main_2.css». Это полезно для файлов, которые периодически изменяются.

    Методы кэширования

    При кэшировании файлов htaccess необходимо указать один заголовок из пары Expires или Cache-Control max-age, а также один из заголовков Last-Modified или ETag для всех кэшируемых ресурсов. Использовать и Expires, и Cache-Control: max-age излишне, как и Last-Modified и ETag одновременно.

    Кэширование, выполняемое операционной системой

    Кэш оперативной памяти состоит из следующих элементов:

    1. набор страниц оперативной памяти, разделённых на буферы, равные по длине блоку данных соответствующего устройства внешней памяти;
    2. набор заголовков буферов, описывающих состояние соответствующего буфера; , содержащей соответствие номера блока заголовку;
    3. списки свободных буферов.

    Алгоритм работы кэша с отложенной записью

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

    1. пытается найти в хеш-таблице заголовок буфера с заданным номером;
    2. в случае, если полученный буфер занят, ждёт его освобождения;
    3. в случае, если буфер не найден в хеш-таблице, берёт первый буфер из хвоста списка свободных;
    4. в случае, если список свободных буферов пуст, то выполняется алгоритм вытеснения (см. ниже);
    5. в случае, если полученный буфер помечен как «грязный», выполняет асинхронную запись содержимого буфера во внешнюю память.
    6. удаляет буфер из хеш-таблицы, если он был помещён в неё;
    7. помещает буфер в хеш-таблицу с новым номером.

    Процесс читает данные в полученный буфер и освобождает его. В случае модификации процесс перед освобождением помечает буфер как «грязный». При освобождении буфер помещается в голову списка свободных буферов.

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

    Алгоритм вытеснения

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

    1. LRU (Least Recently Used) — вытесняется буфер, неиспользованный дольше всех;
    2. MRU (Most Recently Used) — вытесняется последний использованный буфер;
    3. LFU (Least Frequently Used) — вытесняется буфер, использованный реже всех;
    4. ARC (англ.) (Adaptive Replacement Cache) — алгоритм вытеснения, комбинирующий LRU и LFU, запатентованный

    Очистка кэша на Андроиде

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

    Удалить лишние данные и тем самым ускорить работу телефона можно несколькими способами. На каждом смартфоне под управлением ОС Андроид есть встроенные утилиты для очистки.

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

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

    1. Заходят в «Настройки» через меню или сделав свайп по экрану сверху-вниз, после чего появится шторка уведомлений.
    2. Открывают раздел «Устройства», далее «Хранилище».
    3. Внизу находят и выбирают строчку «Данные кэша». Телефон выдаст запрос, где нужно подтвердить выполняемую процедуру удаления нажав кнопку «Ок».

    Данные кэша

    Это простая схема, которая поможет избавиться от лишних файлов на телефоне. При этом, много времени не занимает. Даже если гаджет переполнен «мусором» — очистка продлится не более 2 минут.

    Если весь кэш удалять желания нет, например, если нужно сохранить данные с нескольких программ, можно вручную выбрать отдельные приложения:

    1. Заходят в «Настройки».
    2. Выбирают «Память».
    3. Жмут на «Данные программ».
    4. Находят приложение, которое нужно «обнулить», выбирают его и жмут «Очистить кэш».
    5. Подтверждают операцию нажатием кнопки «Ок».

    Данные кэша

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

    Чтобы не делать эти манипуляции вручную, на телефон ставят стороннее приложение. Одно из лучших для удаления кэша – Clean Master:

    1. Открывают магазин покупок Google Play, вводят в поиск «Clean Master», жмут «Установить».
      Установить
    2. Открыв приложение, нажимают «Старт».
    3. Выбирают иконку «Мусор».
      Мусор
    4. Предоставляют доступ для работы с другими программами, подтверждают.
    5. По окончании сканирования жмут «Очистить мусор».

    Преимущество очистки сторонними утилитами – в их расширенном функционале. Например, в той же «Clean Master» можно выставить время, когда программа будет самостоятельно чистить кэш. Среди других аналогичных утилит стоит выделить «App Cache Cleaner», «Power Clean».

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

Ссылка на основную публикацию