출처 http:// : http://cappleblog.co.kr/247 

0273A84751563D0313A78A




가상 메모리란 무엇인가? - 페이징 파일의 정체

윈도우에서 가상 메모리는(페이징 파일은) 실제 물리적인 메모리 공간(RAM) 외에 하드 디스크에 파일 형태로 따로 준비하는가상의 메모리 공간으로, 부족한 시스템 메모리를 보조해주는 역할을 하게 됩니다. 그런데 간혹 가상 메모리를 실제 메모리 공간처럼 사용하는 줄 아시는 분들이 계시더군요. [실제 메모리 + 가상 메모리] 이렇게 메모리의 용량이 늘어나는 것으로 착각하시는 거죠. 사실은 그게 아닙니다. 다시 말하지만 가상 메모리는 실제 메모리를 보조해주는 역할입니다. 그렇다면 가상 메모리는 어떻게 실제 메모리를 보조해주는 것일까요?

윈도우의 메모리 관리자는 만약 실제 메모리 공간이 가득차서 용량이 부족하게 되면, 실제 메모리에 저장되어 있는 내용 중 당장 사용되지 않는 내용들을 미리 준비된 하드 디스크의 페이징 파일(Pagefile.sys)로 옮겨 실제 메모리에 여유 공간을 확보합니다. 그러다 페이징 파일에 옮겨둔 내용이 필요하면 다시 실제 메모리로 옮겨서 사용하는 것이죠. 즉, 윈도우의 가상 메모리는 프로그램의 사용 상황에 맞춰 실제 메모리와 가상 메모리 사이에서 데이터를 스왑(교환)하는 방식으로 부족한 실제 메모리의 공간을 알맞게 조절하는 기능입니다.

235B1E4C515664181F5F7E실제론 이것보단 좀 더 복잡하고 페이지 폴트와 같은 전문 용어도 있음. 하지만 매우 단순화시키면 대충 이런 식!



즉, 윈도우의 가상 메모리는 실제 메모리의 남은 공간이 부족하게 되면 사용되는 일종의 임시 공간입니다. 그래서 만약 실제 메모리의 용량이 충분하다면 거의 사용되지 않는 특성이 있습니다. 만약 실제 메모리 공간이 부족하여 가상 메모리가 사용되기 시작하면 위에서 이야기한 것과 같이 [실제 메모리 <-> 가상 메모리] 사이로 데이터를 옮기는 과정들이 추가되기 때문에 그만큼 시스템이 전체적으로 느려지게 됩니다. 특히나, 실제 메모리 공간인 램에 비해 가상 메모리 공간인 디스크는 매우 느리기 때문에 더더욱 느려지는 것이죠.

그래서 가상 메모리는 되도록 사용되지 않을 수록 좋습니다. 그럴려면 실제 메모리 즉, 램의 용량이 충분해야 하죠. 하지만 꼭 메모리 공간이 부족하지 않더라도 일부 프로그램의 경우 반드시 이러한 가상 메모리를 사용하는 경우도 있습니다.






가상 메모리 관리하기 - 전체 윈도우 공통

가상 메모리(페이징 파일)은 기본적으로 윈도우가 자동으로 관리를 하고 있습니다. 가상 메모리인 페이징 파일은 보통 부팅 파티션에 위치하고[VHD 부팅이라면 VHD 파일이 위치한 파티션] 그 크기는 동적으로 윈도우가 알아서 자동으로 사용량에 맞춰 크기를 조절하는 형식으로 관리가 되는 것이 기본입니다.

이제 이러한 페이징 파일을 사용자가 원하는대로 관리하기 위해선 아래와 같이 설정하시면 됩니다.

01. 시스템 창[Windows Key + Pause]을 띄운 후 고급 시스템 설정으로 들어갑니다. [* 윈도우 XP 의 경우 바로 2 단계의 시스템 속성 창이 뜹니다.]

036F6A4D515641581327E3



02. 성능 그룹의 설정으로 들어갑니다.

1572C94D515641590FB62A



03. 성능 옵션 창이 뜨면 고급 탭으로 이동한 후 가상 메모리 그룹의 변경을 클릭합니다.

