Windows“Swappiness”수정


10

Windows 7에 "스왑"과 같은 수정 가능한 것이 있습니까?

내 시스템에는 8GB의 RAM이있어 일상적인 사용에 충분합니다. 우분투 머신에서 한 것처럼 * NIX 시스템이 swappiness 라고 부르는 스왑 동작을 수정하고 싶습니다 .

나는 이것을 웹에서 검색했지만 모든 대답은 * NIX 시스템에 대한 것 같습니다.


호기심에서 스왑 피스를 더 높거나 낮게 설정하는 것이 더 좋습니까?
Jon

사용중인 RAM 용량과 사용중인 용량에 따라 다릅니다. 필자의 경우 0으로 설정하면 out of memory오류 를 방지하기 위해 디스크로만 스왑됩니다 . 자세한 내용은 @ chipperyman573
rath

1
Windows에 메모리 부족 오류에 대한 응급 보호 기능이없는 것 같습니다. 내 답변의 링크를 참조하십시오.
wullxz

답변:


7

Windows에는 시스템이 RAM을 확보하기 위해 응용 프로그램을 교체하는 "pagefile"이라는 것이 있습니다. 저는 현재 Windows 컴퓨터에 있지 않지만 Adobe가 여기 에 온라인으로 올리는 단계가 올바르게 보입니다 ( Win+ Pause는 "고급 시스템 설정"의 바로 가기 라고 생각 합니다).

페이지 파일을 비활성화 할 수 있지만 일부 우려가 있습니다. 자세한 내용은 이것을 읽으십시오


2
귀하의 의견에 따르면 Windows는 실제로 메모리 부족 오류에 대한 보호 기능이없는 것으로 보입니다. 이것은 "스왑"에 해당하는 것이 없다고 믿게한다. 그럼에도 불구하고 내가 배운 흥미로운 새로운 지름길에 대해 +1하고 게시 한 링크가 나를 이 기사로 연결했기 때문에 허용 된 것으로 표시했습니다 . 건배
분노

페이지 파일을 끈 상태로 많은 사람들이 있습니다. 이 시스템은 불필요하게 처리 될 수있는 방식으로 한동안 사용하지 않을 몇 가지 사항을 거기에 던져 넣습니다. 사용자가 일반적으로 무슨 일이 일어나고 있는지 알지 못하는 경우를 제외하고는 시스템에 "메모리 부족"이 발생하지 않는 경우가 종종 있습니다. 전체 프로그램을 비활성화하지 않은 이유 일부 프로그램에는 적합하지 않을 수 있습니다. 그리고 그들이 던지는 실수가 항상 선을 나타내는 것은 아닙니다.
Psycogeek

1
RAM이 8GB 인 노트북이 있고 스왑 기능을 사용하고 있습니다. 스왑이없는 8GB RAM과 4GB의 RAM + 4GB의 최대 스왑 사이에는 차이가 없습니다. 항상 제한이 있으며 도달하면 오류가 표시됩니다.
Natan

@Natan : 하루에 4 + 4 이상의 8GB RAM을 사용하려고합니다. RAM을 많이 사용하는 작업 중에 물리적으로 부족할 경우 성능은 어떻게됩니까?
Mark K Cowan

@MarkKCowan 128MB와 8GB RAM의 차이가 있다고 생각합니다. 메모리가 가득 차면 OS가 메모리 회수를 시작하고 가비지 수집기가 작업을 수행합니다. 8GB의 데스크톱에서는 대부분 캐시이기 때문에 계속 진행할 수있을만큼 충분히 보장됩니다. 메모리가 부족하면 디스크가 CPU + RAM보다 훨씬 느리기 때문에 스와핑은 항상 메모리를 회수하는 것보다 나쁩니다.
Natan

0

"RAM을 할당하는 앱과 실제 RAM이 부족할 때 무언가가 SWAP으로 페이징됩니다"보다 가상 메모리에 더 많은 것이 있습니다.

Linux (및 UNIX의 경우)에서 시스템은 페이지를 최근에 RAM으로 읽도록 시도합니다. 프로그램 실행,로드 된 데이터, 최근에 기록 된 데이터 (이미 디스크에도 있음) 등. 같은 프로그램이 다시 실행되면 디스크에서 다시로드 할 필요가 없습니다. 일부 프로그램이 가상 주소 공간에 더 많은 메모리를 할당하도록 요청하면 먼저 디스크 액세스없이 남은 디스크 버퍼의 용도가 변경됩니다. 이것으로 충분하지 않으면 최근에 액세스하지 않은 일부 실행중인 앱 페이지가 실제로 스왑됩니다. Linux에서는 일반적으로 스와핑이 발생하지 않습니다. 일단 시스템이 스와핑을 시작하면 증가 된 드라이브 활동 (및 부진)을 발견하고 "아무것도 .."로 이동합니다. 이는 일부 앱에서 메모리가 누수되거나 후드 아래에있는 무언가가 제어 할 수 없게 된 것을 의미하기 때문일 수 있습니다.

Windows는 전통적으로 어리석은 추가 습관을 가지고 있으며, 비활성 시간이 초과되면 전체 사용자 공간 앱을 교체합니다. 엄밀히 말하면, 용서없이 가능한 한 많은 RAM을 사용할 수 있도록 "만약의 경우"또 다른 배고픈 앱을 시작하고 싶었습니다. PC를 실행 상태로두고 몇 시간 동안 나가면 돌아 왔을 때 전환 한 앱이 스왑에서 다시로드됩니다. 이 동작은 Windows 2000에서 특히 고통스럽고 최신 Windows 버전에서는 점차 눈에 띄지 않습니다. W2k에서 스왑을 끄는 것은 쉬운 일이 아닙니다. Windows 7은 때때로 특별한 이유없이 꿀처럼 흔들릴 수 있습니다. Windows 8.1 및 10은 눈에 띄게 좋아졌습니다. 그러나 여전히 "스왑"에 대한 조정 가능한 노브 나 스와핑 알고리즘의 기타 조정 가능한 매개 변수는 없습니다.

느린 디스크 액세스로 인해 시스템이 연삭되는 다른 요인이 있습니다. Windows 7에서는 시스템이 오래된 W2k 방식으로 앱을 스왑 아웃했는지 또는 앱이 너무 느리게 시작한다는 사실 또는 Windows Update가 이번에는 주변에 (100 % CPU 소비 및 / 또는 디스크 스 래싱으로 중단되는 알고리즘의 왕복 쿼크가 있음) 또는 특히 일부 .NET Framework 관리 작업이 WinSXS 데이터베이스에서 손실 된 경우 또는 무엇입니까? 경우에 따라 / 일부 Microsoft 소프트웨어 버전 / 화신에서 실제로 백그라운드 작업의 일부 "기본 작업"(특히 Windows Update 로컬 데이터베이스 관리)이 작업 관리자에서 의도적으로 "모호한"것으로 보입니다. CPU 및 RAM 사용량은 총 메모리 소비량에 표시되지 않습니다. "합법적 인"활동이지만 맬웨어 루트킷과 구별하기가 매우 어렵습니다. 스 래싱이 중지되고 "새 업데이트를 사용할 수 있습니다"라는 풍선이 뜨면 바로 그 이유를 알 수 있습니다.

적어도 최신 Windows 버전은 프로세스 당 디스크 IO 활동을 알려줄 수 있으며 이제 개별 서비스가 단일 SVCHOST.EXE 프로세스 대신 개별적으로보고됩니다.

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