易截截图软件、单文件、免安装、纯绿色、仅160KB

linux下信号处理

前言:这一章我们讨论一下Linux下的信号处理函数。  
Linux下的信号处理函数:  
信号的产生  
信号的处理  
其它信号函数  
一个实例  
1.信号的产生  
Linux下的信号可以类比于DOS下的INT或者是Windows下的事件。在有一个信号发生时候相信的信号就会发送给相应的进程。在Linux下的信号有以下几个。 我们使用 kill -l 命令可以得到以下的输出结果:  
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL  
5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE  
9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2  
13) SIGPIPE 14) SIGALRM 15) SIGTERM 17) SIGCHLD  
18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN  
22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ  
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO  
30) SIGPWR  
关于这些信号的详细解释请查看man 7 signal的输出结果。 信号事件的发生有两个来源:一个是硬件的原因(比如我们按下了键盘),一个是软件的原因(比如我们使用系统函数或者是命令发出信号)。 最常用的四个发出信号的系统函数是kill, raise, alarm和setitimer函数。 setitimer函数我们在计时器的使用 那一章再学习。  
#include  
#include  
#include  
int kill(pid_t pid,int sig);
int raise(int sig);
unisigned int alarm(unsigned int seconds);
kill系统调用负责向进程发送信号sig。  
如果pid是正数,那么向信号sig被发送到进程pid。  
如果pid等于0,那么信号sig被发送到所以和pid进程在同一个进程组的进程  
如果pid等于-1,那么信号发给所有的进程表中的进程,除了最大的哪个进程号。  
如果pid由于-1,和0一样,只是发送进程组是-pid。  
我们用最多的是第一个情况。还记得我们在守护进程那一节的例子吗?我们那个时候用这个函数杀死了父进程守护进程的创建  
raise系统调用向自己发送一个sig信号。我们可以用上面那个函数来实现这个功能的。  
alarm函数和时间有点关系了,这个函数可以在seconds秒后向自己发送一个SIGALRM信号。 下面这个函数会有什么结果呢?  
#includ


相关文档:

实战Linux Bluetooth编程(六) L2CAP编程实例

例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
 如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......

linux下的framebuffer的例子(转)

例子实现了直接写屏的功能,即把屏幕清空(变黑),程序的流程大致为:打开一个FrameBuffer设备;通过mmap调用把显卡的物理内存空间映射到用户空间;通过映射关系直接写内存。
头文件
////////////////////////////////////////
///////////// fbtools.h ////////////////
////////////////////////////////////////
# ......

每日C(3.Linux常用C函数 内存控制篇)

内存控制篇
calloc
free
getpagesize
malloc
mmap
munmap
calloc(配置内存空间)
相关函数
malloc,free,realloc,brk
表头文件
#include <stdlib.h>
定义函数
void *calloc(size_t nmemb,size_t size);
函数说明
calloc()用来配置nmemb个相邻的内存单位,每一单位的大小为size,并返回指向第 ......

我所熟悉的Linux命令

在这里整理一下我所熟悉的linux命令,这些命令应该是使用linux运营一个网站所需的基本命令,供想学习使用linux的同事参考。
大家也可以补充一些在工作中常用到的命令,只列系统命令和基本shell脚本,不涉及apache、tomcat、ftp、mysql管理。 
我只列出命令和常见的参数组合,含义就不解释了,大家问问google都会得到 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号