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 마운트를 채우려 고했지만 시스템이 교착 상태에 빠졌습니다.
- 시스템을 다시 시작해야하나요? ?