|
contur2
|
Least Recently Used page replacement. More...
#include <lru_replacement.h>


Public Member Functions | |
| LruReplacement () | |
| ~LruReplacement () override | |
| LruReplacement (const LruReplacement &)=delete | |
| LruReplacement & | operator= (const LruReplacement &)=delete |
| LruReplacement (LruReplacement &&) noexcept | |
| LruReplacement & | operator= (LruReplacement &&) noexcept |
| std::string_view | name () const noexcept override |
| Returns the name of the algorithm (e.g., "FIFO", "LRU"). | |
| FrameId | selectVictim (const PageTable &pageTable) override |
| Selects a victim frame to evict. | |
| void | onAccess (FrameId frame) override |
| Notifies the policy that a frame was accessed (read or write). | |
| void | onLoad (FrameId frame) override |
| Notifies the policy that a new page was loaded into a frame. | |
| void | reset () override |
| Resets the policy's internal state. | |
| Public Member Functions inherited from contur::IPageReplacementPolicy | |
| virtual | ~IPageReplacementPolicy ()=default |
Private Attributes | |
| std::unique_ptr< Impl > | impl_ |
Least Recently Used page replacement.
Tracks access order via timestamps. On eviction, selects the frame that has not been accessed for the longest time.
Definition at line 16 of file lru_replacement.h.
| contur::LruReplacement::LruReplacement | ( | ) |
|
override |
|
delete |
|
noexcept |
|
nodiscardoverridevirtualnoexcept |
Returns the name of the algorithm (e.g., "FIFO", "LRU").
Implements contur::IPageReplacementPolicy.
|
overridevirtual |
Notifies the policy that a frame was accessed (read or write).
Implements contur::IPageReplacementPolicy.
|
overridevirtual |
Notifies the policy that a new page was loaded into a frame.
Implements contur::IPageReplacementPolicy.
|
delete |
|
noexcept |
|
overridevirtual |
Resets the policy's internal state.
Implements contur::IPageReplacementPolicy.
|
nodiscardoverridevirtual |
Selects a victim frame to evict.
| pageTable | The current page table state. |
Implements contur::IPageReplacementPolicy.
|
private |
Definition at line 35 of file lru_replacement.h.