Accueil > Forum > > > > processus arriere/avant plan non zombie! - c/linux
processus arriere/avant plan non zombie! - c/linux
vendredi 31 décembre 2004 à 14:08:27 |
processus arriere/avant plan non zombie! - c/linux

davidauche
|
Bonjour a tt monde, je ne comprends pas trop ça : "Les processus lancés en arrière-plan et terminés ne doivent pas rester zombie mais leur terminaison doit être prise en compte par le shell (ou le programme principal - main)." Qlqn d'entre vous peut m'expliquer ça, et surtout un simple exemple (avec un contre exemple si possible) pour mieux comprendre. PS : en c/c++ sous linux. merci bq d'avance.
|
|
vendredi 31 décembre 2004 à 14:50:34 |
Re : processus arriere/avant plan non zombie! - c/linux

plus_plus_fab
|
"Les processus lancés en arrière-plan et terminés ne doivent pas rester zombie mais leur terminaison doit être prise en compte par le shell (ou le programme principal - main)."*
c'est incompréhensible effectivement. Qui a pondu ça ? Je pense que cette personne a voulu dire que le processus pere doit attendre la terminaison de son fils, s'il ne l'attend plus, le processus fils devient zombie.
|
|
vendredi 31 décembre 2004 à 15:04:54 |
Re : processus arriere/avant plan non zombie! - c/linux

