Mac에서 가상 메모리를 끄면 안되는 이유

0
1211

Mac에는 일정량의 물리적 메모리 응용 프로그램이 사용할 수 있습니다. 실행중인 프로그램, 열린 파일 및 Mac에서 현재 작업중인 기타 데이터는이 실제 메모리에 저장됩니다. 그러나 이는 단순화입니다. 응용 프로그램은 “가상 메모리”를 사용할 수도 있습니다.이 가상 메모리는 Mac이 압축하여 임시로 디스크에 저장할 수 있습니다.

최신 Mac에서는 가상 메모리를 비활성화 할 수있는 공식적인 방법은 없지만 MacOS X (현재는 macOS)가 출시되기 며칠 전에 가능했습니다. Mac이 디스크에 가상 메모리를 저장하지 못하도록 시스템을 해킹하는 것이 가능할 수도 있지만 그렇게하지 마십시오.

가상 메모리 란?

Mac에는 물리적 메모리의 양이 제한되어 있지만 사용 가능한 가상 메모리의 넓은 영역이 실행중인 프로그램에 노출됩니다. 예를 들어, RAM이 8GB 인 Mac을 사용하더라도 Mac의 모든 32 비트 프로세스에는 4GB의 사용 가능한 주소 공간이 제공됩니다. 모든 64 비트 프로세스에는 약 18 엑사 바이트 (180 억 기가 바이트)의 공간이 제공됩니다.

응용 프로그램은 이러한 제한 내에서 원하는만큼의 메모리를 자유롭게 사용할 수 있습니다. 실제 메모리가 가득 차면 macOS는 적극적으로 사용되지 않는 데이터를 자동으로 “페이지 아웃”하여 Mac의 내장 드라이브에 저장합니다. 데이터가 다시 필요할 때 다시 RAM으로 전송됩니다. 데이터를 항상 RAM에 유지하는 것보다 속도가 느리지 만 시스템이 투명하게 “작업을 계속”할 수 있습니다. Mac에서 디스크에 가상 메모리 데이터를 저장할 수없는 경우 계속하려면 프로그램을 닫으라는 메시지가 표시됩니다.

이것은 기본적으로 Windows의 페이지 파일과 동일하며 Linux 및 기타 UNIX 유사 운영 체제의 스왑 공간입니다. 사실, macOS는 UNIX와 유사한 운영 체제 자체입니다.

최신 버전의 macOS는 실제로 디스크에 데이터를 페이징 아웃하지 않기 위해 더 많은 문제를 겪고 있으며 페이징하기 전에 메모리에 저장된 데이터를 최대한 압축합니다.

어디에 저장되어 있습니까?

가상 메모리 데이터는 /private/var/vm 디스크로 페이징 된 경우 Mac 내부 저장소의 디렉토리. 데이터는“swapfile”이라는 하나 이상의 파일에 저장되며 숫자로 끝납니다.

대부분의 UNIX 유사 운영 체제는 스왑 파일에 별도의 파티션을 사용하여 공간의 스왑을 위해 스토리지의 일부를 영구적으로 할당합니다. 애플의 macOS는 이것을하지 않습니다. 대신 스왑 파일 파일을 시스템 스토리지 드라이브에 저장합니다. 응용 프로그램에 추가 가상 메모리가 필요하지 않은 경우 이러한 파일은 공간을 많이 사용하지 않습니다. 응용 프로그램에 더 많은 가상 메모리가 필요한 경우 이러한 파일의 크기는 필요에 따라 커지고 더 이상 필요하지 않으면 축소됩니다.

이 디렉토리에는 “절전 이미지”파일도 포함되어 있으며, Mac의 RAM 내용을 최대 절전 모드 일 때 디스크에 저장합니다. 이를 통해 Mac은 전원을 사용하지 않고 종료하면서 열려있는 모든 응용 프로그램 및 파일을 포함하여 상태를 저장할 수 있습니다.

이 디렉토리의 내용을보고이 파일이 현재 디스크에서 사용중인 공간을 확인하려면 터미널 창을 열고 다음 명령을 실행할 수 있습니다. 터미널 창을 열려면 Command + Space를 눌러 스포트라이트 검색을 열고 “터미널”을 입력 한 다음 Enter 키를 누르십시오.

