Communication entre 2 applications sous Linux ? - C++ - Programmation
Marsh Posté le 31-03-2005 à 22:46:15
Oui, il y a beaucoup de méchanismes (mémoire partagée, sockets, files de messages, signaux, pipes, fifos, etc.) 
Tout est regroupé sous le nom commun "IPC": Inter-process communication. 
 
http://www.google.com/search?q=int [...] munication 
 
Marsh Posté le 31-03-2005 à 23:34:04
Merci de ta réponse. Pourrais me dire stp lequel est le meilleur ? Si tu as aussi des tutoriaux en francais je suis preneur.
Marsh Posté le 01-04-2005 à 08:51:17
Il n'y en a pas de meilleur.  
 
Mais, souvent, on préfère utiliser les sockets (c'est tout simplement, pour schématiser beaucoup: communiquer via internet). Comme ça, deux programmes sur la même machine peuvent communiquer ensemble, mais également 2 programmes sur des machines distantes, comme ton browser Web et le Apache de hardware.fr. 
D'ailleurs, les communications via sockets sont souvent optimisées pour ne pas traverser toute la pile TCP/IP si tu restes sur la même machine. 
 
Par contre, si tu as besoin d'échanger beaucoup de données entre 2 programmes et que ça aille le plus vite possible (ce qui est finalement pas si fréquent que ça), la mémoire partagée est ce qu'il y a de plus rapide (mais aussi de plus pointu, puisqu'il faut gérer les synchronisations à la main). 
 
Pour le reste, je te laisse chercher, google est ton ami. 
Marsh Posté le 01-04-2005 à 10:11:57
| LeParrain a écrit : Merci de ta réponse. Pourrais me dire stp lequel est le meilleur ? Si tu as aussi des tutoriaux en francais je suis preneur. | 
 
Sv@er ici présent en a écrit un. Voir sur son site.
Marsh Posté le 01-04-2005 à 23:04:06
Est ce que c'est possibles de sérialiser des objets pour les faires passer par des sockets ?
Marsh Posté le 02-04-2005 à 12:13:10
| el muchacho a écrit : VOIR LE SITE DE SVE@R !!  | 
 
 
Rubrique "Mes cours" 
- cours sur les processus (qui explique aussi les pipe) 
- cours sur les IPC 
- cours sur les sockets 
 
Le Parrain: 
- les pipes ont l'avantage d'être automatiquement synchronisés (on peut pas écrire si personne ne lit) et sont très rapide mais sont limités en taille (on peut pas y mettre plus de 1K (ou 4K dans les dernières versions) de données) 
- les IPC demandent un travail plus poussé (gérer soi-même quand on peut lire) 
- les sockets permettent d'implémenter deux programmes qui pourront communiquer sur la même machine ou des machines distantes 
 
el muchacho  
   
   
   
 
Marsh Posté le 02-04-2005 à 12:15:29
| LeParrain a écrit : Est ce que c'est possibles de sérialiser des objets pour les faires passer par des sockets ? | 
 
 
En PHP c'est possible. En C (ou C++) faut que tu te paluches toi-même ta fonction "serialize" (qui correspond à une simple transcription en octet de ton objet) 
Marsh Posté le 31-03-2005 à 22:41:08
Bonjour,
Je viens de commencer à faire de la programmation sous Linux en C++. Je viens juste d'installer le plugin CDT pour Eclipse et ca fonctionne à merveille.
Je voudrais savoir s'il est possible que 2 applications communiquent entre elles sous Linux ? Si oui, commment ?
Merci d'avance.