Que signifie l'état "sumil interruptible"?

J'ai fait tourner Firefox sur un LiveCD Magic Parted, puis (éventuellement) à la suite d'une combinaison de touches dont je ne me souviens pas, il a rapidement disparu de l'écran et de la list des tâches / windows.

Toutefois:

  1. ps ax | grep firefox ps ax | grep firefox renvoie le dessous (et la ligne grep firefox inutile). Les deux ps et le GUI Task Manager, montrent firefox avec RSS apparemment immuable, VM-SIZE et 0% d'utilisation du processeur.

      johndoe 1916 36,6 14,0 923772 504372 tty1 Sl 13:30 12:15 firefox 

  2. pstree | grep firefox pstree | grep firefox renvoie:

      init─┬─2 * [ROX-Filer───firefox───25 * [{firefox}]] 

  3. strace -p 1916 revient, et apparemment rest sur cette ligne pour toujours:

    futex(0xac975608), FUTEX_WAIT_PRIVATE, 1, NULL

Je comprends d'une réponse à Qu'est-ce que les valeurs de la colonne STAT dans ps signifie? que S (dans Sl ) indique que le process est dans un état de interruptible sleep .

Quelqu'un peut-il élaborer sur ce qu'est l'état, plus en détail?

MODIFIER

Je vais commencer une nouvelle question, avec plus de détails sur ma dissortingbution, pour répondre à la deuxième question initiale.

@msw a fait un bon travail expliquant votre 2ème Q, et certains de vos 1er:

B) Suggérer des moyens relativement simples de refind une forme quelconque de contrôle, pour (à tout le less) sauvegarder les tabs que j'ai ouvert de manière ennuyeuse en mode de navigation privée?

Donc, je vais essayer d'aborder votre 1er Q un peu plus:

A) Elaborer sur ce qu'est l'état, plus en détail?

L'état valeurs Sl (c'est un L minuscule):

  S Interruptible sleep (waiting for an event to complete) l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do) 

cycle de vie du processus

 PROCESS STATE CODES R running or runnable (on run queue) D uninterruptible sleep (usually IO) S interruptible sleep (waiting for an event to complete) Z defunct/zombie, terminated but not reaped by its parent T stopped, either by a job control signal or because it is being traced [...] 

De plus amples détails peuvent être vus dans la page man de signal, man 7 signal , ainsi que dans ce tutoriel, intitulé: Etats de process Linux .

Vous n'avez rien fait au process de Firefox. Il était déjà dans l'état S avant. Le «sumil interruptible» signifie effectivement inactif. Le process est en attente et se réveille lorsqu'il reçoit une input. C'est l'état normal d'un process à less que vous ne l'attrapiez pendant qu'il est occupé.

Vous avez fait disparaître la window. Peut-être que vous l'avez envoyé sur un autre bureau. Comment le ramener à la manière "normale" dépend entièrement de votre gestionnaire de windows, que vous n'avez pas spécifié.

Vous pouvez peut-être récupérer la window avec d'autres outils mais cela dépend quelque peu de ce qui lui est arrivé exactement et si votre gestionnaire de windows coopère. Essayez wmctrl . Commencez par listr les windows Firefox avec wmctrl -l | grep Firefox wmctrl -l | grep Firefox . Notez l'ID de la window dans la première colonne, par exemple 0x12345678. Pour ramener une window sur le bureau actuel, utilisez wmctrl -R 0x12345678 ; alternativement, utilisez wmctrl -a 0x12345678 pour passer à son bureau. Pour le maximiser (qui prend soin des windows en dehors de l'écran ou réduit à un seul pixel), lancez wmctrl -r 0x12345678 -b add,maximized_vert,maximized_horz . Vous pouvez également déplacer et resize la window avec wmctrl -r 0x12345678 -e 1,50,100,1000,800 . Vous devrez peut-être décompresser ou afficher la window avec wmctrl -r 0x12345678 -b remove,shaded ou wmctrl -r 0x12345678 -b remove,hidden .

Il est possible pour les clients X de perdre leur connection et d'en être informé. Le process attendra souvent sur le support à travers lequel rien ne viendra jamais, le laissant dans un sumil interrompu.

Pour Firefox seulement (et d'autres programmes comme gvim ou chrome qui font des dispositions spéciales pour le stockage de l'état en cas d'échec) un simple:

 $ kill -TERM pid 

donnera au process une chance de sauvegarder la list des tabs ouverts, mais je ne countrais pas sur le contenu du formulaire ou sur tout autre état à conserver.