가상 메모리 ( Virtual Memory )
- 주기억 장치인 RAM 의 실제 물리적인 공간 외에 하드 디스크 (보조기억장치) 에 부족한 시스템 메모리를 보조해 주는 역할
- 새로운 프로세스가 실행되어 실제 메모리의 공간이 부족하면 휴면상태인 프로세스를 임시 공간인 가상메모리로 보낸 후에 새로운 프로세스를 실행하게 된다.
- 실제 메모리와 가상 메모리 사이로 데이터를 옮기는 과정이 추가 되어 시스템이 느려지는 원인이 될 수 있습니다. 이유는 램에 비해 디스크의 속도면에서 차이가 나기 때문이다
- 그렇기 때문에 가상 메모리는 되도록 사용 안하는 것이 좋다. 그만큼 실제 메모리 (RAM) 의 용량이 충분해야 할 필요가 있을 것이다. 일부의 프로그램에서 메모리 공간이 부족하지 않더라도 가상 메모리를 사용하는 경우도 있으니 참고하기 바랍니다.
- 가상 메모리 관리
- 가장 빠른 디스크에 설정하는 것이 좋다.
SSD에 윈도우와 가상 메모리가 위치해 있는 경우 분리를 위해 HDD로 옮기게 되면 엑세스 부하를 줄여 얻는 이득에 비해 엑세스 속도 저하로 인한 손해가 큽니다. - 램 용량이 충분하면 가상메모리는 아예 없애는 것이 좋다.
일부 소수의 프로그램들이 가상메모리를 사용하는 경우가 있기 때문에 최소한으로만 설정하여 사용하는 것이 좋다. - 가상 메모리는 고정된 크기로 설정하는 것이 좋다.
자동의 경우에는 계속해서 늘어나는 경우도 생길 것이고 잘못된 고정값을 설정하게 되면 부족한 현상이 발생될 수 있습니다. 따라서 자신에 사용에 맞게 설정하는 것이 가장 좋습니다. - 나에게 적당한 가상 메모리 용량은 얼마일까?
가상 메모리 크기를 64비트 기준으로 최소값인 16MB로 설정 후 최대 크기는 여유 있게 지정합니다. 그 이후에 재부팅 후 변화를 적용하고 평상시 사용하는 프로그램들을 실행해 봅니다.
가상 메모리 설정 창에서 확인하면 사용한 만큼 늘어나 있을 것이고 그렇지 않다면 RAM의 용량이 충분하다는 것입니다. 평균적인 가상 메모리 크기를 알아낸 뒤에는 1.2~1.5배의 여유를 둔 가상 메모리를 설정합니다. - 가상 메모리는 사용되지 않을 수록 좋다
주기억장치에 비해 보조기억장치의 속도는 전투기와 거북이 수준으로 차이가 납니다.
따라서 램 용량은 자신의 현재 원하는 작업 수준 보다 한단계 높은 수준으로 셋팅 해주는 것이 좋습니다. 그래야 가상 메모리 사용을 줄이거나 없앨 수 있기 때문입니다.
페이징 ( Paging )
- 내용
세그먼테이션 ( Segmentation )
- 내용
제목
- 내용
내부 단편화
- 내용
외부 단편화
- 내용
결론
내용
내용
출처 :
'프로그래밍 > 프로그래밍 기초' 카테고리의 다른 글
바인딩과 바인딩 타임 그리고 할당 (0) | 2016.04.21 |
---|---|
메모리 구조 (0) | 2016.03.23 |