ls -lh /private/var/vm

아래 스크린 샷에서 우리는 이러한 각 파일의 크기가 Mac에서 1GB임을 알 수 있습니다.

가상 메모리를 비활성화하지 않아야하는 이유

이 기능을 비활성화하지 마십시오. macOS 운영 체제 및 실행중인 응용 프로그램은이 기능이 활성화 될 것으로 예상합니다. 사실, Apple의 공식 문서에 따르면“OS X와 ​​iOS에는 모두 완전히 통합 된 가상 메모리 시스템이있어 끌 수 없습니다. 항상 켜져 있습니다.”

그러나 그것은 기술적으로 macOS에서 백업 저장소, 즉 디스크의 스왑 파일을 비활성화 할 수 있습니다. Mac에 dynamic_pager 시스템 데몬을 실행하지 말라고 스왑 파일을 삭제하기 전에 시스템 무결성 보호 기능을 비활성화해야합니다. 다른 사람에게 권장하지 않으므로 여기에 관련 명령을 제공하지 않습니다.

macOS 운영 체제 및 실행중인 응용 프로그램은 가상 메모리 시스템이 제대로 작동 할 것으로 예상합니다. 실제 메모리가 가득 차고 Mac 운영 체제에서 디스크로 데이터를 페이징 할 수없는 경우 다음 두 가지 나쁜 일 중 하나가 발생합니다. 계속하려면 하나 이상의 응용 프로그램을 종료하라는 메시지가 표시되거나 응용 프로그램이 중단됩니다 일반적인 시스템 불안정을 경험할 수 있습니다.

그렇습니다. 16GB 이상의 RAM이 있더라도 메모리, 많은 양의 데이터를 메모리에 저장해야하는 비디오, 오디오 또는 이미지 편집기와 같은 까다로운 전문 응용 프로그램을 실행하는 경우 때때로 메모리가 가득 찰 수 있습니다. 그대로 두십시오.

디스크 공간 또는 SSD에 대해 걱정하지 마십시오

사람들이 가상 메모리 기능을 비활성화하고 디스크에서 스왑 파일을 제거하려는 이유는 두 가지입니다.

먼저 디스크 공간 사용량이 걱정 될 수 있습니다. 공간을 확보하기 위해 이러한 파일을 제거 할 수 있습니다. 우리는 걱정하지 않을 것입니다. 이 파일들은 디스크에 많은 공간을 낭비하지 않습니다. Mac에 가상 메모리가 많이 필요하지 않으면 작을 것입니다. RAM이 4GB 인 MacBook Air에서 약 1GB의 공간을 사용하는 스왑 파일이 발견되었습니다.

그들이 많은 공간을 사용하고 있다면 그것은 열린 프로그램이 그것을 필요로하기 때문입니다. 까다로운 프로그램을 닫거나 재부팅을 시도하면 스왑 파일 파일이 줄어들고 공간 사용이 중지됩니다. Mac은 필요할 때만 디스크 공간을 사용하므로 아무 것도 잃지 않습니다.

가상 메모리 파일이 항상 매우 큰 경우 이는 가상 메모리 기능을 비활성화 할 필요가 아니라 Mac에 더 많은 RAM이 필요하다는 표시입니다. (Apple 메뉴>이 매킨토시에 관하여를 클릭하고“메모리”옆에있는 내용을 읽으면 Mac의 실제 메모리 양을 확인할 수 있습니다.)

다른 문제는 Mac의 내장 솔리드 스테이트 드라이브의 마모입니다. 많은 사람들이 SSD를 과도하게 쓰면 수명이 단축되고 문제가 발생할 수 있다고 걱정합니다. 이론상 이것은 사실이지만 실제로는 이러한 우려가 일반적으로 과장되어 SSD의 수명이 훨씬 줄어든 날로부터 남아 있습니다. 최신 SSD는 이와 같은 기능이 활성화되어 있어도 오래 지속됩니다. macOS는 기본 시스템 기능을 활성화 한 상태로 SSD를 빨리 소모하지 않습니다. 실제로 Mac의 다른 기능은 SSD보다 먼저 죽을 수 있습니다.

다시 말해 걱정하지 마십시오. 가상 메모리를 그대로두고 Mac이 설계된대로 작동하도록합니다.