Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Linux ÐźÅsignal´¦Àíº¯Êý


×î½ü×öµÄ¶«Î÷»¹ÕæÊÇÔÓÂÒÎÞÕÂ,  Óеã¸ú²»ÉϽø¶È,½Ó´¥µÄ¶¼ÊÇδ֪µÄ¶«Î÷.¼ÌÐøÀ©³ä..
alarm£¨ÉèÖÃÐźŴ«ËÍÄÖÖÓ£©
Ïà¹Øº¯Êý signal£¬sleep
±íÍ·Îļþ #include<unistd.h>
¶¨Ò庯Êý unsigned int alarm(unsigned int seconds);
º¯Êý˵Ã÷ alarm()ÓÃÀ´ÉèÖÃÐźÅSIGALRMÔÚ¾­¹ý²ÎÊýsecondsÖ¸¶¨µÄÃëÊýºó´«Ë͸øÄ¿Ç°µÄ½ø³Ì¡£Èç¹û²ÎÊýseconds Ϊ0£¬Ôò֮ǰÉèÖõÄÄÖÖӻᱻȡÏû£¬²¢½«Ê£ÏµÄʱ¼ä·µ»Ø¡£
·µ»ØÖµ·µ»ØÖ®Ç°ÄÖÖÓµÄÊ£ÓàÃëÊý£¬Èç¹û֮ǰδÉèÄÖÖÓÔò·µ»Ø0¡£
·¶Àý #include<unistd.h>
#include<signal.h>
void handler() {
printf("hello\n");
}
main()
{
int i;
signal(SIGALRM,handler);
alarm(5);
for(i=1;i<7;i++){
printf("sleep %d ...\n",i);
sleep(1);
}
}
Ö´ÐÐ sleep 1 ...
sleep 2 ...
sleep 3 ...
sleep 4 ...
sleep 5 ...
hello
sleep 6 ...
¡¡
kill£¨´«ËÍÐźŸøÖ¸¶¨µÄ½ø³Ì£©
Ïà¹Øº¯Êý raise£¬signal
±íÍ·Îļþ #include<sys/types.h>
#include<signal.h>
¶¨Ò庯Êý int kill(pid_t pid,int sig);
º¯Êý˵Ã÷ kill()¿ÉÒÔÓÃÀ´ËͲÎÊýsigÖ¸¶¨µÄÐźŸø²ÎÊýpidÖ¸¶¨µÄ½ø³Ì¡£²ÎÊýpidÓм¸ÖÖÇé¿ö:
pid>0 ½«ÐźŴ«¸ø½ø³Ìʶ±ðÂëΪpid µÄ½ø³Ì¡£
pid=0 ½«ÐźŴ«¸øºÍĿǰ½ø³ÌÏàͬ½ø³Ì×éµÄËùÓнø³Ì
pid=-1 ½«ÐźŹ㲥´«Ë͸øÏµÍ³ÄÚËùÓеĽø³Ì
pid<0 ½«ÐźŴ«¸ø½ø³Ì×éʶ±ðÂëΪpid¾ø¶ÔÖµµÄËùÓнø³Ì
²ÎÊýsig´ú±íµÄÐźűàºÅ¿É²Î¿¼¸½Â¼D
·µ»ØÖµ Ö´Ðгɹ¦Ôò·µ»Ø0£¬Èç¹ûÓдíÎóÔò·µ»Ø-1¡£
´íÎó´úÂë EINVAL ²ÎÊýsig ²»ºÏ·¨
ESRCH ²ÎÊýpid ËùÖ¸¶¨µÄ½ø³Ì»ò½ø³Ì×é²»´æÔÚ
EPERM ȨÏÞ²»¹»ÎÞ·¨´«ËÍÐźŸøÖ¸¶¨½ø³Ì
·¶Àý #include<unistd.h>
#include<signal.h>
#include<sys/types.h>
#include<sys/wait.h>
main()
{
pid_t pid;
int status;
if(!(pid= fork())){
printf("Hi I am child process!\n");
sleep(10);
return;
}
else{
printf("send signal to child process (%d) \n",pid);
sleep(1);
kill(pid ,SIGABRT);
wait(&status);
if(WIFSIGNALED(status))
printf("chile process receive signal %d\n",WTERMSIG(status));
}
}
Ö´ÐÐ sen signal to child process(3170)
Hi I am child process!
child process receive signal 6
pause£¨Èýø³ÌÔÝÍ£Ö±µ½ÐźųöÏÖ£©
Ïà¹Øº¯Êý kill£¬signal£¬sleep
±íÍ·Îļþ #include<unistd.h>
¶¨


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨Èý£© HCI²ã±à³Ì

