tmpfs의 크기를 설정하는 것은 무엇입니까? 가득 차면 어떻게 되나요?

tmpfs의 크기를 설정하는 것은 무엇입니까? (내 컴퓨터에서는 /dev/shm에 있습니다.) /etc/fstab에서 항목을 볼 수 있지만 크기 표기법은 없습니다. df -h로 확인하면 시스템에 설치된 실제 메모리 크기의 절반 인 것 같습니다. 이것이 기본 동작입니까?

또한 가득 차면 어떻게됩니까? 다른 실행 프로그램이 swap로 동적으로 확장됩니까? tmpfs 자체가 swap 파티션으로 이동합니까?

마지막으로 메모리 tmpfs 또는 애플리케이션에 우선 순위를 두는 것은 무엇입니까? 즉, tmpfs가 충분히 꽉 찼고 (예 : 실제 메모리의 40 %) 실제 메모리의 70 %를 필요로하는 프로그램이있는 경우 어느 것이 우선 순위를 갖습니까?

답변

tmpfs의 크기를 설정하는 것은 무엇입니까? (내 컴퓨터에서는 / dev / shm에 있습니다.) / etc / fstab에서 항목을 볼 수 있지만 크기 표기는 없습니다.

커널 문서 는 마운트 옵션 아래에서 이에 대해 설명합니다.

크기 :이 tmpfs 인스턴스에 할당 된 바이트의 제한입니다. 기본값은 스왑없는 물리적 RAM의 절반입니다. tmpfs 인스턴스의 크기를 초과하면 시스템이 교착 상태가됩니다.

(강조 광산)

또한 , 가득 차면 어떻게됩니까?

위에서 언급 한 것처럼 “tmpfs에 너무 많이 커밋 한 경우 시스템이 교착 상태가됩니다. 그렇지 않은 경우 하드 제한에 도달했습니다) 다른 파일 시스템과 마찬가지로 ENOSPC를 반환합니다.

마지막으로 메모리 tmpfs 또는 응용 프로그램에서 우선 순위를 갖는 것은 무엇입니까? 즉, tmpfs가 충분히 꽉 찼고 (예 : 실제 메모리의 40 %) 실제 메모리의 70 %를 필요로하는 프로그램이있는 경우 어느 것이 우선 순위를 갖습니까?

프로그램 간의 경합과 유사합니다. 가장 많이 사용되는 페이지는 실제 메모리에있는 경향이있는 반면 가장 적게 사용 된 페이지는 교체되는 경향이 있습니다.

확인해야 할 경우 페이지는 항상 실제 메모리에 있습니다. 당신은 비슷하지만 크기가 고정되어 있고 스왑되지 않는 ramfs를 사용할 수 있습니다 .

댓글

  • 두 개의 tmpfs가 각각 램의 60 %에 마운트되면 총 크기는 120 %가됩니다. 두 tmpfs가 50 %까지 채워지면 바로 교착 상태가됩니까?
  • @CMCDragonkai 여러 tmpfs 마운트를 채우려 고했지만 시스템이 교착 상태에 빠졌습니다.
  • 시스템을 다시 시작해야하나요? ?

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다