유선 메모리와 OS X의 활성 메모리


13

OS X의 유선 메모리와 활성 메모리의 차이점을 이해하는 데 문제가 있습니다.

네 가지 유형의 메모리에 대해서는 이야기하지 마십시오 (여기서 사용 가능한 메모리 나 비활성 메모리에 대해서는 이야기하지 마십시오). 유선 메모리를 활성 메모리와 비교하고 대조하여 두 가지를 더 잘 이해할 수 있습니다.

답변:


29

젠틀 리마인더 : 나머지 커뮤니티에 더 나은 답변을 제공하기 위해“네 가지 유형의 기억에 대해 말하지 마십시오”와 같은 말을하지 마십시오. 잘 알고 있더라도 인터넷에 수천 명의 시민이 담보 답변을 기대하고 있습니다. :)

"페이징"은 다음 조치에 대한 정확한 용어입니다. "스와핑"은 요즘에는 "호출"에 대해 구어체 적으로 사용됩니다. "스와핑 (Swapping)"은 원래 프로그램의 메모리 공간이 "보조 스토리지"로 완전히 이동하는 것을 의미합니다. 페이징 공간 스왑을 호출하는 Windows 및 Unix 시스템에서는 페이징과 스와핑의 경계가 상당히 흐려집니다.

그런 다음 활성, 유선 및 비활성 메모리의 개념을 이해하려면 페이징에 대해 알아야합니다. 페이징이란 메모리 페이지가 랜덤 액세스 메모리 (예 : RAM)에서 하드 디스크 또는 기타 보조 저장 장치로 이동되었음을 의미합니다. 이를 통해 실행중인 응용 프로그램은 사용 가능한 총 시스템 RAM보다 많은 메모리를 요청할 수 있습니다.

페이징 아웃은 해당 특정 정보에 다시 액세스하는 데 큰 성능 저하를 의미하지만 페이징은 두 가지 다른 경우에 발생할 수 있습니다. (인용 인용 : 스왑 파티션이없는 단점 )

  1. 스왑 공간이없는 시스템에 모든 응용 프로그램에 대해 충분한 메모리가없는 경우 새 메모리 페이지를 요청하는 새 응용 프로그램에 메모리를 할당하지 못하면 일반적으로 프로그램이 종료됩니다.
  2. 일부 메모리 페이지 (메모리가 "페이지"로 나뉘어 짐)가 얼마 전에 사용되었지만 이제는 더 이상 사용되지 않으면 스왑 파일로 전송되고 남은 메모리를 사용하여 더 유용한 다른 작업을 수행 할 수 있습니다 (예를 들어, 캐싱조차도!) – 스왑 공간이없는 시스템에서 이러한 상황이 발생하면 유휴 페이지가 메모리에 남아있게됩니다. 우리가 요즘 꽤 많은 양의 메모리를 가지고 있기 때문에 이것은 너무 심각하지 않습니다.

네 가지 유형의 메모리는 다음과 같이 분류됩니다.

  • 유선 : 할당 된 메모리 청크가 물리적으로 RAM에 남아 있어야하고 최근에 사용되었는지 여부에 관계없이 디스크로 스왑되어서는 안된다고 주장하는 응용 프로그램에서 사용합니다. 즉, 다른 응용 프로그램이 특정 메모리 청크를 요청하지 않을 수도 있습니다. 예는 시스템이 사용하는 메모리와 가상 머신이 사용하는 메모리의 일부입니다.

  • 활성 및 비활성 : 이들은 일반적으로 사용자 모드 응용 프로그램에서 사용하는 메모리이며 디스크에서 교체 할 수 있습니다. "활성"은 최근에 사용 된 것을 의미하고 "비활성"은 최근에 사용되지 않은 것을 의미합니다. 따라서 운영 체제는 먼저 비활성 페이지를 스왑하고 필요한 경우 나중에 활성 페이지를 스왑합니다.

  • 사용 가능한 메모리 : 사용되지 않은 메모리. 하드 디스크 캐싱과 같은 다른 목적으로 사용됩니다.

"메모리가 부족한 심각한 상황에서 시스템이 어떤 순서로 메모리를 새 응용 프로그램에 할당하려고 시도합니까?"라는 질문이 있다면 순서는

여유 메모리 → 비활성 메모리 → 활성 메모리

어떤 의미에서는 최근에 사용한 메모리도 페이징 될 수 있습니다. “유선”부분은 모든 비용으로 페이징되지 않는 것입니다.

그러나 현대 시스템에서는 사용 가능한 RAM이 많기 때문에 활성 메모리가 페이징 아웃되는 경우가 거의 없습니다.


이제 다른 유형의 메모리에 대해 이야기하는 것보다이 질문을 더 복잡하게 만들었습니다. 이제 활성 메모리와 비활성 메모리에 대해 물어봐야합니다. 비활성 메모리는 실제로 사용 가능한 메모리라고 들었습니다. 그게 뭐야? 활성 메모리도 메모리를 확보합니까? 활성 메모리와 비활성 메모리를 비교하고 대조하십시오.
tony_sid

1
닫힌 프로그램이 다시 시작되는 경우 비활성 메모리가 단순히 캐시된다고 들었습니다. 이것이 사실이라면 왜 디스크에 넣어야합니까?
tony_sid

1
뭔가 잘못 들었어 메모리 아키텍처에 심각한 문제가없는 한 닫힌 응용 프로그램의 메모리가 해제됩니다.
bubu

2
환상적인 답변! +1
posdef 10

1
@tony_sid는 오래된 토론이지만 들었던 것은 정확합니다. Apple 지원에서 언급했듯이 "그러나 다른 응용 프로그램에서 비활성 메모리를 사용하기 전에 Mail을 열면 비활성 메모리가 느린 드라이브에서로드하는 대신 활성 메모리로 변환되므로 Mail이 더 빨리 열립니다."
Gaurav
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.