146DE64D5156415914ACA2



04. 가상 메모리 창이 뜨면 가상 메모리 옵션을 원하는대로 설정해줍니다. 설정법은 아래와 같습니다. 

A. 모든 드라이브에 대한 페이징 파일 크기 자동 관리의 체크를 해제합니다.
B. 드라이브 목록에서 가상 메모리를 설정할 드라이브를 선택합니다.
C. 페이지 파일 크기 옵션을 선택합니다.
  • 사용자 지정 크기 : 처음 크기와 최대 크기를 MB 단위로 입력합니다. 페이징 파일은 처음 크기로 생성되며 이후 가상 메모리의 공간이 부족하면 처음 크기와 최대 크기 범위 내에서 자동으로 페이징 파일의 크기가 늘었다 줄었다 합니다. [* 처음 크기 < 최대 크기]

  • 시스템이 관리하는 크기 : 윈도우가 자동으로 페이징 파일의 크기를 관리합니다.

  • 페이징 파일 없음 : 해당 드라이브의 페이징 파일을 제거합니다.
D. 설정을 클릭합니다. [* 꼭 설정을 눌러야 선택한 옵션이 적용됩니다.]

226D154D5156415A1565D5


페이징 파일은 모든 드라이브에서 없앨 수도 있고, 여러 드라이브에 동시에 설정할 수도 있습니다. 페이징 파일을 다른 드라이브로 옮기려면 현재 페이징 파일이 설정된 드라이브의 페이징 파일을 없앤 후 다른 드라이브에 만들어주면 됩니다.

05. 설정을 모두 마쳤으면 확인을 클릭합니다.

06. 시스템을 재시작합니다.


이렇게 설정한 가상 메모리 - 페이징 파일은 해당 드라이브의 루트에 pagefile.sys 로 저장이 되어 있습니다.

167A1F4D5156415B047D67



이러한 pagefile.sys 파일은 현재 윈도우에서 사용 중인 파일이기 때문에 윈도우 탐색기를 통해 임의로 삭제할 수 없으며[다른 윈도우의 pagefile.sys 는 삭제 가능, 하지만 해당 윈도우로 부팅하면 다시 생깁니다.], 위와 같은 방식으로 해당 드라이브의 가상 메모리 옵션을 페이징 파일 없음으로 설정하게 되면 자동으로 제거됩니다.






가상 메모리의 관리에 대해서

1. 가상 메모리는 가장 빠른 디스크에 설정하는 것이 좋다.

널리 알려진 가상 메모리의 최적화 방법 중에 하나가 가상 메모리를 윈도우가 설치된 디스크와 물리적으로 분리된 다른 디스크의 드라이브로 옮겨주는 것입니다. 이렇게 하면 윈도우와 가상 메모리에서 동시에 발생하는 엑세스 부하를 줄여줄 수 있기 때문이죠.

하지만 한 가지 알아두셔야 할 것이 이러한 내용은 두 디스크가 동일한 성능을 가졌다는 전제 조건이 필요합니다. 즉, [HDD + HDD] 구성이나 [SSD + SSD] 구성과 같이 현재 윈도우가 설치된(현재 가상 메모리가 위치한) 디스크와 새롭게 가상 메모리를 옮겨 줄 디스크의 성능이 서로 비슷할 때에 적용되는 내용이란 것이죠.

만약 현재 SSD 에 윈도우와 가상 메모리가 위치해 있는데 이를 분리해 준다고 가상 메모리를 HDD 쪽으로 옮겨 준다면? 엑세스 부하를 줄여서 얻는 이득보다 훨씬 느린 HDD 에서의 엑세스 속도 저하로 인한 손해가 더 큽니다.

156EB24D5156415C11AF6E부하 분산도 좋지만 포르쉐 타고 잘 달리고 있는데 경운기로 갈아타라면? 기분 좋겠습니까?



고로 [SSD + HDD] 와 같이 급이 다른 성능을 가진 디스크가 혼합된 구성을 가진 시스템이라면 가상 메모리는 무조건 빠른 디스크에(SSD 로) 위치시켜 주시는 것이 좋습니다.




2. 램 용량이 충분하다면 가상 메모리는 아예 없애는 것이 좋다?

