Linux程式设计
http://www.openchess.org/noitatsko/programming/ (2001-05-24 16:47:48)
信号处理
--------------------------------------------------------------------------------
信号处理概说
送出信号
接收信号
信号的处理
任务控制
--------------------------------------------------------------------------------
POSIX IPC
reliable/unreliable
reentrant
pending
sending signals
catching signals
manipulating
signal definitions
--------------------------------------------------------------------------------
信号singals
信号的处理可以用一大章来写,涉及的层面也会深入整个作业系统中,我并不打算这样做,因为您可能会越搞越迷糊。这里我只告诉您如何接上信号,在实用的层面上,这样便很够用了。您可以先利用这些基本的技巧来撰写程式,等到有进一步高等应用的需要时,找一本较深入的UNIX Programming教材,专门研究signal的写法。
一般简单的signal写法如下:
void mysignal(int signo)
{
/* my signal handler */
}
void initsignal(void)
{
struct sigaction act;
act.sa_handler = mysignal;
act.sa_flags = 0;
sigemptyset(&act.sa_mask);
sigaction(SIGHUP,&act,NULL);
sigaction(SIGINT,&act,NULL);
sigaction(SIGQUIT,&act,NULL);
sigaction(SIGILL,&act,NULL);
sigaction(SIGTERM,&act,NULL);
}
例一: lock.c
在fork的例三中提到,在daemon被杀掉时,需要在离开前,将/var/run/lock.pid删除。这里我们可以利用signal来处理这件事。
#include
#include
#include
#include
#define LOCK_FILE "/var/run/lock.pid"
void quit(int signo)
{
printf("Receive signal %d\n",signo);
unlink(LOCK_FILE);
exit
相关文档:
本人前端时间写了个HTML文件分析器,windows平台上的VC6.0,使用标准C++。昨天接到指令,应要求要发布一个Linux版本的,茫然啦,Linux下面的hello world都没有玩过,对linux下的C++程序仅仅限于听他们神吹过的GCC, G++, MAKEFILE什么的,其他一概不知。这就注定移植过程必然full of frustrating.
早上在如同涓涓溪流 ......
Linux 下面使用RPC需要使用到命令rpcgen.
在Linux下开发RPC程序流程如下:
1.写一个rpc程序
如test.x
2.使用rpcgen生成必须的文件,通常是客户端和服务器端以及头文件
$rpcgen test.x
3.使用rpcgen生成服务器端和客户端的C语言代码
$rpcgen -Ss -o test_s ......
这个本来以前也写过的,今天无聊复习下 再写一遍。简单的一塌糊涂,写的不咋地大家见谅哦!有空再加强 嘿嘿!
#include <stdio.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <time.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <netdb.h ......
格式: echo "\033[字背景颜色;字体颜色m字符串\033[0m"
例如:
echo "\033[41;36m something here \033[0m"
其中41的位置代表底色, 36的位置是代表字的颜色
那些ascii code 是对颜色调用的始末.
\033[ ; m …… \033[0m
字背景颜色范围:40----49
40:黑
41:深红
42:绿
43:黄色
44:蓝色
45:紫色
4 ......
vim(vi)是Linux中功能强大的编辑工具。vim有3中主要的模式:
1.normal mode:当进入vim时,默认的模式就是normal mode。在此模式下,无法输入任何文字,不过可以利用按键命令来执行许多操作命令,例如移动光标位置、复制、删除。
2.insert mode:进入vim输入a、i、或o键。即可进入insert  ......