Utilisation du fork sous UNIX

Utilisation du fork sous UNIX - Programmation

Marsh Posté le 19-10-2001 à 15:08:11    

Salut,
Est-ce qu'une âme charitable peut-elle m'expliquer comment fonctionne / utilise-t-on un fork sous UNIX ?
 
Merci d'avance

Reply

Marsh Posté le 19-10-2001 à 15:08:11   

Reply

Marsh Posté le 19-10-2001 à 15:16:24    

HerveC a écrit a écrit :

Salut,
Est-ce qu'une âme charitable peut-elle m'expliquer comment fonctionne / utilise-t-on un fork sous UNIX ?
 
Merci d'avance  




 
#include heu je sais plus comme  ca a froid
//pere
if(fork()==0){
//code fils
exit(0);
}
//pere


---------------
Narf... It is broken...
Reply

Marsh Posté le 19-10-2001 à 15:17:24    

C po un truc gu genre
 
while (fork()) do fork() ? (a po faire!)
:p desole
ca fait 4 ans ke j'ai po fait de fork et C tout ce ke j'ai retenu ;)


---------------
Hyndex - Meuaarf !! ReZo !!!
Reply

Marsh Posté le 19-10-2001 à 15:19:04    

HerveC a écrit a écrit :

Salut,
Est-ce qu'une âme charitable peut-elle m'expliquer comment fonctionne / utilise-t-on un fork sous UNIX ?
 
Merci d'avance  




 
man fork? :D


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 19-10-2001 à 15:19:40    

evode a écrit a écrit :

C po un truc gu genre
 
while (fork()) do fork() ? (a po faire!)
:p desole
ca fait 4 ans ke j'ai po fait de fork et C tout ce ke j'ai retenu ;)  




 
au moins avec ca t sur de faire bosser ton prosss ;)
sous windows e ntout cas, sous linux et unix normalement ca degage (suivant les versions) [:dlr]


---------------
Narf... It is broken...
Reply

Marsh Posté le 19-10-2001 à 15:20:33    

suri a écrit a écrit :

 
 
man fork? :D  




 
tout a fait :D
mais man c en anglais et sous windows yapa man ;)


---------------
Narf... It is broken...
Reply

Marsh Posté le 19-10-2001 à 15:21:02    

la pile des process de ces system est bien blindee normalement


---------------
Hyndex - Meuaarf !! ReZo !!!
Reply

Marsh Posté le 19-10-2001 à 15:21:34    

evode a écrit a écrit :

la pile des process de ces system est bien blindee normalement  




 
oui c ce que je dis non? :D


---------------
Narf... It is broken...
Reply

Marsh Posté le 19-10-2001 à 15:27:34    

DLR a écrit a écrit :

 
oui c ce que je dis non? :D  




 
Oui mais je confirmais
 
 
Bon je recommence (:p):
 
Je suis d'accord avce toa, ces systemes gerent mieux la piles des processus
(koa ke je ne sais po comment s'en sortent les w2k et XPà


---------------
Hyndex - Meuaarf !! ReZo !!!
Reply

Marsh Posté le 19-10-2001 à 15:29:13    

nan sous hp-ux tu plantes tout ... pas assez blindé :D
Normalement il te laisse toujours une tite place pour executer un kill... mais sous hp-ux ba ça chie... t'as plus qu'à rebooter :D


---------------
<< Contrairement à l'immense majorité des intellectuels, le riz, pour être cultivé, exige une certaine chaleur. >>
Reply

Marsh Posté le 19-10-2001 à 15:29:13   

Reply

Marsh Posté le 19-10-2001 à 15:30:22    

NiCoO a écrit a écrit :

nan sous hp-ux tu plantes tout ... pas assez blindé :D
Normalement il te laisse toujours une tite place pour executer un kill... mais sous hp-ux ba ça chie... t'as plus qu'à rebooter :D  




 
bon a savoir
hp-ux c po encore mort? ils vont pas passer a linux par hasard?


---------------
Narf... It is broken...
Reply

Marsh Posté le 19-10-2001 à 15:32:05    

HP-UX c'est po mort mais c'est la mort :D
Mais je crois que le pb de la pile est résolu dans les dernière versions... mais y a un an y avait encore le pb :)


---------------
<< Contrairement à l'immense majorité des intellectuels, le riz, pour être cultivé, exige une certaine chaleur. >>
Reply

Marsh Posté le 19-10-2001 à 15:34:19    

Je tiens à remercier DLR pour sa réponse. En ce qui concerne le man fork et bien bof. Plutôt chiche comme explication, même pas un petit exemple...

Reply

Marsh Posté le 19-10-2001 à 15:36:35    

main()  
{ int return_value;
 
   printf(``Processus fork'';);
   fork();
   printf(``Le num du process est %d
     et la valeur du return est %dn",
     getpid(), return_value);
   execl(``/bin/ls/'',``ls'',``-l'',0);
   printf(``cette ligne n'est po écrite'';);
 
}
 
Résultat:
 

Citation :

Processus fork
Le num du process est 6753 et la valeur du return est 0
Le num du process est 6754 et la valeur du return est 0

 

[edtdd]--Message édité par NiCoO--[/edtdd]


---------------
<< Contrairement à l'immense majorité des intellectuels, le riz, pour être cultivé, exige une certaine chaleur. >>
Reply

Marsh Posté le 19-10-2001 à 15:37:25    

HerveC a écrit a écrit :

Je tiens à remercier DLR pour sa réponse. En ce qui concerne le man fork et bien bof. Plutôt chiche comme explication, même pas un petit exemple...  




 
de rien [:dlr]


---------------
Narf... It is broken...
Reply

Marsh Posté le 19-10-2001 à 15:38:20    

HerveC a écrit a écrit :

Je tiens à remercier DLR pour sa réponse. En ce qui concerne le man fork et bien bof. Plutôt chiche comme explication, même pas un petit exemple...  




Que veut tu ajouter... :??:

Reply

Marsh Posté le 19-10-2001 à 15:42:47    

int pid; /* identifiant du processus*/
 
pid = fork();
if ( pid < 0 )
   { printf(``Fork impossible!!n'';);
     exit(1);
   }
if ( pid == 0 )
   { /* Processus fils*/ ...... }  
else
   { /* Le pid du processus père est le pid du fils*/
   .... }


---------------
<< Contrairement à l'immense majorité des intellectuels, le riz, pour être cultivé, exige une certaine chaleur. >>
Reply

Marsh Posté le 19-10-2001 à 15:44:39    

Tu t'en souviens NiCoO :??:
 
Alors la tu m'epates :D

Reply

Marsh Posté le 19-10-2001 à 15:45:36    

ba c'étais que l'an dernier mon grosbout :D


---------------
<< Contrairement à l'immense majorité des intellectuels, le riz, pour être cultivé, exige une certaine chaleur. >>
Reply

Marsh Posté le 19-10-2001 à 15:51:14    

Et alors ??  
 
Apres chaque diplome moi je fais un gros reset :D

Reply

Marsh Posté le 19-10-2001 à 15:58:16    

exemple :
int pid, status;
switch (pid= fork())
{
 case 0 :
         /* Processenfant */
        exec(...)
 case 1 :
         /* Cas d'erreur fork */
 default :  
         /* ProcessParent */
         /* pid represente le pid du process enfant */
         wait(&status); /* si tu veux ke le process parent attende la fin du process fils  status contient le code retour "exit" du process fils */
 
}


---------------
http://www.ipduneclan.fr.st
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed