Windows 페이지 파일을 비활성화하면 어떤 문제가 있습니까?


15

사람들은 항상 페이지 파일이 필요하고 성능이 향상 될 것이라고 말하지만 내 Windows 7은 페이지 파일없이 실행되도록 설정되어 있습니다. 사람들이 이런 말을하는 이유는 단순히 이해하지 않는다 - 나는 6 RAM의 지브, 그리고 심지어 온 유일한 시간이 가까운 내가 일시적으로 페이지 파일을 사용할 수있는 크롬을 컴파일 할 때였다 RAM 부족에있다.

일반적인 상황에서 속도 향상을 위해 실제로 페이지 파일 *이 필요합니까? 왜?

크래시 덤프에는 페이지 파일이 필요하다는 것을 알고 있습니다. 그래도 크래시 덤프를 사용하지 않으므로 중요하지 않습니다.

답변:


8

페이지 파일은 성능을 향상시키지 않지만 반드시 적절한 메모리 관리를 통해 페이지 성능을 저하 시키지는 않습니다. 그러나 페이지 파일없이 실행하면 사용할 수없는 메모리를 요청하는 응용 프로그램과 관련하여 시스템의 불안정성이 증가하는 경향이 있습니다.

OS가 메모리 관리에 특히 나쁜 경우가 아니면 6GiB의 메모리가있는 페이지 파일은 거의 사용되지 않습니다. 그것은 전혀 사용되지 않을 것이라고 말하는 것은 아닙니다. IIRC MS Windows는 사용 가능한 메모리가 충분할 때에도 페이징을 수행 할 때 약간 미쳤습니다. (왜 몰라요)

그러나 사용중인 페이지 파일이 없을 때 발생하는 상황은이를 가능하게하는 충분한 이유 일 수 있습니다. 하드 충돌. 대부분의 앱은 요청한 메모리를받을 것으로 예상합니다. 그렇지 않으면 충돌합니다. (아, 그러나 수천 바이트 에 살았던 좋은 시절 은 지나갔고, 너무 많은 개발자들에게는 메모리 관리를 다루는 관행이 있습니다.)

앱이 올바르게 구축되면 실패 할 것입니다. (행운이 있어도 전혀 실패하지는 않습니다. 그러나 믿을 수는 없습니다.) 대부분의 앱에서는 환상적인 실패를 경험할 수 있습니다. 또한, 한도에 가까운 앱이 많을수록 시스템 전체의 불안정성이 나타날 가능성이 높습니다.

내 경험의 사례. Windows XP, 4GiB, 페이지 파일 없음 성능은 훌륭했습니다. 우리가 4GiB 한계에 가까워지기 시작할 때까지. 그런 다음 상황이 악화되었습니다. 앱이 중단되거나 메뉴 항목이 부분적으로 만 나타나거나 전혀 나타나지 않습니다. 버튼은 아무 것도하지 않습니다. 성능이 좋지 않더라도 페이지 파일로 다시 전환했습니다. 전반적인 안정성은 간단했습니다. 더 좋고 더 중요합니다.

이제는 6GiB를 지원하는 앱을 사용하지 않거나 앱에서 작업하고 있지만 비디오 편집, 사진 편집, 오디오 믹싱 및 제작 등과 같은 몇 가지 상황에 대해 생각할 수 있습니다. 기본적으로 많은 데이터 (작업 또는 스트리밍)를 다루는 모든 것. 해당 데이터가 메모리 용량을 초과하면 앱이 "가짜"가 될 가능성이 높습니다.


그래서, 간단하게 (예 / 아니오) 넣어 : 그것은 그 말을 정확 나는 2 지브의 RAM을 이상 사용하지 않을 경우 , 내가 하지 않습니다 성능 향상을 볼 ? 아니면 그 전제 조건이 있어도 어딘가에 경고가 있습니까?
user541686

9
아니요, 페이지 파일 성능을 향상 시키지 않습니다 . 안정성 만 향상시킵니다 . 페이징은 정의에 따라 디스크 수준 작업이며 디스크 작업은 항상 RAM 수준 작업보다 느립니다. 또한 6GiB (2GiB를 초과하지 않음)를 사용하더라도 Windows에서 여전히 사용하지 않는 프로세스를 디스크에 페이징 아웃하므로 일부 성능 문제가 발생할 가능성이 높습니다. 그것이 현명하다고 생각한 사람이라면, 나는 그들이 '주먹을 것입니다!'
Kerri Shotts

괜찮아. 어쩌면 듣고 싶었 기 때문일 수도 있습니다. 모르겠지만 대답이 마음에 듭니다. : P 꽤 합리적으로 들립니다. 감사합니다!
user541686