1. HCI²ãЭÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI)  ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈЭÒé ......

linuxÏß³Ì

ËùÓÐÏ̶߳¼ÓÐÒ»¸öÏ̺߳ţ¬Ò²¾ÍÊÇ
Thread ID
¡£ÆäÀàÐÍΪ
pthread_t
¡£Í¨¹ýµ÷ÓÃ
pthread_self()
º¯Êý¿ÉÒÔ»ñµÃ×ÔÉíµÄÏ̺߳š£
ÏÂÃæËµÒ»ÏÂÈçºÎ´´½¨Ò»¸öÏ̡߳£
ͨ¹ý´´½¨Ị̈߳¬Ï߳̽«»áÖ´ÐÐÒ»¸öÏ̺߳¯Êý£¬¸ÃÏ̸߳ñʽ±ØÐë°´ÕÕÏÂÃæÀ´ÉùÃ÷£º
      
void * Thread_Function(void *)
´´½¨Ï ......

Linux ÐéÄ⻯ºÍ PCI ͸´«¼¼Êõ


 
 
¼¶
±ð£º Öм¶
M.
Tim Jones
, ×ÔÓÉ×÷¼Ò
2009 Äê 11 ÔÂ 19 ÈÕ
´¦ÀíÆ÷ÒѾ­Ñݱä
ΪÕë¶ÔÐéÄâ»·¾³Ìá¸ßÐÔÄÜ£¬µ« I/O ·½Ãæ·¢ÉúÁËʲô±ä»¯ÄØ£¿Á˽âÒ»ÖÖÃûΪÉ豸£¨»ò PCI£©Í¸´«£¨passthrough£©µÄ I/O
ÐÔÄÜÔöÇ¿¼¼Êõ£¬ÕâÖÖ´´Ð¼¼Êõͨ¹ýʹÓÃÀ´×Ô Intel® (VT-d) »ò AMD (IOMMU) µÄÓ²¼þÖ§³Ö¸Ä½ø PCI Éè ......

Linuxϼ¸Àý×¥°ü³ÌÐò´úÂë

×¥°ü³ÌÐò1 grub_allpacket.c
#include <stdio.h>
#include <string.h>
#include <errno.h> 
#include <unistd.h>
#include <sys/socket.h>
#include <sys/types.h> 
#include <linux/in.h>
#include <linux/if_ether.h>
#include <net/if.h>
......

linuxÏ¿ØÖÆÌ¨ÖÐÂÒÂë½â¾ö

      ½«ÖÐÎİ汾µÄLINUXÇл»¿ØÖÆÌ¨µ½ÖÕ¶Ëģʽʱºò£¬²¿·ÖÃüÁîºÍ²Ù×÷¹ý³ÌÖÐÏÔʾÂÒÂ룬Ö÷ÒªÊÇÒòΪ°²×°µÄ¹ý³ÌÖÐֻѡÔñÁ˼òÌåÖÐÎĵÄÖ§³Ö£¬ÐèÒªÐÞ¸ÄÅäÖÃÎļþÖеÄÓïÑÔÖ§³ÖÑ¡Ï¼ÓÉÏÓ¢ÎÄÖ§³Ö¼´¿É¡£¾ßÌå²Ù×÷ÈçÏ£º
·½·¨Ò»: ÐÞ¸ÄϵͳÅäÖÃ(½¨Òé)
#vi /etc/sysconfig/i18n
  // ÔÚÎļþÖмÓÈëÒÔÏÂÅäÖ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