Bonjour,
J'ai quelques soucis pour manipuler de manière efficace des fichiers entre 2 applications sous linux.
Le principe est que les informations partagées entre les 2 applications sont mises dans des fichiers, sur un système de fichiers virtuels (RAMFS) afin qu'il ne soit pas physiquement sur le disque mais bien dans la RAM.
Le premier truc que je recherche serait de savoir si il est possible de passer des appels systèmes, des signaux ou un truc du style, pour que quand un fichier soit modifié dans une des applications, l'autre application le remarque automatiquement sans devoir reconsulter régulièrement tous les fichiers.
La seconde question concerne les système de fichier virtuel. Jusqu'ici, il faut être root pour pouvoir créer un système de fichier virtuel. Hors, j'aimerai que ceci soit possible pour un utilisateur lambda. Si il a des restriction sur l'endroit ou se trouvera ce système de fichiers virtuels ou sur les utilisateurs qui y auront accès (ou je ne sais quoi d'autre), ce n'est pas grave.
# Shared memory
Posté par Raphaël G. (site web personnel) . Évalué à 2.
Ce que je te conseille, est de faire un shm (shared memory), ça te permet de mettre un segment de donnée en ram, après il te suffit d'avoir la même clef dans les deux programmes et ils peuvent la partager...
une autre possibilité si c'est juste entre deux programmes est de créer un tube ou une pile de message entre les deux et de passer les fichiers a relire.
Pense a coupler les shm avec des verroux de lecture/écriture pour éviter les ennuis.
Bon ça tu le trouvera dans un bouquin de prog en C/unix, mais tu devrais avoir la même chose dans le c++...
(au pire tu fait joujou avec extern C {})
[^] # Re: Shared memory
Posté par Tifox . Évalué à 1.
[^] # Re: Shared memory
Posté par Raphaël G. (site web personnel) . Évalué à 2.
hors linux gère les shm, pipe a peu près nativement dans la glibc et stdc++
Hors si ton architecture est si limitée que ça, tu devrais pas toucher a du c++ qui est tout de même un peu plus évolués et a besoin d'un peu plus de choses sous-jasentes...
[^] # Re: Shared memory
Posté par David Decotigny (site web personnel) . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.