/proc/sys/kernel/shmall의 해석

/proc/sys/kernel/shmall의 해석

내가 틀리지 않는 한. 값은 /proc/sys/kernel/shmall시스템에 할당할 수 있는 공유 메모리의 총량(바이트)을 나타냅니다.

저는 t2.microEC2 Debian 인스턴스를 사용하고 있으며 다음과 같은 결과를 얻습니다.

$ cat /proc/sys/kernel/shmall
18446744073692774399

나는 이것이 공유 메모리의 총 할당 가능한 양이 대략 다음과 같다는 것을 의미한다고 생각하지 않습니다.0.02제타바이트...

답변1

맞습니다. 다음과 같이 정의하면 누구에게나 충분할 것입니다 (ULONG_MAX - (1UL << 24)). 하지만 이는 프로세스별 값이 아니라 전체 값이라는 점에 유의하세요. 보다http://elixir.free-electrons.com/linux/latest/source/include/uapi/linux/shm.h#L13:

* SHMMNI, SHMMAX 및 SHMALL은 기본 상한값입니다.
 * sysctl에 의해 수정되었습니다. SHMMAX 및 SHMALL 값이 선택되었습니다.
 * 사용자 공간이 있는 시나리오를 촉진하지 않고 가능한 한 커야 합니다.
 * 양식 작업을 통해 한계를 조정할 때 오버플로가 발생합니다.
 * "현재 제한 검색; X 추가; 제한 업데이트". 그러므로 그렇지 않다
 * SHMMAX 및 SHMALL을 더 크게 만드는 것이 좋습니다. 이러한 한도는
 * 32비트 및 64비트 시스템 모두에 적합합니다.

관련 정보