[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [HS] qqun peut-il m'aider pour un script bash ??



On Sat, 12 Jan 2002 05:39:29 -0500 (EST)
""Ivan R."" <ivan.rambeau@franceonline.fr> wrote:

> En réponse à Régis Grison <rg@grison.org>:
> 
> > Sylvain Sauvage wrote:
> 
> > (apparemment pas à tous les coups mais dans tous les cas c'est plus
>                ^^^^^^^^^^^^^^^^^^^^
> >  ou moins gênant)
> 
> bonjour a tous!
> 
> pourquoi "pas a tous les coups"?

Tout simplement parce que dans certains cas, selon l'ordonnancement
des process dans l'ordonnanceur du noyau, il se peut que le processus
relatif au grep n'ait pas encore été lancé quand le ps est exécuté et
qu'il envoie sa sortie sur sa sortie standard.

Comme exemple (sans intérêt), je n'ai réussi à le montrer qu'avec 3
process (ça dépend pas mal de la charge et la vitesse de la machine) :

fred@zeus:~$ ps auxw | grep ps | grep ps | grep ps
fred      2346  0.0  0.5  3360 1508 pts/0    R    00:04   0:00 ps auxw
fred      2347  0.0  0.2  1804  740 pts/0    S    00:04   0:00 grep ps
fred      2348  0.0  0.2  1804  732 pts/0    S    00:04   0:00 grep ps
fred@zeus:~$ ps auxw | grep ps | grep ps | grep ps
fred      2350  0.0  0.5  3360 1508 pts/0    R    00:04   0:00 ps auxw
fred      2351  0.0  0.2  1804  740 pts/0    S    00:04   0:00 grep ps
fred@zeus:~$

Lors de la première exécution, le ps a été lancé alors que les 2 grep
étaient déjà en cours d'exécution, mais lors de la deuxième exécution,
seul le premier grep a été lancé (pour vérification, lors du lancement
suivant, le processus suivant avait pour PID 2354).

Cette gestion des processus n'est pas spécifique à Linux et tout bon
bouquin sur Unix aborde à un moment les états des processus (désolé,
pas de référence sous la main).

Fred



Reply to: