Generalmente uccidere il genitore uccide anche il bambino.
La ragione per cui si sta vedendo il bambino ancora vivo dopo aver ucciso il padre è perché il bambino morirà solo dopo aver scelto di gestire l'evento SIGKILL. Non deve occuparsene subito. Lo script sta eseguendo un comando sleep(), che non si sveglierà per gestire alcun evento fino al completamento del sonno.
Perché il PPID # 1? Il genitore è morto e non è più nella tabella del processo. child.sh non è collegato inspiegabilmente per inizializzare ora. Semplicemente non ha un genitore in esecuzione.Dicendo che è collegato a init crea l'impressione che se in qualche modo lasciamo init, quell'iniziale ha il controllo sull'arresto del processo. Crea anche l'impressione che uccidere un genitore renderà il nonno il proprietario di un bambino. Entrambi non sono vere. Quel processo figlio esiste ancora nella tabella del processo ed è in esecuzione, ma nessun nuovo evento basato sul suo ID processo sarà gestito fino a quando non gestirà SIGKILL. Il che significa che il bambino è un pre-zombi, che cammina morto, rischia di essere etichettato.
Uccidere nel gruppo processo è diverso, ed è usato per uccidere i fratelli , e il genitore dal gruppo processo #. Probabilmente è anche importante notare che "uccidere un processo" non significa "uccidere" di per sé, nel modo umano, dove ci si aspetta che il processo venga distrutto e tutta la memoria sia tornata come se non fosse mai stata. Invia semplicemente un evento particolare, tra molti, al processo che deve gestire. Se il processo non lo gestisce correttamente, dopo un po 'il sistema operativo arriverà e "pulirà" con forza.
It (uccisione) non avviene immediatamente perché il bambino (o anche il genitore) potrebbe aver scritto qualcosa sul disco e attendere l'I/O per completare o eseguire qualche altra attività critica che potrebbe compromettere la stabilità del sistema o integrità del file.
Penso che potresti tagliare l'80% del testo e tutte le immagini e mantenere comunque tutto ciò che conta in questa domanda. – ndemou