쉘 프로세스를 위해 Linux에서 할당하는 기본 메모리는 무엇입니까? 즉, 쉘 프로세스 또는 모든 프로세스에 대한 상한선이 있다는 의미입니다.
답변1
에서 man bashbuiltins
:
ulimit [-HSTabcdefilmnpqrstuvx [limit]]
이러한 제어를 허용하는 시스템에서는 셸에 사용 가능한 리소스와 쉘이 시작하는 프로세스에 대한 제어를 제공합니다.
ulimit -a
전류 한계를 표시하는 데 사용됩니다 .
답변2
리소스 제한은 일반적으로 ulimit
(사용자 기반) 또는 sysctl
(시스템 기반)을 통해 제어됩니다.
예를 들어, kernel.shmmax
매개변수 설정은 sysctl
Linux 프로세스가 가상 주소 공간에 할당할 수 있는 단일 공유 메모리 세그먼트의 최대 크기(바이트)를 정의합니다.
ulimit
일반 사용자 프로세스에 대한 제한을 설정하는 데 사용됩니다. 이러한 값은 일반적 /etc/security/limits.conf
으로 기본값으로 구성되지만 사용자별/세션별로 변경될 수 있습니다. 하드 제한과 소프트 제한이 있습니다.