프로그램-정보 보관-장치 관리
기본 정의
- 보조기억장치(를 보조하는) 프로그램이나 데이터를 주기억장치에 적재시키는 시기 관리
- 적재 위치 등을 지정해서 한정된 주기억장치 공간을 효율적으로 사용하기 위한 전략
- 총 3가지 전략이 있다. (반입, 배치, 교체)
메모리 공간-효율화-전략
반입 전략
시기
- 요구 반입 : 실행중인 프로그램이 데이터 참조를 요구할 때 적재
- 예상 반입 : 실행중인 프로그램에 의해 참조될 데이터를 미리 예상해서 적재.
배치 전략
위치
- 최초 적합 : 데이터가 들어갈 수 있는 영역 중 첫 번째 분할 영역에 배치
- 최적 적합 : 데이터가 들어갈 수 있는 영역 중 단편화를 가장 작게 남는 영역에 배치.
- 최악 적합 : 데이터가 들어갈 수 있는 영역 중 단편화가 가장 많이 남는 영역에 배치.
교체 전략
알고리즘
- 주기억장치의 모든 영역이 사용중일 때 이미 사용중인 영역 중 어느 영역을 교체할지 결정하는 전략.
- FIFO, OPT, LRU, LFU, NUR, SCR 등
Window
- 작업 관리자로 불필요한 프로그램 및 프로세스 종료 가능.
Linux
- meminfo : 메모리 상태 확인
- 스와핑 : 프로그램 메모리 일부를 보조기억장치에 저장하는 기법.
- dd : 블록 단위 파일 변환/복사시 사용하는 명령어
dd if=/dev/zero of=[파일명] bs=[용량] count=[반복횟수]
- fallocate : 비어있는 파일 생성 명령어
fallocation [옵션][용량] [파일명]
dd를 사용해서 1GB 스왑 파일 생성
root@ubuntu:/
fallocate를 사용해서 1GB 스왑 파일 생성
root@ubuntu:/
GQ
1 dd, fallocate 둘 다 스왑 메모리를 할당하는 방법인데
선호에 따라서 다른건지 방법에 차이가 있을까?
2 기억장치 관리는 OS에서 담당하는데 내부적으로
관리 절차와 순서는 실제로 어떻게 진행될까?