mi sembra piuttosto normale che ti va in stopped, e non per il kill.
riprova:
Codice: Seleziona tutto
$ nano casa&
[1] 23274
$ <INVIO>
[1]+ Stopped nano casa
Quando un programma che sta in background si aspetta un input da tastiera (e nano è un editor), questo va in stopped perchè chiaramente in background non può arrivargli nessun output sensato.
Il fatto che te lo mostra dopo il kill è un puro caso, o meglio, un processo che butti in background ti da messaggi di interrupt&co solamente quando premi invio nella shell.
Il SIGTERM è un modo soft di chiudere un programma.. gli dice 'effettua la chiusura' (come se premi con la X su una finestra) e il programma decide di chiudersi (può cachare l'interrupt e fare le sue operazioni di chiusura o non chiudersi affatto). Sta di fatto che un processo STOPPED non può fare operazioni, quindi lì rimane.
Il SIGKILL non dice 'chiuditi' al programma, ma dice al kernel 'chiudilo'; non importa cosa stia facendo o non stia facendo il programma; il kernel libera memoria e risorse e lo toglie brutalmente dalla tabella dello scheduler (a meno che non riesce a liberare le risorse di I/O perchè queste non rispondono alla chiusura; in tal caso uccidi il processo solamente con un reboot.... se ti basta; io ho avuto difficoltà a fare il reboot con un hardware che non rispondeva).
Ciao
01