PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Programme miteinander agieren lassen



farion
11-04-2006, 16:31
Hallo

Ich möchte mir ein eigenes OSD-Menü für einen Mixer etc. basteln.
Ich möchte ein Programm laufen lassen, dass die Anzeige macht, und diese dann über ein anderes steuern.
Das funktioniert bis auf die Kommunikation ganz gut.
Wie kann ich dem laufendes Programm, das zB.: in einer while-Schleife wartet bestimmte informationen geben.
Das ganze ist in stinknormalem c geschrieben

bye far

anda_skoa
11-04-2006, 17:01
Das gibts jede Menge Möglichkeiten
Die üblichen sind Pipes, FIFOs und Sockets

Ciao,
_

farion
11-04-2006, 17:13
Leider bin ich nur mit den Konzepten vertraut vom Implementieren fehlt mir allerdings die Ahnung. Hättest du da einen Link zu? (Am liebsten wären mir FIFOS)

bye far

anda_skoa
12-04-2006, 17:36
Hab das bisher selber noch nicht gemacht, aber aus den manpages entnehme ich in etwas das:

Zuerst mit mkfifo (man 3 mkfifo) ein FIFO anlegen, dann mit open (man 2 open) öffnen und normal wie ein File Lesen bzw Schreiben.

Ciao,
_

farion
13-04-2006, 01:06
http://www2.pmf.fh-goettingen.de/~isimon/Informatik/PronixCKurs/ckurs219.html

Hier steht was ganz Interressantes - irgendwie wird das über /dev/zero gemappt - habe das aber noch nicht ganz kapiert....

bye far

farion
13-04-2006, 14:42
Ich habe es tatsächlich geschafft - mit shmget etc. gemeinsamen Speicher zu verwenden.
Aber mein Problem habe ich nicht hinbekommen - ich beschreibe das mal.

Ich habe eine while-schleife, die jedesmal wenn ich eine Taste auf meiner Fernbedienung drücke, durchläuft. Wenn es die richtige Taste war mache ich was und zeige das per xosd an. Jetzt will ich diese Anzeige aber nach 5Sek wieder verschwinden lassen. Und wenn in der Zwischenzeit wieder was gedrückt, wird die Anzeige verändert und es sollte sich die Zeit entsprechend anpassen, damit das neue wieder 5Sekunden bleibt.

Gruss far