왜 부분적으로 전체 RAM 지연 현상이 발생?

왜 부분적으로 전체 RAM(자's say80%)가 지고 있어도 일부 사용할 수 있는 공간을 더 많이 저장 데이터가? 내가 무엇을 기대하는지 잘 작동까 99%.

나는 알 수 있는 모바일에 이상이 PC 에서,그것은 작은 RAM,예를 들어,모바일에는 2GB RAM;있을 때보다 1GB RAM 무료,재미있! 왜 일어나는,비록 그것은 여전히~1GB 을 사용합니까?

질문에 대한 의견 (19)
해결책

많이 참여 여기에서 그러나 나는 그것을 설명하기 위해 노력으로 단순히 내가 할 수 있고 방법이 적용 가능한 모든 OS.

거기에는 2 개의 기본 원리는 여기:

  1. 의 총 합계는 모든 것이 필요하고 그런 것들 것입되는 혜택에 RAM 은 거의 항상의 크기보다 큰 RAM. 는 이익에서 RAM 포함한 프로세스 작동을 설정하고 대기 목록이다. 후자는 데이터가 포함되고 코드는 한번에 적극적인 사용이지만 이후로 락지 않습니다. 많이 사용될 것이 다시는 그것의 일부는 확실히 빨리,그래서 그것은 도움이 이 RAM. 이 메모리의 일종으로 역할을 합 캐시되지 않은 정말 중요 그래서 범주에서 메모리를 사용할 수 있습니다. 무료 메모리할 수 있게 부여하는 모든 프로그램이 필요합니다. 에서 관심사의 성과 대기 메모리 크다.

  2. 사용 빈도의 메모리 블록은 지역에 랜덤 그러나 예측할 수 있으로 상당한 정확성입니다. 메모리 블록으로 구분,종종 4K 바이트입니다. 일부 블록을 액세스할 수 있는 많은 시간을 초당하는 동안 다른 사람에 액세스하지 않는 많은 분,시,일 또는 몇 주 동안 경우스템까지 충분히 있습니다. 이의 넓은 범위를 사용한 2 극단입니다. 메모리 관리 알고 있는 블록을 최근하고있는 자들은 아닙니다. 그것은 합리적인 가정을 메모리 블록은 최근 필요할 것입니다 곧 다시. 되지 않은 메모리 액세스 최근 아't 필요하다. 오랜 경험을 입증이 유효한 원칙입니다.

메모리 관리자를 활용하는 두 번째 원칙을 크게 완화하지 않은 결과의 첫 번째입니다. 이를 위해 그것은 균형을 유지 최근에 액세스하는 데이터를 RAM 에 있는 동안 유지하는 것은 거의 사용되는 데이터는 원본 파일 또는 페이지.

때 RAM 은 풍부한 이 조정 행위를 쉽습니다. 의 많은 이렇게 최근 사용에 데이터를 보관할 수 있습니다. 이것은 좋은 상황이다.

일 경우 더 복잡한 작업이 증가합니다. 의 총액의 데이터와 코드를 사용하는 큰 하지만 크기의 램 동일하게 유지됩니다. 이 의미는 하위 집합이에 보관하실 수 있습니다. 의 일부는 더 적은 최근 데이터를 사용할 수 있는 더 이상 RAM 해야 하지만 왼쪽에 디스크가 있습니다. 메모리 관리자는 매우 열심히 노력하고 좋은 균형을 유지하는 것 사이에서 메모리 사용하고 메모리를 사용할 수 있습니다. 하지만 작업으로 증가하는 메모리 관리자가 될 것을 제공하도록 강요 더 사용할 수 있는 메모리를 실행 프로세스입니다. 이것은 좋은 상황이지만 메모리 관리자의 선택의 여지가 없습니다.

문제는 이동하는 데이터를 RAM 프로그램 실행 시간이 걸립니다. 때 RAM 은 풍부하지 않't 이 자주 발생하지't 도 나타났습니다. 그러나 때 RAM 을 사용에 도달하면 높은 수준이 일어날 것이 훨씬 더 많습니다. 상황이 될 수 있는 시간이 더 오래 걸 이 데이터를 RAM 이상에서 보낸 실제로 그것을 사용하고 있다. 이것은 탈곡,일 메모리 관리자는 매우 열심히 노력하고를 방지하지만 높은 작업 그것은 종종 피할 수 없습니다.

메모리 관리자가 귀하의 측면에 항상 노력하고 그것이's 를 유지하기 위해 최선을 다하고 최적의 성능을 불리한 조건에서도. 하지만 작업한 사용할 수 있는 메모리를 실행 짧은 그렇게 나쁜 것을 유지하기 위해서 작동합니다. 사실입니다 가장 중요한 것입니다. 우선순위 첫 번째 유지하는 것을 실행한 다음 다음이 가능한 한 빨리.

해설 (10)

모든 현대적인 운영을 시스템을 사용하여 그렇지 않으면 사용하지 않는 메모리 캐싱하도록 데이터에서 액세스할 수 있는 빠른 RAM 의 느리 저장소. 그들은 일반적으로 보고 메모리로 때문에,응용 프로그램,캐시하고 그것을 사용해야 하는 경우,그러나 그's 도 실제로 사용되고 있습니다. 의 더 적은 거기에 그것은,적은 데이터 캐시할 수 있고,느린 컴퓨터가 될 것입니다.

해설 (3)

이에 응답되었다 주로 다시 재편하는 구조와 메시지가 더 선명합니다. 나 또한 그것으로 커뮤니티 wiki 응답되 생각나는 대로 편집할 수 있습니다.

페이징 메모리 관리 방식을 통해하는 고정 크기의 블록의 메모리 프로세스가 할당됩니다. 메모리 사용량이 상승하는 높은 수준(예:80%수용량),페이징 시작하는 확장에서 RAM vRAM(virtual RAM).

vRAM 에 위치한 시스템관,에서 일반적으로 하드 드라이브,또는 다른 꽤 큰 저장소 위치에 있습니다.

프로세스에 할당된 부분의 하드 드라이브를 실행으로 메모리 및 취급한다 그들의 섹션으로 RAM. 이것은 정상적인 프로세스,그러나,때에 소요되는 시간을 데이터 전송은 vRAM 증가,시스템 성능이 저하됩니다.

하는 동안 전용 RAM 을 통해 직접 액세스하는 마더보드의 CPU 에서 제공하는 빠른 연결을,virtual RAM 야 횡단 사이의 케이블을 보고의 위치 vRAM.

이것은 그러나,원인은 약간의 성능에 미치는 영향. 을 때의 속도는 페이징 vRAM 은 크게 증가(경우 전용 RAM 접근 용량),탈곡니다.

탈곡은 연습을 신속하고 빠르게 전송하는 페이지의 메모리로의 가상 메모리입니다. 이는 인간에게 엄청난 사망 성능으로 더 많은 시간을 보냈다를 가져오고 해결하는 데이터입니다.

고 말할 수 있습니다,당신은 당신이 쓰고 싶은 아래 숫자 30 자리의 숫자입니다. 할 수 있거나 앉아서 다음으로 화면에 메모장에 기록(사용하여 전담 메모리),또는 당신이 기억하의 덩어리 5,실행으로 다음 방을 쓰고 그 아래에 메모장에 있(가상 메모리를 사용한). 모두 작업을 수행,하지만 하는 빠른?

에 대한 자세한thashing 여기!

에게 큰 감사의 참여자의 이 대답을 포함하여다니엘 B,xenoid존 Bentley.

해설 (9)

It's 기가 많이 할 수 있는 페이징(드 부품의 활성 프로그램)교환(이 데이터를 RAM HD 그리고 반대로)을 유지하는 소프트웨어 실행됩니다. 면 새 페이지를 로드할 필요가 필요할 수 있는 것보다 더 많은 공간 availble20%OS 을 교체해야 기존 페이지에 RAM 에 있는 그것 consideres 될 가능성이 적은 사용한다. 특히 시작에서 다른 프로그램입니다. 을 교환하고 다시 페이지에 시간이 많이 걸리와 속도가 느려집 Pc 성능을 대폭기 때문에 당신은 지금에서 작업 속도의 HD,아닙니다.

그것은 조금 HDD을 만드는 특별한 파티션에서 HD 및 할당으로 전"swap"(don't 을 위해 사용"실제"파일)공간 그래서 교환에 의해 영향을 덜 HDs 조각.

해설 (2)

을 기억하고,하드 드라이브 크기의 순서느린이상 RAM,RAM 가 아't 는 모두 빠른 시작하는(에서 전체적인 아키텍처). 의 순서 액세스 속도(각 렁 크기의 순서는 보다 느린 위에)당신

  1. 프로세서 등록에서 실용적인 용어로,사용할 수 있는 레지스터내에서 1 프로세서 사이클. 을 고려하는 프로세서 할 수십억의 사이클 초(3 GHz=3billion 초당 사이클),이것은 미친 빠르다.
  2. 프로세서 캐시-에 따라 달라지는 수준이지만,이들은 아직도 매우 빠르(3-5 사이클에 대한 가용성 L1 캐시).
  3. 랜덤 액세스 메모리(RAM)-임의의 일부를't know what 상태 it's 에서 액세스할 때습니다. 의 생각 패키지 납품하는 사람 중지를 선택,패키지까지 걸어가 문을 초인종을 누르고응답을 기다립니다. 어쩌면 당신은 don't 에서 기다리거나,또는 어쩌면 당신은 잠깐이나 두 부인 스미스를 섞을 위해 문의 뒤 집입니다. 실용적인 측면에서,우리는'다시 말하는 어느 곳에서 14~27 쪽 사이클(에 따라 어떤 상태 RAM 이었을 때 우리는 액세스).
  4. 하드 디스크 드라이브-There's 의 물리적 과정을 지금 여기에서 발생 하는 동안 가능한 한 빨리 당신이'다시 기다리기 위해 머리를 이동하고 트랙을 이동하는 머리입니다. 실용적인 관점에서[a7,200RPM HDD 완료할 수 있습 혁명에 대 4ms](https://en.wikipedia.org/wiki/Hard_disk_drive_performance_characteristics 다),또는 주위에 어딘가에750,000 사이클에 대한 3 GHz 프로세서. 는's 느립니다.

가상 메모리 관리 도박. It's betting you don't 필요한 모든 램의 모든 시간,그래서 그것으로 추측하고 롤 주사위는 문서에는 프로그램(는 배경에서 마지막을 위해 10 분을 읽는 동안 당신은 이가)'t 이 정말 중요하고 그것을 밀 이를 하드 디스크 드라이브.

하지만 당신은 클릭하여 문서! 지금 VMM 을 로드하는 모든 데이터에서 다시 HDD. 더 나쁠 경우,당신은 당'다시 낮에 RAM,지금은 밀어 기타 데이터(더 도박)이 HDD 을 무료로 사용할 수 있는 공간. 리눅스를 좋아하는 라이브 가장자리에 여기에. 그것을 채울 것입니다 대부분의 램으로 자주 사용되는 데이터를(위대한 서버에 대한 몇 가지 프로세스).

해설 (2)

탈곡 답변이 꽤 많은 못니다. 당신이'할 수 있어,최소화할 수 있습니다 어떻게 신속하게 이런 일을 줄여 swappiness(ram 이 얼마나 시스템을 사용하기 전에 이동하는 것을 교환하는 공간). 내가 좋아하는 설정 시스템을 스왑까지 ram99%에 도달한 서버 응용 프로그램 때문에 기본적으로 의미하는데 필요한 코드에 대한 것들을 활용하의 80%는 램의 활용을 캐싱하지 않고 불이익에 대한 추진 시스템으로 스왑 공간입니다.

해설 (0)