최고 출력에서 ​​VIRT와 USED의 차이점과 관계는 무엇입니까?

최고 출력에서 ​​VIRT와 USED의 차이점과 관계는 무엇입니까?

맨페이지에서top

VIRT  --  Virtual Memory Size (KiB)
           The total amount of virtual memory used by the task.  It includes
           all code, data and shared libraries plus pages that have been
           swapped out and pages that have been mapped but not used.

USED  --  Memory in Use (KiB)
           This field represents the non-swapped physical memory a task has
           used (RES) plus the non-resident portion of its address space
           (SWAP).

제 생각에는 VIRT와 USED는 같은 의미입니다. 즉, 둘 다 프로세스가 물리적 메모리에서 차지하는 것과 스왑에서 차지하는 것의 합입니다. 그렇다면 차이점과 연관성은 무엇입니까?

참고로 topUSED는 기본적으로 표시되지 않습니다. 어떻게 표시할 수 있나요?

답변1

  • RES현재 프로세스에서 사용하는 RAM의 양입니다. 메모리 페이지가 교체되거나 교체될 수 있으므로 이 값은 달라질 수 있습니다. 오랫동안 대기 중인 프로세스(예: 원치 않는 데몬)의 경우 0일 수도 있습니다.

  • 가상 현실 기술RAM이든 디스크(공유 개체, 매핑된 파일, 스왑 영역)이든 프로세스에서 사용하는 모든 메모리의 전체 크기이므로 VIRT는 항상 RES보다 크거나 같습니다. 프로세스는 항상 가상 메모리를 처리(즉, 할당/접근/해제)합니다. 이러한 페이지 중 일부 또는 전체를 RAM에 매핑하는 것은 운영 체제에 달려 있습니다.

  • 사용된미만가상 현실 기술코드나 라이브러리 등 스왑 이외의 것으로 지원되는 메모리는 포함되지 않기 때문입니다.

답변2

RES현재 실행 중인 프로세스에 할당된 실제 메모리(물리적 메모리)가 다음 위치에 있음을 나타냅니다.메모리.

가상 현실 기술프로세스의 가상 메모리(하드 디스크 및/또는 RAM에 할당됨)를 표시합니다(맨 페이지에 설명되어 있음).

사용된=RES+ 현재 RAM에 상주하지 않는 실행 파일 부분. 사용 플래그를 ps표시합니다 .VIRTvsz

관련 정보