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

linux 2.6Ô´´úÂëÇé¾°·ÖÎö±Ê¼ÇÖ®½ø³Ì11

Ϻ¯Êý£¬´´½¨½ø³ÌÃèÊö·ûÒÔ¼°×Ó½ø³ÌÖ´ÐÐËùÐèÒªµÄËùÓÐÆäËûÊý¾Ý½á¹¹¡£²ÎÊýÓëdo_fork()µÄ²ÎÊýÏàͬ£¬Íâ¼Ó×Ó½ø³ÌµÄpid¡£
static task_t *copy_process(unsigned long clone_flags,unsigned long stack_start,struct pt_regs *regs,unsigned long stack_size,int __user *parent_tidptr,int __user *child_tidptr,int pid)
{
        int retval;
        struct task_struct *p = NULL;
        if ((clone_flags & (CLONE_NEWNS|CLONE_FS)) == (CLONE_NEWNS|CLONE_FS))
                return ERR_PTR(-EINVAL);
        if ((clone_flags & CLONE_THREAD) && !(clone_flags & CLONE_SIGHAND))
                return ERR_PTR(-EINVAL);
        if ((clone_flags & CLONE_SIGHAND) && !(clone_flags & CLONE_VM))
                return ERR_PTR(-EINVAL);
ÉÏÃæµÄÒ»×éÊÇ»¥Ïàì¶ÜµÄ£¬ËùÒÔ±ØÐë¼ì²é£¬ÈçµÚÒ»¸ö¡£clone²»ÄÜÓÖÐèÒª×Ô¼ºµÄ¿Õ¼ä£¬ÓÖÆÁ±ÎÎļþ³õʼÐí¿ÉȨµÄλÑÚÂë¡£
¶øµÚ¶þÐе±CLONE_THREAD±»ÉèÖã¬Í¬Ê±CLONE_SIGHANDÓÖ±»ÇåÁãµÄʱºòÊDz»¿ÉÒԵģ¬ÒòΪͬһÏß³Ì×éÖеÄÇáÁ¿¼¶½ø³Ì±ØÐë¹²ÏíÐźÅ
CLONE_SIGHAND±êÖ¾±»ÉèÖã¬CLONE_VM±»ÇåÁãÒ²²»¿ÉÒÔ£¬ÒòΪ¹²ÏíÐźŴ¦Àí³ÌÐòµÄÇáÁ¿¼¶½ø³ÌÒ²±ØÐë¹²ÏíÄÚ´æÃèÊö·û
        retval = security_task_create(clone_flags);£¯£¯Ö´Ðи½¼ÓµÄ°²È«¼ì²é
        if (retval)
                goto fork_out;
        retval = -ENOMEM;
        p = dup_task_struct(current);£¯£¯Îª×Ó½ø³Ì»ñÈ¡½ø³ÌÃèÊö·û
        if (!p)
      &nb


Ïà¹ØÎĵµ£º

ʵս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 Bluetooth±à³Ì£¨ËÄ£© L2CAP²ã±à³Ì

£¨L2CAPЭÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPЭÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼­Á¬½Ó¿ØÖƺÍÊÊÅäЭÒé (L2CAP) ΪÉϲãЭÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àЭÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãЭÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......

Linux ELFÎļþ×°ÈëÓëÖ´ÐиÅÊö


ELFÊÇlinuxÖÐʹÓÃ×î¹ã·ºµÄÒ»ÖÖÓ¦ÓóÌÐò¸ñʽ£¬ÎªÁËŪÇå³þLinuxÄÚºËÊÇÈçºÎ½²ELFÎļþ¾«È·Ó³Éäµ½Ö¸¶¨ÄÚ´æ¿Õ¼ä£¬ÉÏÖÜÄ©°ÑÄÚºËsys_execve²¿·ÖºÃºÃ¿´ÁËÒ»±é£¬Ð¡½áÈçÏ£º
1. ELF¸ñʽ
ELFÖ¸¶¨Á˽ø³ÌÖÐtext¶Î¡¢bss¶Î¡¢data¶ÎµÈÓ¦¸Ã·ÅÖõ½½ø³ÌÐéÄâÄÚ´æ¿Õ¼äµÄʲôλÖã¬ÒÔ¼°¼Ç¼Á˽ø³ÌÐèÒªÓõ½µÄ¸÷ÖÖ¶¯Ì¬Á´½Ó¿âµÄλÖá£
2. sys_exe ......

°²×°linuxµÄgcc

±¾À´Ïë×°aideµÄ£¬·¢ÏÖÔÚconfigureµÄʱºò¿¨×¡ÁË¡£×Ðϸһ¿´
checking for gcc......no
Ô­À´Õâ¸ölinuxûÓÐ×°gcc¡£Ë­½ÐÎÒÀÁ£¬Ö±½Ó°Ñlinux¿½¹ýÀ´Óá£ÕÒÁ˰ëÌì°²×°¾µÏñÎļþ£¬ÕÒµ½gcc-3.22-5.i386.rpm
¡£ÄǾͿªÊ¼×°°É~
1¡¢¼ì²éÎļþ¹ØÁª
   rpm -ivh *.rpmºó£¬Ò»¶Ñ¹ØÁª³öÀ´ÁË
   ¹Ô¹Ô£¬Ò»¿´£¬Îå¸ö°üÄØ~
......

linux½ø³Ìµ÷¶È·½·¨SCHED_OTHER,SCHED_FIFO,SCHED_RR


linux½ø³Ìµ÷¶È·½·¨(SCHED_OTHER,SCHED_FIFO,SCHED_RR)
linuxÄں˵ÄÈýÖÖµ÷¶È·½·¨£º
1£¬SCHED_OTHER ·Öʱµ÷¶È²ßÂÔ£¬
2£¬SCHED_FIFOʵʱµ÷¶È²ßÂÔ£¬Ïȵ½ÏÈ·þÎñ
3£¬SCHED_RRʵʱµ÷¶È²ßÂÔ£¬Ê±¼äƬÂÖת
linuxÄں˵ÄÈýÖÖµ÷¶È·½·¨£º
1£¬SCHED_OTHER ·Öʱµ÷¶È²ßÂÔ£¬
2£¬SCHED_FIFOʵʱµ÷¶È²ßÂÔ£¬Ïȵ½ÏÈ·þÎñ
3£¬SCHED_RRʵʱ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