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

linuxÖÐELF¼ÓÔØ¹ý³Ì·ÖÎö

sys_execve
   | - do_execve
|
| - search_binary_handler         
           |- linux_binfmt= elf_format
       |- elf_format-> load_elf_binary
| - elf_entry = load_elf_interp()
          |-   
| if  (BAD_ADDR(elf_entry))
                |     force_sig(SIGSEGV, current);
|     retval =-EINVAL;
 
  
binfmt_elf.c: line 1024
              elf_entry = loc->elf_ex.e_entry;
              if (BAD_ADDR(elf_entry)) {
                     force_sig(SIGSEGV, current);
                     retval = -EINVAL;
                     goto out_free_dentry;
              }
 
ELF¿ÉÐеµµÄÔØÈ룺
 
ÄÚºËÖÐʵ¼ÊÖ´ÐÐ
execv()
»ò
execve()
ϵͳµ÷ÓõijÌÐòÊÇ
do_execve()
£¬Õâ¸öº¯ÊýÏÈ´ò¿ªÄ¿±êÓ³ÏñÎļþ£¬²¢´ÓÄ¿±êÎļþµÄÍ·²¿
(
´ÓµÚÒ»¸ö×Ö½Ú¿ªÊ¼
)
¶ÁÈëÈô¸É
(128)
×Ö½Ú£¬È»ºóµ÷ÓÃÁíÒ»¸öº¯Êý
search_binary_handler()
£¬ÔÚÄÇÀïÃæÈø÷ÖÖ¿ÉÖ´ÐгÌÐòµÄ´¦Àí³ÌÐòǰÀ´ÈÏÁìºÍ´¦Àí¡£ÄÚºËËùÖ§³ÖµÄÿÖÖ¿ÉÖ´ÐгÌÐò¶¼Óиö
struct linux_binfmt
Êý¾Ý½á¹¹£¬Í¨¹ýÏòÄں˵ǼǹÒÈëÒ»¸ö¶ÓÁС£¶ø
search_binary_handler()
£¬ÔòɨÃèÕâ¸ö¶ÓÁУ¬Èø÷¸öÊý¾Ý½á¹¹ËùÌṩµÄ´¦Àí³ÌÐò¡¢¼´¸÷ÖÖÓ³Ïñ¸ñʽ¡¢ÖðһǰÀ´ÈÏÁì¡£Èç¹ûij¸ö¸ñʽµÄ´¦Àí³ÌÐò·¢ÏÖÌØÕ÷Ïà·û¶ø£¬±ãÖ´ÐиøñʽӳÏñµÄ×°ÈëºÍÆô¶¯¡£
ÎÒÃÇ´Ó
ELF
¸ñʽӳÏñµÄ


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨ËÄ£© L2CAP²ã±à³Ì

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

linux ÃüÁî

ÖÚËùÖÜÖª£¬LinuxµÄÎļþȨÏÞÈç:
777;666µÈ£¬ÆäʵֻҪÔÚÏàÓ¦µÄÎļþÉϼÓÉÏUIDµÄȨÏÞ£¬¾Í¿ÉÒÔÓõ½¼ÓȨÏÞÈ˵ÄÉí·ÝÈ¥ÔËÐÐÕâ¸öÎļþ¡£ËùÒÔÎÒÃÇÖ»ÐèÒª½«bash¸´ÖƳöÀ´µ½ÁíÒ»¸öµØ·½£¬
È»ºóÓÃroot¼ÓÉÏUIDȨÏÞ£¬Ö»ÒªÓû§ÔËÐдËShell¾Í¿ÉÒÔÓÃÓÃrootµÄÉí·ÝÀ´Ö´ÐÐÈκÎÎļþÁË¡£
£±.LinuxÏÂÈçºÎÖªµÀij¸ö¶Ë¿ÚÔÚÔËÐÐʲô³ÌÐò

µ±ÎÒÃÇÓ ......

LinuxϵÄʵʱÁ÷ýÌå±à³Ì

 
¼¶±ð£º ³õ¼¶
ФÎÄÅô
(xiaowp@263.net
), ˶ʿÑо¿Éú, ±±¾©Àí¹¤´óѧ¼ÆËã»úϵ
2004 Äê 2 ÔÂ 01 ÈÕ
Á÷
ýÌåÖ¸µÄÊÇÔÚÍøÂçÖÐʹÓÃÁ÷¼¼Êõ´«ÊäµÄÁ¬ÐøÊ±»ùýÌ壬ÆäÌØµãÊÇÔÚ²¥·Åǰ²»ÐèÒªÏÂÔØÕû¸öÎļþ£¬¶øÊDzÉÓñßÏÂÔØ±ß²¥·ÅµÄ·½Ê½£¬ËüÊÇÊÓÆµ»áÒé¡¢IPµç»°µÈÓ¦Óó¡ºÏ
µÄ¼¼Êõ»ù´¡¡£RTPÊǽøÐÐʵʱÁ÷ýÌå´«ÊäµÄ±ê׼ЭÒéº ......

ÈçºÎ³ÉΪһ¸öLinuxϵͳÄں˿ª·¢Õß

¡¡¡¡ÄãÏë³ÉÖªµÀÈçºÎ³ÉΪһ¸öLinuxÄں˿ª·¢Õßô£¿»òÕßÄãµÄÀÏ°å¸æËßÄ㣬“ȥΪÕâ¸öÉ豸дһ¸öLinuxÇý¶¯¡£“ÕâÆªÎĵµµÄÄ¿µÄ£¬¾ÍÊÇͨ¹ýÃèÊöÄãÐèÒª¾­ÀúµÄ¹ý³ÌºÍÌáʾÄãÈçºÎºÍÉçÇøÒ»Æð¹¤×÷£¬À´½Ì¸øÄãΪ´ïµ½ÕâЩĿµÄËùÐèÒªÖªµÀµÄËùÓÐ֪ʶ¡£±¾ÎÄÒ²³¢ÊÔ½âÊÍÉçÇøÎªÊ²Ã´ÕâÑù¹¤×÷µÄһЩԭÒò¡£
¡¡¡¡Äں˼¸ºõÈ«ÊÇÓÃCд³ÉµÄ£¬ÓÐ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