익명 사용자
로그인하지 않음
토론
기여
계정 만들기
로그인
IT 위키
검색
LRU (페이지 교체 알고리즘)
편집하기
IT 위키
이름공간
문서
토론
더 보기
더 보기
문서 행위
읽기
편집
원본 편집
역사
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
LRU(Least Recently Used)는 가장 오랫동안 사용되지 않은 페이지를 교체 대상으로 선택하는 '''페이지 교체 알고리즘'''이다. 운영체제의 가상 메모리 관리, 캐시 시스템, 데이터베이스 등에서 효율적인 메모리 활용을 위해 사용된다. ==개념== LRU 알고리즘은 다음과 같은 직관에 기반한다: *최근에 사용된 페이지는 앞으로도 다시 사용할 가능성이 높다 *반대로, 오래 사용되지 않은 페이지는 앞으로도 사용되지 않을 가능성이 높다 따라서 페이지 프레임이 가득 찼을 때, '''가장 오래 전에 사용된 페이지'''를 제거하고 새 페이지를 로드한다. ==동작 방식== LRU는 각 페이지의 최근 사용 시점을 기억해야 하며, 일반적으로 다음과 같은 방식으로 구현된다: #새 페이지가 요청되었을 때: #*이미 프레임에 있으면 → 단순히 최근 사용 시간 갱신 #*없다면: ##프레임이 비어 있으면 → 새 페이지 삽입 ##프레임이 가득 찼으면 → 가장 오래된 페이지 제거 후 새 페이지 삽입 ==구현 방법== *'''카운터 방식''' **각 페이지에 타임스탬프 저장 **가장 오래된 타임스탬프를 가진 페이지를 제거 *'''스택 방식''' **페이지를 스택(또는 리스트)으로 관리 **사용 시 스택의 맨 위로 이동, 가장 아래가 가장 오래된 페이지 *'''해시 + 이중 연결 리스트''' (실제 시스템 캐시에서 사용) **O(1) 시간에 접근/삭제 가능 ==예시== 페이지 프레임 수: 3 페이지 요청 순서: 7, 0, 1, 2, 0, 3, 0, 4 동작: #7 → [7] #0 → [7, 0] #1 → [7, 0, 1] #2 → [0, 1, 2] (7 제거) #0 → [1, 2, 0] #3 → [2, 0, 3] (1 제거) #0 → [2, 3, 0] #4 → [3, 0, 4] (2 제거) → 페이지 폴트 6회 ==장점== *페이지 교체 성능이 우수함 (참조 지역성 가정에 부합) *많은 시스템에서 실용적으로 사용 가능 ==단점== *최근 사용 시간 추적을 위한 오버헤드 존재 *완전한 구현은 하드웨어 또는 추가 자료구조 필요 ==같이 보기== *[[페이지 교체 알고리즘]] *[[FIFO (페이지 교체 알고리즘)]] *[[OPT (최적 페이지 교체)]] *[[캐시]] *[[가상 메모리]] ==참고 문헌== *Silberschatz, A., Galvin, P. B., & Gagne, G. (2020). Operating System Concepts. Wiley *Tanenbaum, A. S., & Bos, H. (2014). Modern Operating Systems. Pearson [[분류:운영체제]]
요약:
IT 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
IT 위키:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
둘러보기
둘러보기
대문
최근 바뀜
광고
위키 도구
위키 도구
특수 문서 목록
문서 도구
문서 도구
사용자 문서 도구
더 보기
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보
문서 기록