Berapa nilai maksimum ID Proses?
Juga, apakah mungkin untuk mengubah ID Proses?
Jawaban yang Diterima:
Di Linux, Anda dapat menemukan nilai PID maksimum untuk sistem Anda dengan ini:
$ cat /proc/sys/kernel/pid_max
Nilai ini juga dapat ditulis menggunakan file yang sama, namun nilainya hanya dapat diperpanjang hingga maksimum teoritis 32768 untuk sistem 32 bit atau 4194304 untuk 64 bit:
$ echo 32768 > /proc/sys/kernel/pid_max
Tampaknya merupakan praktik normatif pada sebagian besar sistem 64 bit untuk menetapkan nilai ini ke nilai yang sama seperti yang ditemukan pada sistem 32 bit, tetapi ini berdasarkan konvensi dan bukan persyaratan.
Dari man 5 proc
:
/proc/sys/kernel/pid_max This file (new in Linux 2.5) specifies the value at which PIDs wrap around (i.e., the value in this file is one greater than the maximum PID). The default value for this file, 32768, results in the same range of PIDs as on earlier kernels. On 32-bit platfroms, 32768 is the maximum value for pid_max. On 64-bit systems, pid_max can be set to any value up to 2^22 (PID_MAX_LIMIT, approximately 4 million).
Dan tidak, Anda tidak dapat mengubah PID dari proses yang sedang berjalan. Itu ditetapkan sebagai nomor urut oleh kernel pada saat proses dimulai dan itulah pengidentifikasinya sejak saat itu. Satu-satunya hal yang dapat Anda lakukan untuk mendapatkan yang baru adalah membuat kode Anda melakukan proses baru dan menghentikan yang lama.