Менеджер кэша дисковых блоков TARQ

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

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

QHB может запускаться с усовершенствованным алгоритмом вытеснения, называемым TARQ.

Алгоритм предполагает поддержку двух списков страниц, L1 и L2. Максимальная длина обоих списков составляет 2c, где c — размер кэша в страницах. Оба списка формируются в стиле LRU. При перемещении в кэш страницы, номер которой отсутствует в обоих списках, этот номер заносится в начало списка L1. При обращении к странице, номер которой фигурирует в одном из списков, этот номер переносится в начало списка L2. Важной особенностью алгоритма является то, что только в начале каждого из списков (в подсписках T1 и T2) располагаются номера страниц, находящихся в кэше; таким образом поддерживается история страниц, недавно вытесненных из кэша. Страница для замещения выбирается из конца подсписка T1 или T2 в зависимости от значения параметра p, определяющего текущую допустимую длину подсписка T1, а тем самым, и длину T2. Адаптивность алгоритма состоит в том, что значение p изменяется в зависимости от вида рабочей нагрузки.

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