1
사실이 아님-스왑에서 사용되지 않은 데이터를 캐싱에 사용할 수 있기 때문에 페이지 파일이 성능을 향상시킬 수 있습니다. 이것은 당신에게 그런 downvote를 일으켰습니다.
peterh-복원 자 Monica Monica

1
페이지 파일은 성능을 향상시킬 수 있습니다. 모든 종류의 고속 캐시에 사용 가능한 RAM을 증가시켜 프로그램 시작 /로드 / 작동 성능을 향상시킵니다. 페이지 파일이 없으면이 소중한 물리적 RAM은 제거 할 수없는 정크로 채워집니다.
Ark-kun

7

Mark Russinovich 의이 기사 는 페이지 파일에 대해 알고 싶은 모든 것을 알려줍니다.

"캐시"가 페이지 파일의 기능과 관련하여 적절한 용어인지는 잘 모르겠습니다. 캐시는 데이터에 빠르게 액세스 할 수있는 임시 보유 지점입니다. 실제 RAM에 대한 경합이 너무 많으면 운영 체제가 페이지 파일에 "오류"를 발생시킵니다. 따라서 메모리 부족으로 인해 프로그램이 하드 크래시되는 것을 방지하기 위해 RAM 오버플로에 대한 임시 공간입니다. 그러나 Windows가 한동안 액세스하지 않은 것들을 페이지 파일에 넣으려고한다고 생각합니다 (리눅스도 그렇게 할 수 있음). 그런 의미에서 캐시이지만 실제로는 기본 기능은 아닙니다.

어쨌든 기사를 읽으십시오. 페이지 파일 설정에 대한 지침을 제공합니다. @Sandeep Bansal이 말했듯이 가끔 실행하기 위해 "요구 사항 확인"의 일부로 게임을 해야하는 게임이있을 수 있습니다 (그러나 나는 모른다).

편집 :이 예제는 페이지 파일의 역할을 이해하는 데 도움이 될 수 있습니다.

512MB의 RAM이 있다고 가정 해 봅시다. 250MB의 RAM을 사용하는 최소화 된 브라우저 자체를 포함하여 많은 프로그램이 열려 있으며 그 시점에서 실행되는 모든 항목의 총 RAM 사용량은 500MB입니다.

그런 다음 150MB의 RAM을 할당하려는 다른 프로그램 (워드 프로세서)을 시작합니다. 메모리가 부족합니다. 그러나 페이징 시스템이있는 경우 최소화 된 브라우저가 포함 된 메모리 페이지를 디스크로 페이징 할 수 있습니다. 그러면 새 프로그램이로드 될 수 있습니다.

이제 조금 후에 브라우저로 돌아가고 싶다고 가정 해 봅시다. 글쎄, 그것은 방금 디스크로 보낸 것을 "페이지 인"해야한다. 그 시점에 충분한 여유 RAM이 있으면 문제없이 그렇게 할 수 있습니다. 없는 경우 먼저 다른 것을 페이징해야합니다. CPU와 경쟁하는 많은 프로그램이 있고 지속적인 페이징이있는 경우 상황이 느려지고 "스 래싱"이라는 조건이 있습니다. 이 모든 페이징 인 / 아웃은 성능을 저하 시키지만 메모리 부족 오류로 인해 "하드"크래시를 방지합니다. 이것이 페이징 파일의 목적입니다. 너무 많은 페이징, 즉 "스 래싱"은 대부분의 시간 동안 더 이상 RAM을 확보 할 수 없기 때문에 포기하는 프로그램보다 낫지 않습니다.

이제, 주어진 순간에 사용되지 않을 수있는 것을 예측 하기 위해 알고리즘이 존재하는 경우 운영 체제가 생각하지 않는 것을 "사전 페이지"하여 바로 사용할 수 있습니다. 따라서 RAM이 충분하더라도 페이지 파일을 사용하는 Windows를 설명합니다. 가능한 한 많은 RAM을 사용하려고합니다. Windows는 여유 RAM이 디스크 캐시 역할을하는 Linux와 유사하므로 균형 조정 작업을 제대로 수행하면 전체 성능에 기여할 수 있습니다. 이것은 OS 디자인의 일부이며 수천 명의 프로그래머 중 좋은 운영 체제를 얻는 데 10 년이 걸리는 이유입니다.

따라서 실제로 귀하의 질문에 대답하기 위해서는 페이지 파일을 비활성화하는 것이 잘못된 것입니다. 내가 제공 한 예제로 돌아가서 페이지 파일 없이는 브라우저를 시작할 수 없거나 OOM 오류를 예상하도록 방어 적으로 프로그래밍되지 않은 잘못 작성된 프로그램이 실제로 이상하게 작동 할 수 있습니다.


