linuxÐźŻúÖÆ
linuxÐźŻúÖÆ
ÐźÅÌṩÁËÒ»ÖÖ֪ͨ½ø³Ìϵͳʼþ·¢ÉúµÄ»úÖÆ£¬ËüÒ²ÊÇ×÷ΪÓû§½ø³ÌÖ®¼äͨÐźÍͬ²½µÄ
Ò»ÖÖÔʼ»úÖÆ¡£ÔÚ½ø³ÌÇ¨ÒÆµÄÇé¿öÏ£¬ÈçºÎ´¦ÀíÐźÅÄØ£¿Õⲿ·Ö½éÉÜÁËMOSIXϵͳ¶ÔÐźÅ
»úÖÆµÄ´¦Àí¡£
LINUXÐźŻúÖÆ
ÐźÅÊÇÒì²½µÄ½ø³Ì¼äͨѶ»úÖÆ,ÊÇÔÚÈí¼þ²ã´ÎÉ϶ÔÖжϻúÖÆµÄÒ»ÖÖÄ£Äâ¡£LINUXÄں˵ÄÐÅ
ºÅ»úÖÆ·ûºÏPOSIX.4µÄ¹æ¶¨£¬ÕâÊÇPOSIX.1±ê×¼µÄÒ»¸ö³¬¼¯¡£
ÿ¸ö½ø³ÌµÄtask_struct½á¹¹Öж¼ÓиöÖ¸Õësig£¬Ö¸ÏòÒ»¸ösingal_struct½á¹¹£¬½á¹¹ÖеÄ
Êý×éaction[]Ï൱ÓÚÒ»¸öÐźÅÏòÁ¿±í£¬Ã¿¸öÔªËØÈ·¶¨Á˽ø³Ì½ÓÊÕµ½Ò»¸ö¾ßÌåµÄÐźÅʱӦ
¸Ã²ÉÈ¡µÄÐж¯¡£
struct signal_struct {
atomic_t count;
struct k_sigaction action[_NSIG];
spinlock_t siglock;
};
ÄÇôϵͳÈçºÎÅжÏÒ»¸ö½ø³ÌÊÇ·ñÓÐÐźÅÔڵȴý´¦ÀíÄØ£¿ÕâÊÇͨ¹ýtask_struct½á¹¹ÖеÄsi
gpending³ÉÔ±¡£task_struct½á¹¹ÖеÄblocked³ÉÔ±ÔòΪÆÁ±ÎÐźŵļ¯ºÏ£¬pending³ÉÔ±Ôò
ΪÐźŶÓÁУ¬Ã¿²úÉúÒ»¸öÐźÅÔò°ÑËü¹ÒÈëÕâ¸ö¶ÓÁУ¬ÐźÅλͼsignalÒ²±£´æÔÚÆäÖС£
Óû§³£³£Òª×Ô¼º¶¨Òå¶ÔÐźŵĴ¦Àí³ÌÐò£¬²¢ÇÒÓû§µÄ´¦Àíº¯ÊýÊÇλÓÚÓû§¿Õ¼äµÄ¡£LINUX
ÌṩÁËϵͳµ÷ÓÃsignal£¨sys_signal£©ºÍsigaction£¨sys_sigaction »òsys_rt_sigacti
on£©ÎªÐźÅÉèÖô¦ÀíÏòÁ¿¡£Óû§ÉèÖÃÐźŴ¦ÀíµÄʱ»úÎÒÃÇÊDz»ÄÜÈ·¶¨µÄ£¬¿ÉÒÔÔÚ½ø³ÌǨ
񮂡£¬Ò²¿ÉÒÔÔÚ½ø³ÌÇ¨ÒÆÖ®ºó£¬½ø³Ì¿ÉÒÔÔÚ²»Í¬µÄ½Úµã¼ä¶à´ÎÇ¨ÒÆ£¬Òò´Ë£¬ÈçºÎ±£Ö¤ÐÅ
ºÅ²»±»¶ªÊ§²¢ÇÒ¶¼Äܱ»ÕýÈ·´¦Àí¾ÍºÜÖØÒª¡£²¢ÇÒÎÒÃÇ×¢Òâµ½£¬½ø³ÌÔÚÇ¨ÒÆÊ±£¬²¢²»½«ÐÅ
ºÅÏòÁ¿±íÇ¨ÒÆµ½Ä¿±ê½ø³Ì£¬¶øÖ»Êǽ«½ø³ÌµÄÒì²½ÐźźÍÇ¿ÖÆÐźÅÐÅÏ¢´«Ë͵½Ä¿±ê½ø³Ì¡¾
²Î¼ûmig_send_misc£¨£©ºÍmig_do_receive_misc£¨£©¡¿¡£
struct asig_h
{
unsigned int sigs;/*ÐźÅ*/
int nforced;/*Äں˷¢Ë͵ÄÇ¿ÖÆÐźŵĸöÊý*/
};
struct mosix_task
{¡£¡£¡£¡£¡£¡£¡£
uint32_t asig; /*µ½´ïREMOTEµÄÐźŠ*/
siginfo_t *forced_sigs; /* REMOTEÇ¿ÖÆÐźÅÐÅÏ¢*/
int nforced_sigs; /* REMOTEÇ¿ÖÆÐźŵĸöÊý */
short sigmig; /* Ç¨ÒÆÊ±½ÓÊÕµÄÐźŠ*/
}
int mig_send_misc(int credit)
{ struct mig_misc_h m;
regis
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......
¹¦ÄÜÃèÊö£º
»ñÈ¡»òÕßÉèÖÃ
Óëij¸öÌ×½Ó×Ö¹ØÁªµÄÑ¡ ÏѡÏî¿ÉÄÜ´æÔÚÓÚ¶à²ãÐÒé
ÖУ¬ËüÃÇ×Ü»á³öÏÖÔÚ×îÉÏÃæµÄÌ×½Ó×ֲ㡣µ±²Ù×÷Ì×½Ó×ÖÑ¡Ïîʱ£¬Ñ¡ÏîλÓڵIJãºÍÑ¡ÏîµÄÃû³Æ±ØÐë¸ø³ö¡£ÎªÁ˲Ù×÷Ì×½Ó×Ö²ãµÄÑ¡ÏӦ¸Ã ½«²ãµÄÖµÖ¸¶¨ÎªSOL_SOCKET¡£ÎªÁ˲Ù×÷ÆäËü²ãµÄÑ¡Ï¿ØÖÆÑ¡ÏîµÄºÏÊÊÐ ......
1.“/bin”¡¢“/sbin”¡¢“/usr/bin”¡¢“/usr/sbin”¡¢“/usr/local/bin”µÈ·¾¶ÒѾÔÚϵͳ»·¾³±äÁ¿ÖÐÁË£¬Èç¹û¿ÉÖ´ÐÐÎļþ ÔÚÕ⼸¸ö±ê׼λÖã¬ÔÚÖÕ¶ËÃüÁîÐÐÊäÈë¸ÃÈí¼þ¿ÉÖ´ÐÐÎļþµÄÎļþÃûºÍ²ÎÊý£¬»Ø³µ¼´¿É¡£
2.Èç¹û²»ÔÚ±ê׼λÖã¬ÎļþÃûÇ°ÃæÐèÒª¼ÓÉÏÍêÕûµÄ ......
1
¡¢ÏÂÔØÔ´Âë
¡¡¡¡
´Ó
CVS
µÄ¹Ù·½ÍøÕ¾
cvshome.org
ÉÏѰÕÒ£¬ÓÉÓÚ
CVS
ÀúÊ·ÉÏÒ²³öÏÖ¹ýһЩ°²È«Â©¶´£¬ËùÒÔ½¨ÒéÒª¶¨ÆÚÈ¥Æä¹Ù·½ÍøÕ¾ÉÏ¿´¿´ÓÐûÓÐ×îÐÂ°æ±¾ÍÆ³ö¡£
¡¡¡¡
2
¡¢±àÒë°²×°
¡¡¡¡
# tar -xjpvf cvs-1.12.5.tar.bz2
¡¡¡¡
# cd cvs-1.12.5
¡¡¡¡
# ./configure --prefix=/usr/local/terry_yu/cvs
¡¡
--d ......