digital-garden/dev/algorithm/Least Recently Used.md
Struchkov Mark bd6b7c1492
All checks were successful
continuous-integration/drone/push Build is passing
Дочерние заметки
2024-09-14 23:38:42 +03:00

46 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
aliases:
- LRU
tags:
- maturity/🌱
date:
- - 2024-05-24
zero-link:
- "[[../../meta/zero/00 Алгоритм|00 Алгоритм]]"
parents:
- "[[Алгоритмы вытеснения]]"
linked:
- "[[Most Recently Used]]"
- "[[Псевдо-LRU]]"
---
Least Recently Used (LRU) — это алгоритм управления кэш-памятью, который выбирает для удаления тот элемент, который давно не использовался. Этот алгоритм часто используется в системах, где ограничены ресурсы памяти, и необходимо эффективно управлять кэшированием данных.
**Принцип работы:**
1. **Отслеживание использования**: Каждый элемент в кэше имеет метку времени или счетчик, который обновляется каждый раз, когда элемент используется.
2. **Удаление устаревших элементов**: Когда необходимо освободить место в кэше для нового элемента, удаляется элемент с наименьшим значением метки времени или счетчика, то есть наименее недавно использованный элемент.
**Преимущества**:
- Эффективное управление памятью.
- Простота реализации и понятная логика работы.
**Недостатки**:
- Высокие накладные расходы на обновление меток времени или счетчиков. Поэтому чаще всего используют [Псевдо-LRU](Псевдо-LRU.md).
- Возможность неэффективной работы в некоторых специфических случаях, когда часто используемые элементы могут вытесняться из кэша.
**Примеры использования:**
- [[../architecture/Кэширование|Кэширование]] страниц в веб-браузерах.
- Управление оперативной памятью в [[../../../../knowledge/dev/pc/Операционная система|операционных системах]].
- Кэширование данных в базах данных и других системах хранения.
***
## Мета информация
**Область**:: [[../../meta/zero/00 Алгоритм|00 Алгоритм]]
**Родитель**:: [[Алгоритмы вытеснения]]
**Источник**::
**Автор**::
**Создана**:: [[2024-05-24]]
### Дополнительные материалы
- [[Most Recently Used]]
- [[Псевдо-LRU]]
### Дочерние заметки
<!-- QueryToSerialize: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->