GNU/Linux >> Belajar Linux >  >> Linux

PID maksimum di Linux

Nilai maksimum PID di Linux dapat dikonfigurasi. Anda dapat mengaksesnya melalui /proc/sys/kernel/pid_max mengajukan. File ini (baru di Linux 2.5) menentukan nilai di mana PID dibungkus (yaitu, nilai dalam file ini lebih besar dari PID maksimum). Nilai default untuk file ini, 32768, menghasilkan rentang PID yang sama seperti pada kernel sebelumnya. Nilai dalam file ini dapat disetel ke nilai berapa pun hingga 2^22 (PID_MAX_LIMIT, sekitar 4 juta).

Dari perspektif pemrograman, Anda harus menggunakan pid_t ketik untuk bekerja dengan ID proses. Anda bahkan dapat mengakses nilai min/maksnya menggunakan karakter bilangan bulat. Berikut adalah contoh melakukannya menggunakan C++ dan Boost di Linux 2.6.X yang berjalan di platform x86_64:

$ 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

Dari proc(5) halaman manual:

/proc/sys/kernel/pid_max (sejak Linux 2.5.34)

File ini menentukan nilai di mana PID membungkus (yaitu, nilai dalam file ini lebih besar dari PID maksimum). PID yang lebih besar dari nilai ini tidak dialokasikan; dengan demikian, nilai dalam file ini juga bertindak sebagai batas seluruh sistem pada jumlah total proses dan utas. Nilai default untuk file ini, 32768, menghasilkan rentang PID yang sama seperti pada kernel sebelumnya. Pada platform 32-bit, 32768 adalah nilai maksimum untuk pid_max. Pada sistem 64-bit, pid_max dapat disetel ke nilai apa pun hingga 2^22 (PID_MAX_LIMIT , sekitar 4 juta).


Ini 32768 secara default, Anda dapat membaca nilai di sistem Anda di /proc/sys/kernel/pid_max .

Dan Anda dapat menyetel nilai lebih tinggi pada sistem 64-bit (hingga 2 =4.194.304) dengan:

echo 4194304 > /proc/sys/kernel/pid_max

Baca selengkapnya di sini:

http://www.cs.wisc.edu/condor/condorg/linux_scalability.html (melalui archive.org)


Linux
  1. Dasar-dasar Izin File Linux

  2. Linux – Semuanya Adalah File?

  3. Bagaimana Mengganti Nama File di Linux?

  1. Cara memindahkan file di Linux

  2. Nilai Maksimum Id Proses?

  3. Daur ulang PID Linux

  1. Memahami Izin File Linux

  2. Perintah Ekor Linux

  3. Perintah Sentuh Linux