실제로 램 용량이 충분하면 가상 메모리가 전혀 사용되지 않을 가능성이 높기 때문에 가상 메모리 없이 사용하시는 분들도 많습니다.

2073034D5156415D0DF1E4가상 메모리를 아예 없앤 경우.



보통 이렇게 사용해도 문제가 없지만 일부 프로그램은 램 용량에 상관없이 반드시 가상 메모리를 필요로 하기도 합니다. 즉, 시스템에 가상 메모리가 전혀 없으면 오류를 일으키는 프로그램이 소수지만 존재한다는 것입니다. 그래서 어떤 프로그램이 이러한지 정확하게 알 수 없으니 저는 가상 메모리를 아예 끄는 것보다는 사용자 지정 크기 옵션을 통해 처음 크기를 소용량(1GB 이하)으로 설정해놓고 최대 크기는 적절히 지정해서 사용하는 것을 추천합니다.

이렇게 하는 이유가 지금 당장 사용하는 프로그램들에는 문제가 없을지라도 나중에 어떤 프로그램을 추가로 설치하여 사용할 지 모르고, 만약 그 때가 되어 문제가 발생하면 이게 가상 메모리 때문에 발생한 문제인지 모르고 엉뚱한 곳에서 헤메이게 될 공산이 크기 때문이죠. [덤으로 오류가 발생했을 때 기록되는 덤프 파일도 가상 메모리 용량이 최소 200MB 이상 되어야 생성 가능한 점도 있습니다.]


이런 내용을 듣고 "어라? 그럼 소용량의 램 디스크를 만들어서 그곳에 가상 메모리를 작게 넣어두면 되겠네?" 라는 생각이 불현듯 치고 나올 수도 있습니다.

하지만 생각을 해보죠. 이렇게 램 용량이 충분하면 실제로 가상 메모리가 사용될 확률은 매우 적습니다. 이야기한 것과 같이 소수의 프로그램에서 아주 가끔 사용될 수도 있는 것이 전부겠죠. 그래서 가상 메모리도 오류 방지를 위해 최소한의 용량으로 만들어만 둔다는 의미가 강합니다. 극히 적은 확률로 사용될 가능성이 있는 가상 메모리를 위해 램 디스크 프로그램을 설치하고 설정하여 관리까지 한다?

뭐 램 용량이 정말 차고 넘쳐날 정도로 많거나, 그렇게 차고 넘쳐서 다른 용도로 어느 정도 넉넉하게 램 디스크를 사용한다면, 이러한 램 디스크에 가상 메모리도 작게 설정해두는 것은 고려해봄직 하긴 합니다. 하지만 일부러 오직 가상 메모리만을 위해서 램 디스크를 설치하는 것은 제 개인적인 의견일 수도 있지만 크게 효용 가치는 없다고 생각합니다. 그래서 디스크에서 1GB 정도를(물론 더 작게 설정해도 되고) 혹시 모를 오류를 위해 투자한다고 생각하시고 잊어버리시는게 좋지 않을까 생각합니다.




3. 가상 메모리는 고정된 크기로 설정하는 것이 좋다?

가상 메모리를 사용자 정의 크기 옵션을 통해 처음 크기와 최대 크기를 동일하게 설정해주어 가상 메모리의 크기가 동적으로 변하지 않게 해주는 것이 좋다는 이야기가 있습니다.

146E794D5156415E128992페이징 파일의 크기 고정



일단 가상 메모리의 크기가 동적으로 늘어나는 이유는 무엇일까요? 그것은 실제 램 공간은 물론 가상 메모리 공간조차도 부족하여 윈도우가 가상 메모리의 크기를 자동으로 늘리는 것입니다. 즉, 우선 이건 문제 해결의 초점이 잘못 맞춰진 경우입니다. 우리가 초점을 맞춰야 할 곳은 가상 메모리의 크기가 줄었다 늘었다하는 점이 아닌 "현재 설정된 가상 메모리의 크기" 조차도 부족하여 가상 메모리의 크기가 자꾸 늘어난다는 점입니다. 이는 가상 메모리의 처음 크기가 자신의 램 용량과 프로그램 사용량에 비해 너무 작게 설정되어 있음을 의미합니다. 이럴 땐 가상 메모리의 처음 크기를 좀 더 여유 있게 늘려주어야 함이 옳은 것이죠.

