sysctl -a| grep "syn"
sysconf ser
进程环境,
交给用户配置
可靠数据报
setsocketopt
多路复用IO select poll
信号驱动IO sigIO
1.绑定本地所有IP 0.0.0.0 ,用那个IP访问都可以
2,的bind的时候如果要接听本地所有IP可以设置//local_ipv4_address.sin_addr.s_addr = INADDR_ANY;
等待两倍的MsI超时,可以设置setsockopt 的 地址,端口重用(linux不支持),地址重用
apue 第二章 ,语言移植,系统,平台,注意可描述型
vi 替换: :%s/ \<fd\> /listening_socket /g
fork 子进程必须(exit())退出情况,在While 中,
线程,默认
分离,
非分离,要做join
如何给线程传参数
线程成功返回0,出错返回错误号
ftp://ftp.hxu.edu.cn/pub/Books/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/
注意信号的捕获,
wait()
非实时信号,
实时信号,
telnet nc
netstat -l
lsof -n |grep "servers"
vi /etc/server
unix 环境高级
tcp/ip想借
unix 网路遍程
广播设置一个 sockopt ,授线广播,不能离开当前子网 255.255.255.255,子网广播
多播 224--239.0.0.0,开始的D类ip主要设置setsockopt 加入一个
1110 28个0
不属于组可以各组发信息,
netstat -g
多播最早在驱动成,最玩在ip丢,
广播在Udp丢
5.信号处理函数在通过fork产生子进程中是否有效?
当一个进程调用fork时,子进程继承父进程的信号处理方式。因为子进程复制了父进程的存储映像,所以信号处理函数的地址在子进程中是有意义的。
8.可重入函数(Reentrant Functions)
当一个信号量被捕捉并执行相应的处理程序后,进程将继续执行。我们无法确定此时进程执行到何处,当进程执行到malloc,而在信号处理函数中同样存在malloc则有可能发生错误。则malloc就是非可重入函数。
大多数的非可重用函数有如下特征:
o 使用静态数据结构
o 调用malloc或free
o 标准IO库的一部分
应当了解,即使我们在信号处理函数中调用了可重入函数,由于在每一个线程中仅有一个errno,而main函数可能设置了这个值。因此,需要在调用信号处理函数之前保存errno,在信号处理函数之后恢复errno值。
10.什么是信号屏蔽字(signal mask)?
规定了当前要阻塞递送到该进程的信号集。对于每种可能的信号,该屏蔽字中都有一位与之对应。对于某种信号,如果其对应位以设置,则它当前是被阻塞的。进程可以调用sigprocmask来检测和更改其当前信号屏蔽字。
13.如何检测一个进程是否存在?
POSIX.1 定义了0作为null信号。若kill函数的signo参数为0,kill将执行普通的差错检测,但将不会发送任何信号。这通常被用于检测一个进程是否存在。如果我们向一个不存在的进程发送null信号,kill将返回-1,并将errno设置为ESRCH。注意,unix系统会在一定时间后回收进程ID,所以具有特定进程ID的进程不一定是你认为的那个进程。
进程存在性测试并不是原子操作。当kill返回时,被测试的进程可能已经存在了,所以该测试并无多大价值。
http://blogread.cn/it/article.php?id=3344#q4