-
정보처리기사[실기 핵심 정리] - 가상기억장치용어 정리 2024. 4. 22. 16:48
가상기억장치
1) 가상기억장치의 개념
- 보조기억장치(하드디스크)의 일부를 주기억장치처람 사용하는 기법
- 주기억장치 용량이 작더라도 가상기억장치를 통해 더 큰 용량처럼 사용할 수 있다.
- 프로그램을 여러 개의 작은 블록 단위로 나누어 가상기억장치에 보관한고, 필요할때 해당블록만 주 기억장치에 할당
- 주기억장치 용량보다 큰 프로그램을 실행할 수 있으며, 주기억장치의 이용률과 다중 프로그래밍 효율을 높일 수 있다.
- 가상기억장치의 주소를 주기억장치의 주소로 변환하는 주소변환 작업 필요
2) 블록 분할 방법
- 페이징 기법
- 가상기억장치를 모두 같은 크기의 블록으로 편성하여 운영하는 방법
- 외부 단편화는 발생하지 않으나 내부 단편화는 발생
- 가상메모리를 페이지로, 물리 메모리를 프레임으로 나누며, 주소 변환을 위해 페이지 맵 테이블 필요
- 세그먼테이션 기법
- 가상 메모리를 크기가 다른 논리적 단위인 세그먼트로 분할하고 메모리를 할당하는 기법
- 세그먼트 테이블을 참조하여 주소 변환을 수행
- 내부 단편화는 발생하지 않으나 외부 단편화는 발생
가상기억장치 기타 관리사항
1) 페이지 부재
- 프로세스 실행 중 필요한 페이지가 주기억장치에 없는 상황
- 페이지 부재가 발생하는 횟수를 페이지 부재 빈도라고 한다.
2) 지역성(Locality)
- 프로세스가 실행되는 동안 주기억장치에서 일부 페이지만 집중적으로 참조하는 성질
- 스레싱 방지와 워키셋 이론의 기초가 된다.
- 구역성의 종류
시간 구역성(Temporal Locality) ● 하나의 페이지가 짧은 시간 동안 집중적으로 참조
● Loop(반복), Stack(스택), 부 프로그램(Sub Routine) 등공간 구역성(Spatial Locality) ● 프로세스 실행 시 특정 위치의 페이지들이 집중적으로 참조
● 배차순회, 순차적 코드 실행 등3) 워킹 셋(Working Set)
- 프로세스가 일정 시간 동안 자주 참조하는 페이지들의 집합
- 워킹 셋을 주기억장치에 상주시켜 페이지 부재와 교체 현상을 줄이고 프로세스의 메모리 사용을 안정화한다.
- 워킹셋은 시간에 따라 변화한다.
4) 스래싱(Thrashing)
- 프로세스 처리시간보다 페이지 교체에 소요되는 시간이 더 많아지는 현상
- 자주 페이지 부재가 발생하여 시스템 성능이 저하되는 현상
페이지 교체 알고리즘
1) FIFO(First in First Out)
- 가장 먼저 메모리에 적재된 페이지를 먼저 교체하는 기법
2) OPT(OPTimal replacement, 최적 교체)
- 미래에 가장 오랫동안 사용되지 않을 페이지를 교체하는 방법
- 이론적으로는 페이지 부재 횟수를 최소화하지만, 실제 구현에서는 미래의 페이지 참조를 예측하기 어려움
3) LRU(Least Recently Used)
- 가장 오랫동안 사용되지 않은 페이지를 교체하는 기법
4) LFU(Least Frequently Used)
- 사용 빈도가 가장 적은 페이지를 교체하는 기법
5) NUR(Not Used Recently)
- 각 페이지마다 참조 비트와 변형 비트를 사용하여 최근 사용 여부 확인
- 참조되지 않고 수정되지 않은 페이지를 우선 교체
6) SCR(Second Chance Replace)
- FIFO의 단점을 보완한 기법으로, 가장 오래된 페이지 중에서도 자주 사용되는 페이지의 교체를 방지한다.
'용어 정리' 카테고리의 다른 글
정보처리기사[실기 핵심 정리] - 병행 프로세스와 교착상태 (0) 2024.04.22 정보처리기사[실기 핵심 정리] - 프로세스 (0) 2024.04.22 정보처리기사[실기 핵심 정리] - 메모리 관리 (0) 2024.04.22 정보처리기사[실기 핵심 정리] - 운영체제 기초 (1) 2024.04.22 정보처리기사[실기 핵심 정리] - 데이터 전환 (0) 2024.04.21