다음으로 애초에 가상 메모리의 크기를 전혀 부족하지 않게끔 크게 설정한 후 그 크기를 고정하는 방향으로 설정하는 경향도 있습니다. 물론 이렇게 해두면 가상 메모리가 늘었다 줄었다 하는 것을 보지 않아도 되는 이점은 있습니다. 하지만 쓸데없이 크게 설정한 가상 메모리는 디스크의 공간만 낭비하는 꼴입니다. 또한 그러한 설정 방식이 가상 메모리의 성능을 높여주는 것도 아닙니다.

결국 적절히 자신에게 맞는 크기를 스스로 찾아 그에 맞춰 설정해주는 것이 가장 좋습니다.




4. 나에게 적당한 가상 메모리 용량은 얼마일까?

가상 메모리의 최소 크기는 램 용량의 몇 배에서... 이러한 내용은 예전 램이 128MB 나 256MB 정도 밖에 달리지 않았을 때를 기준으로 한 것이라 너무 오래된 정보이고 요즘의 실정에는 잘 맞지 않습니다. 또한 요즘은 시스템에 장착되는 램 용량이 상당히 크기 때문에 윈도우에서 관리하는 기본 설정 값이 너무 큰 경우가 대부분입니다.

그래서 가장 좋은 것은 역시나 자신이 직접 자신에게 맞는 최적화된 값을 찾아내는 것입니다. 방법은 간단합니다. 사용자 지정 크기를 통해 가상 메모리의 처음 크기를 최소값인 (64bit 기준) 16MB 로 설정하고 최대 크기는 일단 충분히 크게 지정합니다.

246D314D5156415E1518AE처음 크기를 최소 크기로 최대 크기는 충분히 늘어날 수 있을 만큼



이와 같이 설정을 한 후 재부팅하여 변화를 적용하고, 이제 평상시 사용하는 정도로 프로그램들을 실행하는 겁니다. 인터넷 익스플로러나 크롬과 같은 웹 브라우저는 열린 창의 개수에 비례해 램 용량을 그만큼 더 잡아먹기 때문에 인터넷 창도 대충 평상시 자신의 습관에 알맞게 적당히 띄워줍니다.

이제 그렇게 프로그램들이 실행된 상태에서 가상 메모리 설정 창으로 들어가 봅니다. 그럼 자신이 사용한만큼 가상 메모리의 크기가 늘어나 있을 겁니다. 만약 가상 메모리가 전혀 늘어나지 않았다면 그건 아직 그정도로는 가상 메모리가 사용되지 않을 만큼 여러분의 램 용량이 충분하다는 것입니다.[그게 가장 좋습니다.]

2069424D5156415F190893자신의 사용량에 맞춰 늘어난 가상 메모리 용량



하지만 램 용량이 1GB~2GB 로 소용량이시거나 사용하는 프로그램들이 굉장히 무거운 경우 보통 가상 메모리 크기가 처음에 비해 어느 정도 늘어나 있을 겁니다. 그 용량이 자신에게 필요한 평균적인 가상 메모리의 크기입니다.

결론 나왔죠? 이제 그 크기에 약간의 여유를(약 1.2 ~ 1.5 배 정도면 충분) 주어 가상 메모리의 처음 크기를 설정해주고, 최대 크기도 마찬가지로 처음 크기에서 어느 정도의 여유를 더 주는 방향으로 설정해주시면 됩니다. 이런 식으로 자신에게 맞는 가상 메모리의 크기를 찾으시고 그에 맞춰 설정해주는 거죠. 간단하죠?


그런데 만약 가상 메모리의 크기가 무슨 주유소 기름값 마냥 무서운 줄 모르고 쭉쭉~ 치고 올라가면서 버벅인다면? 그건 현재 램 용량이 그만큼 부족한 겁니다. 램 용량 좀 업그레이드 하세요.




5. 가상 메모리는 사용되지 않을 수록 좋다.

