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

LinuxÍøÂçÉ豸Çý¶¯½á¹¹¸ÅÊö

ÍøÂçÉ豸Çý¶¯Ïà±È×Ö·ûÐÍÉ豸µÄÇý¶¯Òª¸´ÔÓһЩ£¬³ýÁË×ÜÌåÉÏÇý¶¯µÄ¿ò¼ÜÓÐһЩÏàËÆÍ⣬ÓкܶàµØ·½¶¼ÊDz»Í¬£¬µ«ÍøÂçÉ豸Çý¶¯ÓÐÒ»¸öºÜ´óµÄÌصã¾ÍÊÇÓй̶¨µÄ¿ò¼Ü¿ÉÒÔ×ñÑ­£¬¾ßÌåµÄ¿ò¼Ü»áÔÚºó±ßÏêϸµÄÐðÊö£¬ÕâÀïÖ÷Òª·ÖÎöÍøÂçÉ豸Çý¶¯µÄ½á¹¹£¬ºÍÕû¸ötcp/ipÍøÂç½á¹¹Ò»Ñù£¬Õû¸öÍøÂçÉ豸Çý¶¯Ò²ÊÇÒ»¸ö·Ö²ãµÄ½á¹¹¡£¾ßÌåÈçÏ£º
 
1.ÍøÂçЭÒé½Ó¿Ú²ã
 
ÔÚÍøÂçЭÒé½Ó¿Ú²ã£¬Ö»ÌṩÁËÁ½¸ö³éÏóº¯Êýdev_queue_xmit()Óë netif_rx()£¬Ö®ËùÒÔ³Æ֮Ϊ³éÏóº¯Êý£¬ÊÇÒòΪÕâÁ½¸öº¯Êý³éÏóÁ˺ܶàµ×²ãµÄ²Ù×÷£¬²»¹ÜÊÇÄǸöоƬËüÔÚÍøÂçЭÒé½á¹¹µÄ²Ù×÷º¯Êý¶¼ÊÇÕâÁ½¸öº¯Êý£¬²ÉÓÃÕâÑùµÄ³éÏóºó£¬¸øÉϲã´øÀ´Á˺ܶàµÄ·½±ã£¬¸øÉϲãЭÒéÌṩͳһµÄÊý¾Ý°üÊÕ·¢½Ó¿Ú£¬ÎÞÂÛÉϲãÊÇARPЭÒ黹ÊÇIPЭÒ飬¶¼Í¨¹ýdev_queue_xmit() º¯Êý·¢ËÍÊý¾Ý£¬Í¨¹ýnetif_rx()º¯Êý½ÓÊÕÊý¾Ý¡£´Ë²ãʹÉϲãЭÒé¶ÀÁ¢ÓÚ¾ßÌåµÄÉ豸¡£
Ïà¹ØÊý¾Ý½á¹¹sk_buff£º
sk_buff ³ÆΪ“Ì×½Ó×Ö»º³åÇø”£¬ÓÃÓÚÔÚLinuxÍøÂç×ÓϵͳÖи÷²ãÖ®¼ä´«µÝÊý¾Ý¡£ÊÇLinuxÍøÂç×ÓϵͳÊý¾Ý´«µÝµÄ“ÖÐÊàÉñ¾­”¡£sk_buff¶¨ÒåλÖÃΪ£ºinclude/linux/skbuff.h£¬Õâ¸öÊý¾Ý½á¹¹¶¨ÒåÁ˺ܶàÓÃÓÚÍøÂç²Ù×÷µÄº¯Êý£¬¸ü¶àµÄÉè¼ÆÕû¸öЭÒéµÄʵÏÖ£¬°üÀ¨¸÷²ã±¨ÎĵÄÍ·ÐÅÏ¢£¬ÒÔ¼°±¨ÎĵÄÖ¡¸ñʽ£¬Ï±ßÕâ¸öÕâ¸ö½á¹¹ÌåÊÇÓйر¨ÎÄheaderÐÅÏ¢µÄ£¬Ï±ߵĴúÂëÕª×Ôkernel2.6.29/include/linux /skbuff.h
 
