Plateformes d'assistanceDiscussions & Opinions des Communautés
|
|
|
|
Semaphores entre 2 processus
Dernière réponse le 26 mai 2004 à 14:08:57 brice, le 25 mai 2004 à 22:48:44Bonjour et merci d'avance a qui voudra bien m'aider
j'ai un probleme que voici :
je ne trouve aucune aide sur internet pour savoir comment creer et utiliser des semaphores entre 2 processus qui accedent a un meme fichier texte.
si quelqu'un pouvait m'envoyer un code permettant cela , j'en serais tres heureux.
et je travaille sous linux.
Meilleures réponses pour « semaphores entre 2 processus » dans :
Télécharger Microsoft .NET Framework 2.0 (x86) VoirLe package redistribuable de Microsoft .NET Framework 2.0 installe le runtime .NET Framework et les fichiers associés requis pour l'exécution d'applications développées pour le .NET Framework 2.0.
Le .NET Framework 2.0 fournit une évolutivité et...
Qualité - Management par les processus VoirNotion de processus
Le modèle de processus consiste à concevoir l'objectif de l'entreprise comme
étant la fourniture de produits et/ou services conformes aux attentes des clients.
Ainsi, l'entreprise est modélisée comme un ensemble de processus...
Processus inactif du système VoirProcessus inactif du système
Le processus inactif du système (en anglais systeme idle process) n'est pas un processus à proprement parler, il
correspond aux ressources disponibles du système. Ainsi son
taux d'utilisation du processeur est en en...
Processus Windows - Introduction VoirIntroduction aux processus
Dans un souci de modularité Microsoft Windows est architecturé en services (processus)
fonctionnant en arrière-plan. Il est possible d'afficher la liste des processus en cours
dans le gestionnaire des tâches en appuyant...
En fait, ADA c'est un langage de programmation. On utilise des tâches et il faut ensuite les synchroniser avec des sémaphores, moniteurs ou des RDV.
Nblect : Integer:=0; SR: Sem_Binaire; mutex: Sem_Binaire; sem: Sem_Binaire; -- tache type d'un lecteur task type Lecteur (P : integer); task body Lecteur is begin loop Mutex.P; Nblect:=Nblect+1; if Nblect=1 then SR.P; end if; mutex.V; --Mettre ton code pour lire un fichier ici mutex.P; Nblect:=Nblect-1; if Nblect=0 then SR.V; end if; mutex.V; end loop; end; -- tache type d'un redacteur task type Redacteur (P : integer); task body Redacteur is begin loop sem.P; SR.P; --mettre ton code pour ecire dans le fichier ici SR.V; sem.V; end loop; end; Lect1 : Lecteur (p => 1); Red1 : Redacteur (p => 1); Lect2 : Lecteur (p => 2); Lect3 : Lecteur (p => 3); Red2 : Redacteur (p => 2); Ici, il y a 3 lecteurs et 2 rédacteurs mais on peut en mettre plus. Les lecteurs peuvent lire le fichier en même temps, pas de lecture et d'écriture simultanée et pas d'écriture simultanée. Sans priorité c'est parce que lorsque un lecteur demande à écrire puis un rédacteur demande à écrire, le lecteur lira avant que le rédacteur écrive. Ils passent dans l'ordre de leur demande. J'ai d'autres exemples avec priorité lecteur et priorité rédacteur. Par exemple, priorité lecteur permet de faire passer tous les lecteurs qui veulent lire le fichier avant que les redacteurs puissent écrire, etc .... Dis-moi d'abord si c'est ce que tu cherches. Si oui, je te passerai le reste. @+ |