@ultrasawblade : 나는 아직도 이해하지 못한다 : 어떤 종류의 "캐시"의 요점은 디스크로의 여행을 막는 것이다 . 어쨌든 거기에 가면 어디에서 파일을 가져 가야합니까? 페이지 파일의 요점은 무엇입니까?
user541686

@ultrasawblade : 또한 기사와 관련하여 다음과 같이 말합니다 in general having [a page file] will mean more usable memory being available to the system. 무엇을 기다립니다? 사용 가능한 메모리가 더 있습니까? 영구적으로 사용되지 않는 RAM 공간이 3GiB를 초과하지 않습니까? (
2GiB

2
페이지 파일이 캐시 가 아닙니다 ! 램이 가득 차서 여전히 시스템에 사용 가능한 램이 더있는 것처럼 보이게하려면 램에서 디스크로 데이터를 복사하기 시작합니다 (졸린 것처럼 보이는 프로세스에서). 새로운 프로세스!
삼켜 버린 엘리시움

2
@ultrasawblade : 편집에 반대하는 이의 제기는 귀하의 예가 97 % RAM 사용량 (500/512)을 지정하는 반면 내 예는 33 % RAM 사용량 (6 중 2GB)을 지정한다는 것입니다. 나는 한 하지 내가 한계에 가까이 갈 경우 어떻게되는지에 대해 물어; 어떤 문제가 발생했는지 이미 잘 알고 있습니다. 나는 아직도 당신이 갈 길이 멀다면 어떻게 될지 물어 보았습니다. 내 경우 (6 GiB RAM 및 2 GiB 사용)에 대해 동일한 주장을 할 수 있다면 훨씬 나을 것입니다. 그렇지 않으면 단순히 내 질문을 다루지 않습니다.
user541686

3
루시 노 비치 링크의 경우 +1 답이 있습니다. 충돌 가능성을 방지하기 위해 안전 메커니즘을 포기하려면 그것이 바로 당신의 생각입니다. Windows는 페이지 파일이 없으면 제대로 작동하지 않습니다. ;)
Kara Marfia

2

페이지 파일은 크래시 덤프를 저장하기위한 것이 아니라 본질적으로이를 위해 만들어진 것이 아닙니다.

페이지 파일이 존재하므로 RAM에 보관할 필요가없는 데이터를 저장할 수 있습니다. 메모리에 존재할 필요가없는 항목의 캐시와 같으므로 다른 항목에 더 많은 RAM을 제공합니다.

6GB RAM이 있으면 페이지 파일이 필요하지 않을 수도 있지만 특정 항목에 대해 페이지 파일이 필요할 수도 있습니다. 몇 가지 게임에는 페이지 파일이 필요하고 페이지 파일이 있으면 유용 할 수 있습니다.

특정 프로세스에 필요한 경우 문제를 피하기 위해 500MB 페이지 파일을 생성해도 아무런 해가 없습니다.


