fix issue 227 - UE IP settings disrupts realtime
see oai/openairinterface5g#227 When the UE connects to the eNodeB and receives its IP address from the network, it calls system() to set it in the linux kernel world. This call is not done in a realtime thread, but in the NAS, which uses its own thread, independent of the realtime processing. In some situations this totally disrupts realtime processing. It is difficult to know precisely why that happens, but it seems that calling fork(), as system() does, in a multi-threaded program is not a good idea. (So say several people on the internet.) It is not clear why the softmodem is impacted, but it seems that fork() is really what triggers the disruption. Several tests lead to that conclusion. To fix the problem, we create a child background process very early in main() (before anything else basically). Then instead of calling system(), the main process sends the string to the background process. The background process gets...