significato dell'uscita aux ps


226

Quando si digita ps aux, cosa significa ogni colonna dell'output? Per esempio

$ ps aux  
timothy  29217  0.0  0.0 11916 4560 pts/21   S+   08:15   0:00 pine  
root     29505  0.0  0.0 38196 2728 ?        Ss   Mar07   0:00 sshd: can [priv]   
can      29529  0.0  0.0 38332 1904 ?        S    Mar07   0:00 sshd: can@notty   

Grazie e saluti!

Risposte:


275
$ ps aux  
USER       PID  %CPU %MEM  VSZ RSS     TTY   STAT START   TIME COMMAND
timothy  29217  0.0  0.0 11916 4560 pts/21   S+   08:15   0:00 pine  
root     29505  0.0  0.0 38196 2728 ?        Ss   Mar07   0:00 sshd: can [priv]   
can      29529  0.0  0.0 38332 1904 ?        S    Mar07   0:00 sshd: can@notty  
  • USER = utente proprietario del processo
  • PID = ID processo del processo
  • % CPU = È il tempo di CPU utilizzato diviso per il tempo di esecuzione del processo.
  • % MEM = rapporto tra la dimensione impostata del residente del processo e la memoria fisica sulla macchina
  • VSZ = utilizzo della memoria virtuale dell'intero processo (in KiB)
  • RSS = dimensione del set di residenti, la memoria fisica non scambiata utilizzata da un'attività (in KiB)
  • TTY = controllo tty (terminale)
  • STAT = stato del processo multi-carattere
  • START = ora di inizio o data del processo
  • TIME = tempo cumulativo della CPU
  • COMANDO = comando con tutti i suoi argomenti

Vedi la pagina man di ps per maggiori informazioni.


26
Potresti aggiungere ad esempio che VSZ e RSS sono emessi in KiB, non byte come pensavo inizialmente ...
Christian Davén,

Puoi dire qualcosa in più sulle differenze tra VSZ e RSS? Grazie.
Qian Chen,

3
RSS è la quantità di memoria fisica utilizzata da questo processo. Si noti che ciò include qualsiasi memoria condivisa con altri processi (ad es. Se altri processi sono caricati dallo stesso eseguibile o dalle stesse librerie), pertanto potrebbe sovrastimare l'utilizzo della memoria. VSZ è la dimensione dello spazio di memoria virtuale: non lasciarti ingannare dal momento che non è tutta memoria "usata". Include la memoria in uso (RSS), la memoria che viene scambiata, ma di solito la maggior parte è solo uno spazio di indirizzamento aggiuntivo a cui non è stata effettivamente assegnata alcuna memoria reale - per utilizzare tale spazio, è necessario fornire più memoria a il processo.
thomasrutter,

2
Ho provato a pensare a un'analogia. Supponiamo che tu stia cenando, quindi condividi una quantità limitata di cibo con altre persone. RSS è la quantità di cibo attualmente nel tuo piatto. VSZ è la dimensione del tuo piatto. Non tutto il tuo piatto è cibo e non è rilevante per quanto cibo hai rivendicato.
thomasrutter,

41

Anche questo potrebbe essere utile:

Codici di stato del processo:

  • R in esecuzione o eseguibile (nella coda di esecuzione)
  • D sonno ininterrotto (di solito IO)
  • S sonno interrompibile (in attesa del completamento di un evento)
  • Z defunto / zombi, terminato ma non raccolto dal suo genitore
  • T arrestato, da un segnale di controllo del lavoro o perché è in fase di tracciamento

Alcuni modificatori extra:

  • < alta priorità (non piacevole per gli altri utenti)
  • N bassa priorità (piacevole per gli altri utenti)
  • L ha pagine bloccate in memoria (per IO in tempo reale e personalizzato)
  • s è un leader di sessione
  • l è multi-thread (usando CLONE_THREAD, come fanno i pthreads NPTL)
  • + è nel gruppo di processi in primo piano

24

In Linux il comando:

ps -aux

I mezzi mostrano tutti i processi per tutti gli utenti. Ti starai chiedendo cosa significa la x? La x è un identificatore che significa "qualsiasi utente". Quindi puoi digitare questo:

ps -auroot

Che visualizza tutti i processi di root, o

ps -auel

che visualizza tutti i processi dell'utente el. La tecnobabble nella pagina 'man ps' è: "ps -aux stampa tutti i processi di proprietà di un utente chiamato 'x' e stampa tutti i processi che sarebbero selezionati dall'opzione -a.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.