그러나 내 질문은 : 2 GiB 이상의 RAM을 사용 하지 않는다고 가정 해 봅시다 . 어쨌든 페이지 파일을 활성화하면 속도가 향상 됩니까? ( "다 치지 않습니다"는 "예, 혜택을줍니다"와 다릅니다.
user541686

6GB RAM을 사용하면 사용 가능한 RAM이 있어도 페이지 파일이 항상 다른 용도로 사용됩니다. 나는 4GB를 가지고 있으며, 절대 그 이상으로 가지 않습니다. 일상의 PC의 지금 500기가바이트 + HDD 공간이 좋아하지만 난 너무 적어도 500~1,000메가바이트가 손실되지 않습니다, 단지 넣다 1GB의 페이지 파일을
하기 Sandeep 반살

@ Sandeep : 흠 ... "다른 것들"이 정확히 무엇입니까? 페이지 파일을 켜지 않는 이유는 RAM에 여유 공간이 많은 경우 Windows가 하드 디스크를 사용하는 이유를 이해하지 못하기 때문에 "다른 것"이 무엇인지 궁금합니다.
user541686

리눅스와 동일하다. 왜 리눅스는 RAM이있을 때 스왑 공간을 사용 하는가? 페이지 파일은 RAM에서 일정 기간 사용되지 않은 파일을 보유합니다.
Sandeep Bansal

@ Sandeep : Linux가 왜 그렇게하는지 전혀 모르겠습니다. 페이지 파일에 파일을 보관하는 요점은 무엇입니까? RAM이 아닌 경우 실제로 디스크의 어느 위치에서나 읽지 않겠습니까?
user541686

1

첫 번째 단계는 캐시가 무엇인지 또는 다른 캐시가 무엇을 사용하는지 이해하는 것입니다.
CPU에는 작은 내부 캐시가있어 OP 결과, 플래그 상태 및 계산 된 주소를 저장할 수 있습니다. 듀얼 코어에서 내부 캐시는 약 1MB라고 생각합니다. 매우 빠르며 CPU 내부에서만 액세스 할 수 있으며 오버 클럭 된 CPU의 열에 가장 큰 영향을받습니다.

레벨 2 캐시는 CPU 대 메모리 트랜잭션을위한 고속 버퍼 역할을하며 프리 페치에 의해 수집 된 코드 스레드도 보유합니다. 듀얼 코어에서는 일반 설치에 6MB의 lvl2 캐시가 있다고 생각합니다. 내부 캐시 메모리는 메모리 컨트롤러와 CPU에만 액세스 할 수 있으며 버스의 전용 회선에 상주하는 것이 매우 빠르지 만 속도는 매우 빠릅니다.

페이지 파일은 실제로 캐시에 있는데, 메모리에 있거나 없을 수있는 데이터를 저장한다는 점입니다. O / S는 다양한 작업에 페이징 파일을 사용할 수 있습니다. 그 중 하나는 아직 디스크에 커밋되지 않은 데이터 파일의 현재 상태를 저장하는 것입니다. 페이지 파일이 존재하지 않는 경우이 기능을 내부적으로 제공하는 것은 타사 응용 프로그램에 달려 있습니다. 이 시나리오의 문제는 가비지 수집과 관련하여 많은 프로그램이 제대로 작동하지 않으며 디스크에 가짜 .temp 파일이 남아 있다는 것입니다. 이러한 나머지는 설치 매니페스트의 일부가 아니며 제거 절차를 방해하고 디스크 액세스 속도를 저하시킬 수 있습니다.

내 의견은 스왑 파일이 일반적으로 좋은 것입니다. 실제로 시스템이 Ram으로 채워져 있고 하나의 특정 작업에 전념하고 해당 응용 프로그램이 이러한 모든 것을 처리하는 경우 스왑 파일이 필요하지 않을 수 있습니다. 예를 들어 Windows 플랫폼에서 실행되는 아케이드 비디오 게임 일 수 있습니다. 이러한 게임은 일반적으로 장치에 필요한 드라이버 만 설치되며 드라이버 경합이 발생하지 않습니다. 그러나 대부분의 응용 프로그램은 발생할 수있는 모든 잠재적 인 문제, 특히 다른 타사 응용 프로그램 및 드라이버 경합의 영향을 포함하는 모든 문제를 처리하지 않습니다.

페이지 파일을 추가하면 단기적으로 성능이 다소 저하되는 것을 알 수 있지만 장기적으로는 성능이 일정하게 유지되어야합니다. 처음에는 페이지 파일이없는 것이 더 빠를 수 있지만 시간이 지남에 따라 성능이 크게 저하됩니다.

Steven Malm, MCP


"페이지 파일이 존재하지 않으면이 기능을 내부적으로 제공하는 것은 타사 응용 프로그램에 달려 있습니다." -> 무슨 뜻인지 잘 모르겠습니다. 프로그램은 실제로 페이지 파일이 있는지 여부를 신경 쓰지 않습니다.
user541686

0

개인적인 경험

현재 8GB RAM이 장착 된 랩톱에 페이지 파일 생성 / 사용을 방해하는 데 문제가 있습니다. 내 인생은 지옥이야 나는 "Low Memory"프롬프트, 앱 크래시 등을 지속적으로 받는다. 각각 1-1.5GB를 먹는 3 개의 프로그램 (예를 들어, 웹 브라우저, 특수 플러그인이있는 Visual Studio 등)을 사용하면 얇은 얼음 위를 걷고있다.

또 다른 논쟁

실제 RAM 캐시의 데이터를 사용하는 것이 매우 빠릅니다. "사용 가능한"실제 RAM이 많을수록 더 큰 캐시를 보유 할 수 있습니다. OS가 물리적 RAM에서 페이지 파일로 이동할 수있는 휴면 데이터가 많을수록 자주 액세스하는 데이터의 캐시에 더 많은 물리적 RAM이 사용 가능해집니다.

위치를 변경할 때 위치 데이터를로드하는 게임을한다고 가정하십시오. 또한 웹 브라우저가 실행 중이며 2GB를 게임에 남겨두면 단일 위치에 충분합니다. 페이지 파일이 없으면 위치를 변경할 때마다 HDD에서 데이터가 천천히로드됩니다. 페이지 파일을 사용하면 사용하지 않는 웹 브라우저 데이터가 페이지 파일로 전송되고 소중한 물리적 RAM을 사용하여 여러 위치에 대한 데이터를 저장하여 훨씬 빠른 위치로드를 수행합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.