环境目标:单进程修改为多进程;
整个系统有一个master主进程、然后每个功能模块都是由master fork的子进程、主进程维护子进程的启动、停止等;
这里也说下用到的进程通信方式:
1、Unix域套接字:使用在master与所有子进程通信;子子通信;
2、tcp/udp;用于unix套接字备用选项,当多个系统时将没个系统相连;
3、硬件接口:常见各种标准接口,GPIO、PCIE等;这种需要上面包裹一层特殊接口;
4、信号signal:用于接收子进程退出信号和发送信号给子进程;
5、共享内存:操作shm、mmap进行跨进程内存共享;
6、由于其他还有信号量、管道、消息队列等由于考虑到兼容性等,没有使用;