Communication de variables entre deux programmes

Signaler
Messages postés
20
Date d'inscription
vendredi 6 janvier 2006
Statut
Membre
Dernière intervention
31 mars 2006
-
Messages postés
20
Date d'inscription
vendredi 6 janvier 2006
Statut
Membre
Dernière intervention
31 mars 2006
-
Bonjour,



J'ai besoin de faire transmettre des données assez complexes entre deux programmes C++.



Ces variables sont des structures contenant des entiers, des chaines de caractères, des listes ou des vectors.

De plus, ces variables devront être stockées dans une liste d'attente commune aux deux programmes.



Mon gros soucis vient du fait que c'est dans le cadre d'une application
temps réel donc je ne peux pas utiliser quelque chose de trop gourmand
en ressources.



Quelles solutions j'ai pour arriver à faire ca?

Merci d'avance

9 réponses

Messages postés
98
Date d'inscription
vendredi 17 février 2006
Statut
Membre
Dernière intervention
24 janvier 2018

Et bien moi j'utiliserai un fichier,l'un des programmes ecrit dedans et lautre le lis,mais je crois(je my connais pas trop) qu'on peut passer par les threads et meme les sockets mais ptet que ca use plus de ressources.
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
Par filemapping : cela crée une zone mémoire accéssible par 2 processus
Attention :
- il faudra gérer l'acces à la zone (éviter que 2 process aille y écrire en même temps)
- la zone devra contenit toutes les données à partager (pas de pointeurs vers des données qui ne sont pas dans la zone)

Voir richter pour plus de renseignements

http://brunews.free.fr/brunews/download/JR4.zip
http://brunews.free.fr/brunews/download/JR4Sources.zip
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
5
zaibacker => il fait du temps réel, donc a mon avis, l'accès au disque dur, c'est hors de question :)
Messages postés
98
Date d'inscription
vendredi 17 février 2006
Statut
Membre
Dernière intervention
24 janvier 2018

OK autant pour moi luhtor,jai jamais fais de temps reel sauf sous wxworks.
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
On peut écrire sur le disque dur en mode réel. Il suffit d'utiliser les intteruption du BIOS. Mais pour ça, il faut connaitre un peut l'assembler.
Messages postés
20
Date d'inscription
vendredi 6 janvier 2006
Statut
Membre
Dernière intervention
31 mars 2006

ymca2003, ta solution a l'air de convenir.

Merci pour ta documentation, elle va bien me servir!
Merci a tous pour vos réponses :)
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
Le temps réel et le mode réel c'est pas la même chose.
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Oups. Désolé. J'avais pas bien lu.
Messages postés
20
Date d'inscription
vendredi 6 janvier 2006
Statut
Membre
Dernière intervention
31 mars 2006

Sinon, j'ai de nouveau un probleme.



Je crois avoir compris comment ca marche. J'arrive bien a creer les fichiers. Mais je ne sais pas comment ecrire dedans.



Il faut forcement typer le fichier? Ou y a t-il un moyen de pouvoir stocker n'importe quoi dedans (booléens, structure, etc...)?



Il me semble qu'on peut le faire normalement, mais je trouve pas comment...