struct sk_buff {
    /* These two members must be first. */
    struct sk_buff        *next;
    struct sk_buff        *prev;
    struct sock        *sk;
    ktime_t            tstamp;
    struct net_device    *dev;
    union {
        struct dst_entry    *dst;
        struct rtable        *rtable;
    };
#ifdef CONFIG_XFRM
    struct &n


Ïà¹ØÎĵµ£º

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

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

linuxÏÂʵʱ¼ì²âÍøÂç´ø¿íµÄС¹¤¾ßbmon

ÔÚlinuxµÄprocÎļþϵͳÖУ¬Í¨¹ý²é¿´/proc/net/devÎļþ
¿ÉÒԵõ½Ã¿¸öÍøÂç½Ó¿ÚµÄÍÌÍÂÁ¿£¬µ«ÊÇÎÞ·¨»ñµÃʵʱ´ø¿í
×î½ü·¢ÏÖÁËÒ»ÖÖ»ùÓÚncurses¿âµÄС³ÌÐòbmon£¬¿ÉÒÔ»ñµÃʵʱ´ø¿í
Example:
Ö´ÐÐ
[root@debian ~]# bmon -o ascii -p eth0
Interface RX Rate RX # TX Rate TX #
eth0 0.00B 0.0 0.00B 0.0
eth0 0.00B 0.0 ......

KERNELRELEASE µÄ¶¨Ò壬Linux $(KERNELRELEASE)

×î½üÓÃÓÑÉÆÖ®±ÛµÄ°å×Ó£¬·¢ÏÖÄں˵ÄÃû³ÆÊÇ£ºLinux-2.6.29.4-FriendlyARM.ºóÃæÄǸöFriendlyARMËÀ»îÈ¥²»µô¡£ºóÀ´Ö»ºÃ¿´´úÂë¡£
1¡¢2.6.29.4Õâ¸ö°æ±¾ºÅÊÇÊÇubootÔÚ×öuimageµÄʱºò¼ÓÉϵģ¬¿´arch/arm/boot/Makefile:
quiet_cmd_uimage = UIMAGE  $@
      cmd_uimage = $(CONFIG_SHELL) $(MKIMA ......

LinuxÏÂcoreÎļþµ÷ÊÔ·½·¨


LinuxÏÂcoreÎļþµ÷ÊÔ·½·¨


ÔÚ³ÌÐò²»Ñ°³£Í˳öʱ£¬Äں˻áÔÚµ±Ç°¹¤×÷Ŀ¼ÏÂÉú³ÉÒ»¸öcoreÎļþ£¨ÊÇÒ»¸öÄÚ´æÓ³Ïñ£¬Í¬Ê±¼ÓÉϵ÷ÊÔÐÅÏ¢£©¡£Ê¹ÓÃgdbÀ´²é¿´coreÎļþ£¬¿ÉÒÔָʾ³öµ¼Ö³ÌÐò³ö´íµÄ´úÂëËùÔÚÎļþºÍÐÐÊý¡£
1.coreÎļþµÄÉú³É¿ª¹ØºÍ´óСÏÞÖÆ
 1£©Ê¹ÓÃul ......

ÉîÈëÀí½âLinuxÄÚºËÖеÄÁ´±í

      ×î½ü£¬¿ªÊ¼ÑжÁÒ»ÏÂLinuxµÄÄں˴úÂ룬¸ÕÒ»¿ªÊ¼£¬¾ÍÓÐÁîÈ˾ªÌ¾µÄ·¢ÏÖ£¬²»µÃ²»¸Ð̾Äں˴úÂëÉè¼ÆµÃÖ®ÃÀ£¡µ¥ÊÇ×î³£ÓõÄÁ´±íÒ²Éè¼ÆµÃ²»µÃ²»ÁîÈËÅå·þ£¡
1.1.Á´±ílist_head
    include/linux/list.h
    ºÜ¾­µä£¬Á´±íÔÚÄÚºËÖкܳ£Óã¬ÀýÈç¹ÜÀí½ø³Ì£¬½ø³ÌµÄ¸÷¸ö× ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