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
ÐźŵĴ¦Àí¿ÉÒÔÓÃÒ»´óÕÂÀ´Ð´£¬Éæ¼°µÄ²ãÃæÒ²»áÉîÈëÕû¸ö×÷ҵϵͳÖУ¬ÎÒ²¢²»´òËãÕâÑù×ö£¬ÒòΪÄú¿ÉÄÜ»áÔ½¸ãÔ½ÃÔºý¡£ÕâÀïÎÒÖ»¸æËßÄúÈçºÎ½ÓÉÏÐźţ¬ÔÚʵÓõIJãÃæÉÏ£¬ÕâÑù±ãºÜ¹»ÓÃÁË¡£Äú¿ÉÒÔÏÈÀûÓÃÕâЩ»ù±¾µÄ¼¼ÇÉÀ´×«Ð´³Ìʽ£¬µÈµ½ÓнøÒ»²½¸ßµÈÓ¦ÓõÄÐèҪʱ£¬ÕÒÒ»±¾½ÏÉîÈëµÄ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
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ 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 ......
ÏÂÃæ¼òµ¥ËµÏÂÎÒ²Ù×÷µÄ¹ý³Ì£¬Ï£ÍûÄܸøÏñÎÒÒ»ÑùÈëÃŵÄÈËÒ»µã°ïÖú¡£
1£ºÏµÍ³°²×°£¬ÕâÀï¾Í²»ËµÁË£¬ÍøÉÏÓкܶ࣬ҲºÜ¼òµ¥¡£Ë³±ã˵Ï£¬ÎÒÓõÄÊÇredhat 9£»
2£ºÔÚͼÐνçÃæÏÂÏÂÔØapache °²×°°ü£¬ÎÒϵÄÊÇ httpd-2.2.9.tar.gz Ô´Âë°²×°°ü£¬µØÖ·ÊÇhttp://httpd.apache.org/download.cgi
3£º½«ÏÂÔØÎļþ±£´æµ½/home/redhat/ ......
LinuxÐÐÒµÕÐÆ¸¼¼ÊõÃæÊÔÌâ»ã×Ü
1. ÔÚLinuxϵͳÖУ¬ÒÔ Îļþ ·½Ê½·ÃÎÊÉ豸 ¡£
2. LinuxÄÚºËÒýµ¼Ê±£¬´ÓÎļþ /etc/fstab ÖжÁȡҪ¼ÓÔØµÄÎļþϵͳ¡£
3. LinuxÎļþϵͳÖÐÿ¸öÎļþÓà i½Úµã À´±êʶ¡£
4. È«²¿´ÅÅÌ¿éÓÉËĸö²¿·Ö×é³É£¬·Ö±ðΪÒýµ¼¿é ¡¢×¨ÓÃ¿é ¡¢ i½Úµã±í¿é ºÍÊý¾Ý´æ´¢¿é¡£
5. Á´½Ó·ÖΪ£º Ó²Á´½Ó ºÍ ·ûºÅÁ´½ ......
vim(vi)ÊÇLinuxÖй¦ÄÜÇ¿´óµÄ±à¼¹¤¾ß¡£vimÓÐ3ÖÐÖ÷ÒªµÄģʽ£º
1.normal mode£ºµ±½øÈëvimʱ£¬Ä¬ÈϵÄģʽ¾ÍÊÇnormal mode¡£ÔÚ´ËģʽÏ£¬ÎÞ·¨ÊäÈëÈκÎÎÄ×Ö£¬²»¹ý¿ÉÒÔÀûÓð´¼üÃüÁîÀ´Ö´ÐÐÐí¶à²Ù×÷ÃüÁÀýÈçÒÆ¶¯¹â±êλÖᢸ´ÖÆ¡¢É¾³ý¡£
2.insert mode£º½øÈëvimÊäÈëa¡¢i¡¢»òo¼ü¡£¼´¿É½øÈëinsert  ......