begin process at 2012 05 30 05:50:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Système

 > 

Noyau

 > 

processus sous unix


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

processus sous unix

samedi 14 octobre 2006 à 17:10:02 | processus sous unix

atefensi

Je veux vous poser quelque question sur les processus sous unix
J'ai le programme suivant
Main()
{ int i=0 ;
If(fork()==0)
{
i=1 ;
Exit(i) ;
i=2 ;
}
Printf("%d",i);
}
If va afficher que i =0 et se rend pas compte de I du processus fils
Et surtout j'ai pas compris pourquoi il n'affiche pas i=1

Le 2eme pb c'est ce programme
Main()
{
Int i, n=0 ;
For(i=1;i<4;i++)
{
If(fork()!=0)
{
N=i;
}
Printf("%d",n);
Pourquoi il parcours l'arbre de façon ascendante en affichant la valeur de n
Pourquoi il n'affiche pas au fur et a mesure la valeur de n en descendant dans l'arbre
Et pourquoi si on  remplace if (fork() !=0) par if (fork()==0)
Il parcourt l'arbre de façon descendante et affiche au fur et a mesure n

Le troisième problème consiste a
Utiliser exec(v,vp,l,lp) avec d'autre instructions exemple
Printf  ,il n'affiche pas le résultat de printf uniquement celui de execv
Pour d'autre commande comme read write dup. ses commandes seront exécutes  que s'ils sont écrites avant exec
Sinon ils seront ignorés  pourquoi ??????

 

mercredi 18 octobre 2006 à 13:46:11 | Re : processus sous unix

mad_love_disease

Main()
{
    int i=0 ;
    If(fork()==0)
    {
        i=1 ;
        Exit(i) ;
        i=2 ;
    }
    Printf(?%d?,i);
}

pour le pere, la variable i=0 car la variable i est locale, elle n'est pas commune aux deux processus (le pere et le fils). Elles s'apellent toutes les deux i mais sont locales au père et au fils respectivement. Déclare la en globale (attention ce n'est pas terrible) et encore ce n'est pas sur que ca marche car le pere peut executer la commande printf avant que le fils n'est assigné la valeur 1 à la variable i. donc met un sleep(quelquechose) avant l'affichage.

int i ;
Main()
{
    If(fork()==0)
    {
        i=1 ;
        Exit(i) ;
        i=2 ;
    }
    Printf(?%d?,i);
}


Mad_Love_Disease


Cette discussion est classée dans : affiche, printf, unix, processus, fork


Répondre à ce message

Sujets en rapport avec ce message

Comment faire fonctionner en alternance plusieurs processus? [ par Yakurena ] Bonsoir, Mon problème est le suivant :Je dois trouver un algorithme permettant l'affiche de n1 nombres(n1 étant une variable) à l'aide de n2 processus Bug windows avec mon programme (nivo débutant) [ par MATHIS49 ] Bonjour ! Etant un gros debutant en C je m'essai à faire un programme d'amortissement tout simple. Mais le probleme c'est que windows plante lorsque j Afficher un float a l'ecran, %f de printf [ par kaervas ] Bonjour, je suis en train de coder la fonction %f de printf, je galere un peu en fait! Pour le %d on utilise des modulos et des puissances decroissant Attente de la fin d'un processus sous Unix [ par laetitiavincent ] Bonsoir tout le mondeVoilà je voudrais lancer un processus et attendre qu'il soit fini pour que le programme continue. Sous windows, ca ne me pose pas Interface utilisateur ... [ par LocalStone ] Salut à tous, J'ai encore besoin de vos services ! J'ai un petit soucis que je ne comprends pas trop. Pour l'école, je dois faire un programme que l'o printf et float [ par shintaa ] Bonjour,Nous avons un problème avec la fonction printf.En déclarant un float 42.42 et en demandant à printf de nous l'écrire avec printf("%f\n", myFlo aider moi plz avant le 5 avril [ par riadusse ] voici mon programme de simulation de processus selon la méthode SJFj ai pas compris pourquoi l affichage est très très bizarre voici mon programme en utilisation des boites aux lettres sous unix [ par amme88 ] Bonjour, j'ai un petit problème en programmation si quelqu'un peux m'aider , ben je programme en utilisant java sous UNIX, alors mon problème et le Processus (HWP) multiple C sous UNIX? [ par cbismuth ] Bonjour à tous!Une question me rend fou depuis plusieurs jours...Je souhaite créer N processus (HWP, pas des threads) en C sous UNIX avec une boucle " Debutant petit exercice à finir... [ par Rbot ] J'avais comme sujet :Soit un vecteur nommé VECT comportant N valeurs de type entier(Remarque : utiliser la directive #define).Ecrire un programme qui,


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,182 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales