-Computer Theory

Windows 메모리 관리기법(가상메모리와 페이징, 세그멘테이션)

guswlsdk 2018. 7. 17. 23:53
반응형


32비트 윈도우 운영체제에서 기본적으로 4GB 메모리를 사용한다. 


프로그램을 실행시키려면 메모리에 적재를 해야한다.


이 때 만약 실행시키고 싶은 프로그램이 5GB이면 메모리가 공간이 부족하여 실행시킬 수 없을 것이다.


이러한 문제점을 가상 메모리라는 개념을 사용하는데, 이는 Windows 메모리 관리 기법 중 하나이다.


Windows 32비트 운영체제에서 모든 프로세스는 각각 4GB의 크기의 가상 메모리를 할당 받는다.


구조는 다음과 같다.





이처럼 4GB의 가상 메모리를 할당 받은 프로세스는 가상 주소(논리 주소)를 가진다. 이 주소는 물리 주소(RAM)이 아닌 하드디스크 내부 페이지 파일에 위치한다.



가상메모리라는 메모리 관리 기법을 사용하면 RAM에는 가상 메모리에서 당장 필요한 부분만 적재되고, 적재된 공간에 있던 것을 다시 페이지 파일로 이동시키면서 한정된 RAM 공간을 효율적으로 사용한다.
(여기서 중요한 것은 가상 메모리는 가상일뿐 실제 동작을 하기 위해서는 RAM에 적재되어야 한다.)

아래 그림을 보면 이해가 쉽다. 


가상 메모리에서 RAM에 적재할 때, 어떤 기준으로 분할을 할지는 세그멘테이션 기법과 페이징 기법으로 그 기준을 정한다.

반응형