unix域协议是在单个主机上执行客户服务器通信方法,其实就是IPC的一种,但是程序的编写方式与TCP很类似,但比TCP套接口快出一倍的速度。

unix域套接口需要注意的是在UDP的unix套接口send之前需要显示的bind到一个pathname,这样服务器才有回答的路径。

unix域套接口传递描述符字采用sendmsg和recvmsg这两个函数的辅助数据msghdr进行传递,值得注意的是,在一方已经sendmsg的描述符字但是另外一端没有recvmsg之前(in flight),即使发送端关闭描述符字,接收方收到的描述符也是打开的。同时传递的是描述符字而不是一个字号,因此在接收进程中的描述符字号可能不同于发送进程。

socketpair是一个很有用的函数,很方便的创建了一个全双工的unix域套接口。

转载请注明来源:Leoncom-《Unix域套接口及描述符传递》
Trackback

no comment untill now

Add your comment now