처음에 밝힌 것과 같이 가상 메모리는 실제 메모리의 공간이 부족할 때 사용되는 것입니다. 실제 메모리와 가상 메모리의 속도 차이 즉, 램과 디스크의 속도 차이는 하늘과 땅 차이라고 할 수 있습니다. 앞서 SSD 와 HDD 를 농담삼아 포르쉐와 경운기에 비교했지만, 램과 디스크는 램의 속도를 전투기에 비유하자면 디스크의 속도는 거북이에 비유할 수 있을 정도입니다.

186DA14D5156416114B99D애초에 둘을 비교하는 것 자체가 넌센스



이건 디스크에서 그 빠르다는 SSD 가 출동해도 램에게는 게임이 안 되는 겁니다. 아무튼 그래서 윈도우가 가상 메모리를 자주 그리고 많이 사용하게 되면 램보다 느린 디스크로 인해 그만큼 시스템의 성능 또한 뚝뚝 떨어지게 됩니다. 소위 버벅이는 거죠. 그래서 가상 메모리는 되도록이면 사용되지 않는 것이 가장 좋습니다. 

가상 메모리가 자주 그리고 많이 사용된다는 것은 현재 시스템의 물리적인 메모리의 용량(RAM 용량)이 부족하다는 것을 의미합니다. 이것은 램 용량을 충분하게 늘려 윈도우가 가상 메모리를 사용할 가능성을 최대한 줄여주는 것 외에는 방법이 없습니다. 즉, 시스템에 충분한 용량의 램을 장착해 주어야 문제를 해결할 수 있다는 것이죠. 고로

196F994D51564162129BFA램에 돈을 좀 꽂아주면 됩니다.



돈이 세상의 전부는 아니지만, 돈을 바르기 시작하면 안 되는 것도 드물죠. 아무리 최적화하고 용을 쓰고 별에 별 팁을 다 적용해도 돈을 들이붓는 놈한테는 못 당해요. 잔인하지만 사실이잖아요? 그러니 우리는 램 용량에 과감히 투자를 해야 합니다. 다행히도 몇 년 전부터 램 값이 많이 쌉니다.

일단 램 용량은 무조건 크면 클 수록 좋습니다. 이건 진리입니다. 그래도 이야기를 해 보자면 일반적으로 간단한 웹 서핑 및 소소한 인터넷 캐쥬얼 게임용이라면 최소 2GB 적정 4GB, 인터넷 창도 수십 개씩 좀 화끈하게 띄우고 프로그램도 한 번 열면 닫을 줄을 모른다면 8GB 정도 생각하시면 된다고 할 수 있습니다.

사실 보통 이야기하는 것에 비해 좀 많은 것 아닌가? 라는 생각이 들 수 있을 정도로 추천을 했는데요. 제 오랜 경험상 램 용량은 그 사람이(자신이) 현재 원하는 작업 수준보다 한 단계 더 높게 약간 넘치는 듯한 느낌이 들 정도의 용량으로 셋팅해주는 것이 좋습니다. 그리고 이렇게 보다 큰 용량을 자신있게 추천을 하는 이유는 요즘 램 값이 싸니까요.

이제 가상 머신 두 세 개는 우습게 돌리면서 이것 저것 무거운 프로그램들을 많이 쓰시거나, 캐드 다루시거나, 동영상을 전문적으로 편집하시거나, 포토샵으로 수백 메가짜리 파일들을 우습게 여시는 분들은 메인보드가 지원하는 한 최대로 꽂아주시는게 무조건 좋습니다. 꽂아 넣을 수 있을 때까지 꽂아 넣으세요. 그건 돈지랄이 아니에요. 그리고 요즘 램 값이 많이 싸잖아요?






마무리

1 년 전에 윈도우 7 을 기준으로 하여 포스팅했던 것을 약간의 설명을 더 추가하고 전체 윈도우에 맞춰 설명을 수정하여 다시 재 포스팅하였습니다. 크게 바뀐 부분은 없지만 어떻게 그때보다 글이 더 잘 나왔는지 모르겠네요. 아무튼, 1 년 전에도 그랬고, 지금도 그렇지만 윈도우 가상 메모리의 진리는 하나입니다.

