Linux의 최대 PID
응용 프로그램을 Tru64에서 Linux로 포팅하고 있는데 PID_를 사용합니다.max는 limits.h로 정의되어 있습니다.Linux에는 이 정의가 없습니다.PID 검색 방법_판독하지 않는 경우의 MAX in c/proc/sys/kernel/pid_max
손으로요?도서관이 있나요?
디폴트로는 32768 입니다.사용하시는 시스템의 값을 읽어보실 수 있습니다./proc/sys/kernel/pid_max
.
또한 64비트 시스템(최대22 2 = 4,194,304)에서 다음 기능을 통해 값을 더 높게 설정할 수 있습니다.
echo 4194304 > /proc/sys/kernel/pid_max
자세한 내용은 이쪽:
http://www.cs.wisc.edu/condor/condorg/linux_scalability.html (archive.org 경유)
Linux에서 PID의 최대값은 구성할 수 있습니다.액세스 할 수 있습니다./proc/sys/kernel/pid_max
file. 이 파일(Linux 2.5의 새로운 버전)은 PID가 랩되는 값을 지정합니다(즉, 이 파일의 값이 최대 PID보다 1 큼).이 파일의 기본값인 32768은 이전 커널과 동일한 범위의 PID가 됩니다.이 파일의 값은 최대 2^22(PID_MAX_LIMIT, 약 400만)의 임의의 값으로 설정할 수 있습니다.
프로그래밍의 관점에서 볼 때론pid_t
프로세스 ID를 사용하여 프로세스 ID로 작업합니다.정수 특성을 사용하여 최소/최대 값에 액세스할 수도 있습니다.다음은 x86_64 플랫폼에서 실행되는 Linux 2.6.X에서 C++ 및 Boost를 사용한 예입니다.
$ cat test.cpp
#include <sys/types.h>
#include <iostream>
#include <boost/integer_traits.hpp>
using namespace std;
int main ()
{
cout << "pid_t max = " << boost::integer_traits<pid_t>::const_max << endl;
}
$ ./test
pid_t max = 2147483647
에서proc(5)
man 페이지:
/proc/sys/kernel/pid_max
(Linux 2.5.34 이후)이 파일은 PID가 랩할 값을 지정합니다(즉, 이 파일의 값이 최대 PID보다 큰 값이 됩니다).이 값을 초과하는 PID는 할당되지 않습니다.따라서 이 파일의 값은 프로세스와 스레드의 총 수에 대한 시스템 전체의 제한으로서도 기능합니다.이 파일의 기본값인 32768은 이전 커널과 동일한 범위의 PID가 됩니다.32비트 플랫폼에서는 32768은 pid_max의 최대값입니다.64비트 시스템에서는
pid_max
는 최대 2^22 ()의 임의의 값으로 설정할 수 있습니다.PID_MAX_LIMIT
약 400만).
Ubuntu 20.04가 한계를 최대치(4194304)로 끌어올린 것 같습니다.
% cat /proc/sys/kernel/pid_max
4194304
언급URL : https://stackoverflow.com/questions/6294133/maximum-pid-in-linux
'programing' 카테고리의 다른 글
C에서 restrict 키워드를 사용하는 규칙? (0) | 2022.08.12 |
---|---|
NET::VueJS 프로젝트 실행 시 ERR_CERT_INVALID 오류 (0) | 2022.08.12 |
Laravel / Vue: v-model 사용 시 검증 중 (0) | 2022.08.12 |
사용자 지정 Bootstrap-Vue 확인란 구성 요소 (0) | 2022.08.12 |
모의 개체-MockIto Initialising (0) | 2022.08.12 |