路由器琐碎

路由器中可能使用的系统是嵌入式的Linux,常用的进程:

需要操作data model的进程,编译的时候动态绑定data model动态库,有进程共享锁,mmap共享内存

web服务器   通过浏览器配置路由的参数

dhcp服务器     为连接到路由的设备配置动态的IP

dns客户端     解析域名

cwmp客户端   与远程的ACS(自动配置服务器)交互

cos     整个路由的控制中心,分发消息中心(active主动去检测动态变化的data model的节点,passive被动地接受变化的节点消息,如DHCP server分配ip地址,主动发送消息给cos)

cli                命令配置路由器

samba      实现将插在路由器的U盘的内容共享到连接路由的设备

iptables   配置IP或过滤规则, 如路由的带宽控制,特殊应用(端口号映射,DMZ主机,NAT等),家长控制,URL过滤等

pppoe          建立一条ppp连接

wireless        实现无线的功能

upnp             通用即插即用

ushare,radvd等进程

语音模块:client,pjsip, server  client负责控制, pjsip负责维护会话的状态机, server负责指示硬件操作(内核驱动模块), client是信息交互的中心,通过Unix域套接字进行进程间的通信

log                负责日志信息

进程间的通信使用到共享内存,Unix域套接字,信号量(sem_post, sem_wait)

多线程间同步:锁和条件变量。 注意的问题,全局变量,静态变量等

异步非阻塞使用的是:select, poll 或 epoll,了解其优缺点

关于动态分配和静态分配的问题优缺点

原文地址:https://www.cnblogs.com/hzhida/p/4464110.html