2672B94D515641620D74D9지금이 램 뱅크를 풀로 채워볼 적기입니다.



램 용량을 좀 충분하게 업그레이드 하시고 가상 메모리는 대충 쓰시면 됩니다. 32GB 풀 뱅크를 노려보세요. 이상입니다. ^^;;

 

profile

이 또한 지나가리라.

엮인글 :

profile

stone

2015.07.19 14:32:44

가상메모리 자세한 설명 감사드립니다.
profile

초보윈코

2015.07.19 22:07:28

잘 보았습니다..
profile

음주가무

2015.07.25 11:00:18

고맙습니다
profile

슈퍼루키

2015.07.29 20:14:05

잘보고 갑니다. ^^
profile

이즈

2015.09.01 11:07:21

유익한 강좌 감사합니다.

럭키 포인트 당첨

2015.09.01 11:07:21

축하합니다. 이즈님은 10포인트에 당첨되셨습니다.
profile

심청사달

2015.09.15 14:10:57

일반 사용자가 필요한 가상메모리에 대한 정보를 쉽고도 첨부터 끝까지 다 정리한 강좌네요.

제가 사용하면서 실사용에 필요한 부분을 간략하게 정리하자면

1. 메모리가 많아도 일정한 가상메모리 설정은 필요하다. 1~4 기가 정도 필요에 따라 더 많이 할수도 있다.

 - 크기를 가변으로 설정이 가능하므로 최소-최대크기를 설정할 수 있다.

 - 최소크기를 200MB정도 주면 거의 확장하지 않으므로 디스크 공간 낭비를 막을 수 있다.

2. 메모리가 많다고 굳이 램디스크에 가상메모리를 설정하는 것을 권하지는 않는다.

 - 램디스크에 가상메모리 설정은 램디스크 안전성에 악영항을 미칠 수 있다.

 - 아무리 빨라봐야 한번이라도 안전성이 무너지면 램디스크의 의미가 없죠.

 - 메모리가 많으면 가상메모리를 거의 사용하지 않기 때문에 하드나 ssd에 가상메모리를 설정해도 거의 부담을 주지 않는다.

profile

kuhaha

2015.12.20 07:08:46

감사합니다. 많이 공부 했습니다.

profile

몸꽈3

2016.02.29 16:32:48

좋은 정보 고맙습니다

List of Articles
번호 제목 글쓴이 날짜 조회 수
15 구글 검색 꿀팁.jpg file 윈코 2018-01-30 258
14 윈도우10 설치 후 꼭 봐야하는 비디오(스냅, 가상데스크톱, 제어판 사용법) [1] 윈코 2016-01-17 1404
13 윈도8.1, 편리하게 쓰는 4가지 비법 공개 [1] 윈코 2015-09-22 1075
12 펌; 백신 + 기본 유틸리티 추천 [5] 상숙달림이 2015-09-13 1360
11 한번에 윈도우7 USB 3.0 부팅 설치파일 만들기 [5] 상숙달림이 2015-09-02 2521
10 펌; SSD 의 이해 - 낸드 플래시 메모리의 구조와 SLC, MLC, TLC 방식의 차이 file [10] 상숙달림이 2015-07-19 2982
» 펌;가상메모리, 페이징파일관리 [9] 상숙달림이 2015-07-19 727
8 Vimeo dailymotion 저장하는 방법 file [3] 상숙달림이 2015-07-16 413
7 최고의 엑셀 활용 팁 "달력 만드는 방법"2/2 [3] 상숙달림이 2015-07-11 402
6 최고의 엑셀 활용 팁 "달력 만드는 방법"1/2 [2] 상숙달림이 2015-07-11 1136
5 곰플레이어 2개국어 자막 [5] 상숙달림이 2015-06-23 380
4 iobit 사에서 제공하는 윈도우 8.1&8 시작매뉴 file [7] 윈코 2015-05-26 390
3 한글 윈도우 10 나라별 언어 순정 받기 file [9] 윈코 2015-05-10 504
2 간단한 심리학의 팁 [2] 正正當當 2015-05-03 254
1 바이두 한국어 가입 페이지 있습니다. [1] 正正當當 2015-05-03 549