参数 "4指定包含文件名的路径(注意绝对路径和相对路径的区分)
参数 ):指定创建管道文件的访问权限,一般为八进制 /555
举例如下:
创建: *67$7 "%!$7$"%7 1/555-.
服务器打开: ).
)8*67$7 "%!$7$"%7 192:9;<-.
客户打开: ).
)8*67$7 "%!$7$"%7 ,92=:9;<-.
客户机 (% 的数据,服务器就可以通过 %") 来获得。
'、信号(!")
信号是在软件层次上对中断机制的一种模拟,是一种异步通信方式(所谓异步是指,接收
方无法提前预知的信号到来),信号可以直接进行用户空间进程和 内核进程之间交互。
信号的处理方式:
忽略信号,既不对信号做任何处理,但有两个信号不能忽略:>?;;1>9,这两个信
号到来,无条件执行默认操作,也就是杀死当前进程。
捕捉信号,定义信号处理函数,当信号到来时,执行相应的信号处理函数。
执行缺省操作: 对每个信号都规定了默认操作(绝大多数都是直接杀死进程)
一个完整的信号生命周期分为三个重要阶段,而这三个重要阶段由四个重要事件来刻画:
信号的产生,信号在进程中注册,信号在进程中注销,执行信号处理函数。
信号的发送:
*)2)1!-.
返回值:/(成功)3(出错)
参数 ):要接收信号的进程的
)8/,信号发送给所有和本进程在同一进程组的进程
)83,信号发送给所有进程表中的进程(除了进程号最大的进程)
参数 !:信号类型
信号的注册与捕捉:
@)*0!"*!1@)*0$")%-*---*-.
乍看一下觉得这个函数好复杂,其实很简单:这个函数返回一个函数指针,指向一个 @)
*-类型的函数(此函数实际上是注册之前的信号处理方式),函数有两个参数,第二
个参数是一个函数指针,同样指向一个 @) ()类型的函数(此函数是注册后的信
号处理函数),这样是不是就很清楚了。