Vedi il report in tempo reale sullo stato del processo

4

In Linux, posso usare top per vedere un rapporto in tempo reale su quali processi sono in esecuzione. Un campo importante che utilizzo è il campo Stato processo, che mostra se un processo è in esecuzione, uno zombi, addormentato, ecc.

Stavo leggendo la manpage di Mac OS X per la parte superiore, ma non vedo Process Status. link

C'è un altro modo per farlo dalla riga di comando in OS X? Sto eseguendo il debug di un programma che utilizza fork() , quindi ho bisogno di qualcosa che mi mostri un feed live dei processi attualmente in esecuzione.

    
posta 425nesp 23.09.2014 - 21:58
fonte

2 risposte

3

Nella versione di OS X di top il campo è chiamato STATE e ti mostra in che stato si trova il processo. Per informazioni sullo stato stuck vedi: link

Il comando ps su OS X può anche mostrare lo stato del processo. Ad esempio, ps aux include il campo STATE . E la pagina man ps ha questo da dire su il campo:

 state     The state is given by a sequence of characters, for example, ''RWNA''.  The first character indicates the run state of the process:

           I       Marks a process that is idle (sleeping for longer than about 20 seconds).
           R       Marks a runnable process.
           S       Marks a process that is sleeping for less than about 20 seconds.
           T       Marks a stopped process.
           U       Marks a process in uninterruptible wait.
           Z       Marks a dead process (a ''zombie'').

           Additional characters after these, if any, indicate additional state information:

           +       The process is in the foreground process group of its control terminal.
           <       The process has raised CPU scheduling priority.
           >       The process has specified a soft limit on memory requirements and is currently exceeding that limit; such a process is (necessarily) not swapped.
           A       the process has asked for random page replacement (VA_ANOM, from vadvise(2), for example, lisp(1) in a garbage collect).
           E       The process is trying to exit.
           L       The process has pages locked in core (for example, for raw I/O).
           N       The process has reduced CPU scheduling priority (see setpriority(2)).
           S       The process has asked for FIFO page replacement (VA_SEQL, from vadvise(2), for example, a large image processing program using virtual memory to sequentially
                   address voluminous data).
           s       The process is a session leader.
           V       The process is suspended during a vfork(2).
           W       The process is swapped out.
           X       The process is being traced or debugged.
    
risposta data 24.09.2014 - 00:58
fonte
0

OS X ha anche il comando top . Poiché OS X è basato su BSD, potrebbero esserci differenze di utilizzo. Per ulteriori informazioni, consulta man top .

Potresti trovare più facile a ps ax | grep 'Z' , ad esempio, per trovare i processi zombi. top potrebbe non fare esattamente quello che vuoi.

    
risposta data 23.09.2014 - 23:55
fonte

Leggi altre domande sui tag