An example of using fork and pipe to communicate with subprocesses in C.
make
./parent
After running make
two binaries will be built: parent
and child
.
The parent
binary, when run, will fork and start an instance of child
.
Communication between the processes is handled via pipes connected to stdin and stdout of the child
process.
The parent
sends messages to the child in the form of a size followed by a character string of that size (max 1024).
The child
responds with a reversed message of the same size (it does not write the size first in the response).
When the parent
is done sending messages, it sends a size 0
which causes the child
to terminate.