Moin!
ich bin dabei eine Applikation zu planen, die ich dann in C schreiben möchte. Es wird ein kurzes aber knackiges Programm, das viel Speicher und CPU Zeit benötigt.
Ein _kurzes_ Programm? Was hast du vor ;-)
Es wäre am besten, wenn der Versand der UDP Pakete als ein gesonderter Thread abläuft […]. Mein Plan ist es ein Kindprozess per fork() zu erzeigen und per IPC (shared memory block) die Daten vom Hauptprozess bereit stellen zu lassen.
fork() erzeugt einen neuen Prozess, ein Thread ist etwas Anderes. Aber du möchtest vielleicht wirklich lieber „nur“ einen Thread erzeugen, damit das nicht passieren kann, wenn fork() tatsächlich so funktioniert:
Nun habe ich ja gelesen, dass fork() den ganzen Adressraum des parents kopiert.
Außerdem brauchst du dann keine IPC und Shared Memory, weil der Thread auf deine globalen Variablen zugreifen kann. Dazu solltest du dich aber außerdem mit Monitoren bzw. Semaphoren beschäftigen.
Schönen Montagabend,
Robert