Qual è il pid massimo per Mac OS X?

7

Il libro di Mac OS X Internals stati che il massimo identificatore di processo è 30.000 e successivamente il kernel inizierà a riutilizzare i pids. Ma controllando sul mio sistema, tramite:

ps a | grep ps | grep -v grep | awk '{print $1}'

Posso vedere che ho dei pid che vanno più in alto. Qualcuno sa se c'è un pid_max impostato esplicitamente da qualche parte, come in Linux?

    
posta CamelBlues 11.05.2012 - 22:02
fonte

2 risposte

11

Esaminando sys / proc_internal.h in xnu-1699.24.23, trovo che PID_MAX è 99999. Il valore è usato in kern_fork.c nella funzione forkproc . Guardando a quella funzione, gli ID di processo non sono assegnati uguale a PID_MAX, quindi il pid più alto possibile è 99998.

    
risposta data 11.05.2012 - 22:46
fonte
5

La risposta di Kyle è ancora valida fino ad oggi. Nel caso tu voglia verificarlo, ecco uno script di shell:

#!/bin/bash

pid=0
for i in {1..100000}; do
  : &
  if [ $! -lt $pid ]; then
    echo "Min pid: $!"
    echo "Max pid: $pid"
    break
  fi
  pid=$!
done

Questa stampa:

Min pid: 100
Max pid: 99998
    
risposta data 12.11.2016 - 06:45
fonte

Leggi altre domande sui tag