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

Разработчики выпустили плагин Mesh, предназначенный для оптимизации использования памяти приложениями, созданными на языках программирования семейства C.

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

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

Новый плагин Mesh, разработанный исследователями из Массачусетского университета в Амхерсте, способен помочь в решении этой задачи. Он демонстрирует высокую заполняет все пустые места в телефоне, используя аппаратную функцию под названием «виртуальная память», которая поддерживается почти всеми современными устройствами. По словам ученого, фокус в том, чтобы найти куски памяти, которые можно связать между собой. Когда Mesh находит эти фрагменты, он может объединить два фрагмента в один.

После проведения испытаний в реальной среде, команда разработчиков получила многообещающие данные. Использование Mesh позволило автоматически уменьшить объем памяти, необходимый для работы веб-браузера Firefox, на 16 %. Для Redis, широко используемого сервера данных с открытым исходным кодом, Mesh сократил потребление памяти почти на 40 %.

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