Pointer auslesen

  • Hallo, vielleicht weiß das jemand?


    Ich habe zwei C Programme. Im ersten wird ein Poti abgefragt und diesen wert möchte ich speichern. Bis jetzt schreibe ich diesen Wert in ein txt.doc. Das andere Programm öffnet das txt doc und liest diesen Wert ein. Aber irgend wie gefällt mir die Methode nicht so. Kann nicht das erste Programm einen Pointer setzen und das zweite liest diesen aus?
    Die beiden Programme in eines umwandeln möchte ich nicht :)


    Vielleicht kann mir jemand helfen?


    danke

  • Hallo diode1990,


    zunächst könntest Du Dein Textfile im tmpfs erzeugen, was Dir eine recht hohe Chance einräumt, daß Dein File im RAM zu liegen kommt. Besser wäre allerdings shared memory. Lies mal >>> hier <<<. Das bietet Dir einen Einstieg, von dem Du Dich weiterhangeln kannst. Named pipes könnten auch noch interessant für Dich sein...


    Schöne Grüße


    schnasseldag

  • Servus diode1990,


    ... Kann nicht das erste Programm einen Pointer setzen und das zweite liest diesen aus?


    wie Pointer? Jeder Prozess hat seinen eigenen Adressraum. Du kannst also nicht auf den Speicher eines anderen Programms zugreifen. Und das ist auch gut so.
    Wenn Du diesen Weg willst, wäre das Stichwort "shared memory" ( -> click <- ).
    Alternativ dazu kannst Du auch "named pipes" verwenden ( -> click <- ).
    "Remote procedure calls" oder kurz "rpc" wäre auch eine Möglichkeit ( -> click <- ).
    "message queues" wären auch noch ein Ansatz ( -> click <- ).


    Mehr fällt mir da jetzt ad hoc nicht ein ... aber ich denke, da wird schon was Passendes für Dich dabei sein ;)



    RaspiLED:


    ... zwei C Programme. ...


    ;) ...


    //EDIT: dag tippt scheinbar schneller als ich :)


    cheers,
    -ds-

  • Hallo diode1990,


    Zu named Pipes habe ich mal ein Tutorial geschrieben, das sich leicht auf C übertragen lässt.


    Der eine Prozess schreibt rein - der andere liest aus - die Datei ist leer. Die Dateigrösse kannst Du als Status nutzen, welcher Prozess liefern oder holen darf / muss / kann.



    Alternative: Umgebungsvariablen (Wenn bestimmte Voraussetzungen erfüllt sind.)



    Beste Grüsse


    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    • Icon-Tutorials (IDE: Geany) - GPIO-Library - µController-Programmierung in Icon! - ser. Devices - kein Support per PM / Konversation

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Edited once, last by Andreas ().