davidauche
|
merci, non je ne pense pas ça, il parle sur : "Les processus lancés en arrière-plan et terminés", comme sous linux quand on lance emacs par exemple avec "emacs &", puis apres moments si on le ferme il nous affiche un ti message ([id] + done). bah si je ne me trompe pas !!?!, mais je ne sais pas comment faire ça aussi :( svp aidez moi! merci bq.
|
|
vendredi 31 décembre 2004 à 15:24:56 |
Re : processus arriere/avant plan non zombie! - c/linux

plus_plus_fab
|
comment faire quoi ? Dans ton exemple, emacs& peut jouer le role du fils et le shell, du pere.
|
|
vendredi 31 décembre 2004 à 15:45:23 |
Re : processus arriere/avant plan non zombie! - c/linux

garslouche
|
Ca ressemble à un mauvais cours de système ça...
Les processus lancés en arrière-plan (avec le &) ne sont rien d'autre que des fork() donc des processus fils. Je suis d'accord avec ++fab : en clair quand il y a un shell et qu'on lance des applis en arriere-plan, ce sont des processus fils et donc il faut faire attention à ne pas faire de zombie.
On ne force pas une curiosité, on l'éveille. .................................................Daniel Pennac
|
|
samedi 1 janvier 2005 à 14:45:02 |
Re : processus arriere/avant plan non zombie! - c/linux

davidauche
|
lol, c'est pas un cours, mais un exo :p "donc il faut faire attention à ne pas faire de zombie" et comment faire ça?
pour emacs par exemple : quand on lance avec & (en arriere plan), apres quand on le ferme il nous affiche .[pid] +Done! comment programmer ça?! avec signal?!
autre question : comment faire passer un processus de forground à background et inversement!
merci pour tt info
a++
|
|
samedi 1 janvier 2005 à 16:03:46 |
Re : processus arriere/avant plan non zombie! - c/linux

plus_plus_fab
|
"donc il faut faire attention à ne pas faire de zombie" et comment faire ça? attendre le fils avec wait ou waitpid.
"comment programmer ça?! avec signal?!" #include <signal.h> #include <stdio.h> #include <errno.h>
void term(int sig) { printf("signal %d reçu\n",sig); exit(0); }
int main() { if (signal(SIGTERM,term) == SIG_ERR) { perror("erreur signal"); exit(-1); } // fait qq chose ... }
"autre question : comment faire passer un processus de forground à background et inversement!" avec le shell, commandes fg et bg.
|
|
samedi 1 janvier 2005 à 16:14:04 |
Re : processus arriere/avant plan non zombie! - c/linux

davidauche
|
merci pour fg et bg j'aime le faire en c, car je suis en train de programmer un shell ;) merci
|
|
samedi 1 janvier 2005 à 18:03:32 |
Re : processus arriere/avant plan non zombie! - c/linux

Nashua
|
Le zombie est un process qui a perdu sont pere et ne sait pas comment s'attacher a init. Comme le dit ++fab il suffit en theorie que le pere fasse un wait() ou waitpid() helas ce n'est pas si simple il faut aussi que le pere soit immunise contre les signaux en installant un handler pour ceux-ci. Le core dump helas ne peut pas etre intercepte. Il faut donc que le pere soit bug free!. Pour le kill -9 du pere, le fils sera tue aussi ce n'est peut etre pas ce que l'on veut obtenir.
Pour la seconde part de la question fg/bg ce n'est pas si simple. Je comprend qu'il est question de changer le comportement du process en cours d'execution de le passer en fg ou en bg par un moyen externe ( un signal envoye du shell pour passer de bg en fg et une combinaison de touche pour passer de fg en bg). Le bg consiste a deconnecter le process de stdin ( on conserve cependant stderr et stdout) a deconnecter le controlling tty et eventuellement a l'attacher au process init . On peut prevoir une routine dans le process qui sera activee par l'appui de touches et deconnectera stdin. le Fg est un peut plus complique mais on peut lancer a partir du shell un signal qui reconnectera le process a stdin (kill USR1 my_process_id). Vaste sujet ...... Yves
Yves
|
|
dimanche 2 janvier 2005 à 14:25:55 |
Re : processus arriere/avant plan non zombie! - c/linux

davidauche
|
Merci Yves, je demande svp de me donner un code qui fera les taches de bg/fg, car vraiment je me galère depuis moments :(, je dois le faire mais j'arrive pas :(, j'ai essayer avec kill et les signal, ça marche pas, je me suis bloquer dans tt les sens!! svp aidez moi! a+
|
|
Cette discussion est classée dans : plan, linux, processus, arriere, zombie
Répondre à ce message
Sujets en rapport avec ce message
c++ - Lister les processus sous linux [ par kriss51 ]
Bonjour à tous,Je suis sous l'environnement LINUX et je tente en C++ de lister tous les processus s'exécutant sur la machine.Savez-vous comment faire
Programme fonctionnant en arriere plan [ par bdkiller ]
Bonjour, je cherche a faire un programme qui va fonctionner en arriere plan, cad je crée un controlleur de winamp, et j'utilise ceci comme code: (je s
application en arriere plan [ par flatmax ]
salutje viens de faire une application (dos) et j'aimerais que cette appli tourne en arriere-plan, sans avoir besoin d'etre active.je m'explique, j'ai
processus sous linux [g++] [ par satanik_mike ]
Bonjour,Je suis en train de d?velopper un serveur POP, SMTP en C++ sous linux, mais je bloque sur une petit probl?me d'ex?cution.J'ai fait un ex?cutbl
le "kill(0,SIGTERM)" de Linux sous Win32 ? [ par Wulfaz ]
je cherche une fonction C pour winNT & win98, équivalente à celle sous Linux/Unix : kill(0,SIGTERM). Pour ceux qui ne la connaisse pas elle envoie un
temps d'exécution d'un processus (c/linux) [ par davidauche ]
bonjour a tt monde,comment calculer le temps d'exécution d'un processus en c sous linux!?j'essaie avec time et times + struct tms marche pas! tjrs me
Permettre à un processus de travailler en arrière plan [ par Pingouin57 ]
Salut à tous, Enfait, ce que j'aimerais faire, c'est de pouvoir "cacher" un autre processus pour qu'il travaille en arrière-plan. En C++, rien de p
linux : renommer processus [ par wazox ]
Bonjour, je cherche le moyen pour qu'un processus puisse renommer son nom tel qu'il apparait avec la commande ps. J'ai essayé en modifiant argv[0] dir
question sur programmation linux [ par yolhaiji ]
YOL.HAI.JIsalut:je voulais savoir comment sur linux peut on etablir une connexion entre un processus pere et ces deux processus fils avec les pipes (
Dialoguer en arriere plan? [ par supergrey ]
Salut, je voudrais savoir comment en voyer du texte (des touches frappée) a une edit box située sur une fenetre ne arriere plan. Esta posibilé???
Livres en rapport
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|