Le 12620ième jour après Epoch, christo leroy écrivait: > bonjour, > > voila, je viens de poser la question sur un forum de programmation en > c et on me renvoie ici, donc, > je suis en train de faire un programme en c qui va tourner sur debian, > et qui lance un binaire par une commande : systeme(binaire); > > le langage c etant monotache ( c'est la reponse qu'on m'a faite sur le > forum c), le programme stoppe son execution tant que le binaire lancé > par system(...) n'a pas terminé son execution.
Commence par changer de forum C ... ;) > et on peut faire en sorte que le programme lance le binaire, et > continue sans s'inquieter de savoir s'il est fini ou pas. > on me dit que la solution est dans un appel au systeme d'exploitation > ( DEBIAN ), et c'est là que j'ai besoin de vous. > la Debian permet elle cela ? > on parle de la fonction fork() ? C'est pas spécifique à Debian, et Debian n'est pas un système d'exploitation mais une distribution particulière du système GNU/Linux. La solution est effectivement de passer par fork(), qui est un appel système. Tu peux voir le fork() en oeuvre avec le shell: Tu lances une commande, et tu ne récupères le prompt qu'une fois la commande terminée. Si tu fais suivre ta commande du caractère '&', alors il y a fork(), et tu as le prompt tout de suite après. Pour info, ce n'est pas un langage qui est mono ou multi-tâches. C'est un système d'exploitation qui permet ou non de faire ça.