I’ve been looking over the GNU Radio code and I can’t seem to figure
being done in /usrp2/host/lib/open_usrp2_socket.cc file. Specifically,
lines 97 through to 128.
What I think is happening is that a pair of connected sockets is created
(97) then a process is forked (102). So, the child process has it’s own
pair of sockets? Are sockfd in each process connected? That would
explain why sockfd is closed (114) immediately after the fork, but it
would not explain the need for socketpair to begin with.
So, my questions are: why is socketpair needed? What is the fork doing?
And, why is the socket closed right after the fork?
Any help is appreciated.