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

LinuxÍøÂç´úÂëµ¼¶Áv0.2

1 Ç°ÑÔ
Ðí¶àÈËÔÚ·ÖÎölinux´úÂëʱ¶ÔÍøÂ粿·Ö£¨Ö÷ÒªÊÇsrc/linux/net£¬src/linux/include/net¼°src/linux/include/linuxĿ¼ÏµÄÎļþ£©±È½Ï¸ÐÐËȤ£¬È·Êµ£¬¾¡¹ÜÒѾ­´ÓÊé±¾ÉÏѧµ½ÁË´óÁ¿µÄTCP/IPÔ­Àí£¬²»¶ÁÔ´ÂëµÄ»°£¬Í·ÄÔÖл¹Êǽ¨Á¢²»Æð¾ßÌåµÄÓ¡Ï󡣶ø·ÖÎöÕⲿ·Ö´úÂëµÄÒ»¸öÎÊÌâ±ãÊÇ´úÂëÖÚ¶à¶ø×ÊÁϺÜÉÙ¡£ÕâƪÎÄÕµÄÄ¿µÄ¾ÍÊǹ´ÀÕ³öÒ»¸ö¿ò¼Ü£¬ÈöÁÕßÄܹ»´óÖÂÄܹ»Á˽âTCP/IP¾¿¾¹ÊÇÔõô¹¤×÷µÄ¡£ÒÔÇ°¼ûµ½µÄÐí¶à´úÂë·ÖÎö¶¼ÊÇ»ùÓÚ2.0Äں˵ģ¬ÔÚеÄÄÚºËÖÐÐí¶àº¯Êý±äÁËÃû×Ö£¬ÕâÓÈÆä¸ø³õѧÕß´øÀ´ÁËÀ§ÄÑ£¬±¾ÎÄÊÇÒÔ2.4.0-test9µÄ´úÂë×÷Àý×Ó£¬ÕâÑù¶ÔÕÕ´úÂëʱ¿ÉÄܸüÇåÎúЩ¡£
ÆäʵÍøÂ粿·ÖµÄ´úÂëÎÒÖ»¶Ô·À»ðǽ²¿·ÖÒ»ÐÐÐÐ×Ðϸ·ÖÎö¹ý£¬ÆäËûÐí¶àµØ·½Ò²Ö»ÊÇÒ»Öª°ë½â£¬Èç¹ûÀí½âÓÐÎ󣬻¶Ó­Ö¸Õý¡£
½¨ÒéÔÚ¿´±¾ÎĵÄͬʱ£¬ÓÃsource insight(www.soucedyn.com)½¨Á¢Ò»¸öÏîÄ¿£¬Í¬Ê±¿´´úÂ룬ÕâÑù¿ÉÄÜЧ¹û¸üºÃµã¡£ÎÒÒ²ÓùýÆäËûµÄһЩ¹¤¾ß£¬µ«ÔÚ·ÖÎö´óÁ¿µÄ´úÂëµÄʱºò£¬Ã»ÓÐÒ»¸ö¹¤¾ß±ÈËü¸ü·½±ãµÄÁË¡£
2 ÕýÎÄ
ISOµÄÆß²ãÄ£ÐͶ¼·Ç³£ÊìϤÁË£¬µ±È»£¬¶ÔÓÚinternet,ÓÃËIJãÄ£Ð͸üΪÊʺϡ£ÔÚÕâÁ½·ÝÄ£ÐÍÀÍøÂçЭÒéÒÔ²ã´ÎµÄÐÎʽ³öÏÖ¡£¶øLINUXµÄÄں˴úÂëÖУ¬Ñϸñ·Ö³öÇå³þµÄ²ã´ÎÈ´±È½ÏÀ§ÄÑ£¬ÒòΪ³ýÁËһЩ"ÄÚºËÏß³Ì(kernel threadÍâ)"£¬Õû¸öÄÚºËÆäʵÊǸöµ¥Ò»µÄ½ø³Ì¡£Òò´ËËùν"ÍøÂç²ã",Ö»ÊÇÒ»×éÏà¹ØµÄº¯Êý£¬¶ø¸÷²ãÖ®¼ä´ó¶àͨ¹ýÒ»°ãµÄº¯Êýµ÷Óõķ½Ê½Íê³É½»»¥¡£
¶ø´ÓÂß¼­ÉÏ£¬ÍøÂ粿·ÖµÄ´úÂë¸üÓ¦¸ÃÕâÑù·Ö²ã¸üΪºÏÀí£º
.BSD socket²ã£ºÕâÒ»²¿·Ö´¦ÀíBSD socketÏà¹Ø²Ù×÷£¬Ã¿¸ösocketÔÚÄÚºËÖÐÒÔstruct socket½á¹¹ÌåÏÖ¡£
ÕâÒ»²¿·ÖµÄÎļþÖ÷ÒªÓУº/net/socket.c /net/protocols.c etc
.INET socket²ã£ºBSD socketÊǸö¿ÉÒÔÓÃÓÚ¸÷ÖÖÍøÂçЭÒéµÄ½Ó¿Ú£¬¶øµ±ÓÃÓÚtcp/ip£¬¼´½¨Á¢ÁËAF_INETÐÎʽµÄsocketʱ£¬»¹ÐèÒª±£ÁôЩ¶îÍâµÄ²ÎÊý£¬ÓÚÊǾÍÓÐÁËstruct sock½á¹¹¡£
ÎļþÖ÷ÒªÓУº/net/ipv4/protocol.c /net/ipv4/af_inet.c /net/core/sock.c etc
.TCP/UDP²ã£º´¦Àí´«Êä²ãµÄ²Ù×÷£¬´«Êä²ãÓÃstruct inet_protocolºÍstruct protoÁ½¸ö½á¹¹±íʾ¡£
ÎļþÖ÷ÒªÓУº/net/ipv4/udp.c /net/ipv4/datagram.c /net/ipv4/tcp.c /net/ipv4/tcp_input.c
/net/ipv4//tcp_output.c /net/ipv4/tcp_minisocks.c /net/ipv4/tcp_output.c
/net/ipv4/tcp_timer.c etc
.IP²ã£º´¦ÀíÍøÂç²ãµÄ²Ù×÷£¬ÍøÂç²ãÓÃstruct packet_type½á¹¹±íʾ¡£
ÎļþÖ÷ÒªÓУº/net/ipv4/ip_forward.c ip_fragment.c ip_input.c ip_output.c etc.
.Êý¾ÝÁ´Â·²ãºÍÇý¶¯³ÌÐ


Ïà¹ØÎĵµ£º

Linuxϳ£ÓÃѹËõ¸ñʽµÄѹËõÓë½âѹ·½·¨

Linuxϳ£ÓÃѹËõ¸ñʽµÄѹËõÓë½âѹ·½·¨
---------------------------------------------
.tar
´ò°ü£ºtar cvf *.tar *.*(Ô­Îļþ»òĿ¼)
½â°ü£ºtar xvf *.tar
---------------------------------------------
.gz
½âѹ1£ºgunzip *.gz
½âѹ2£ºgzip -d *.gz
ѹËõ£ºgzip *.*(Ô­Îļþ»òĿ¼)
--------------------------- ......

linuxϵ÷ÊÔÈëÃÅÖ®ÔÝÍ£µÄʹÓÃ

 ×î½üͨ¶ÁÁËÒ»ÏÂÈí¼þµ÷ÊÔµÄÒÕÊõ£¨The art of debugging with gdb,ddd,eclipse£©£¬×ÜÌåÀ´ËµÊÇÒ»°ãÈëÃż¶µÄµ÷ÊÔÓÃÊé¡£ÎÒ¸öÈ˸оõ¶Ô³õѧgdbµÄÓÐÒ»¶¨µÄ×÷Óã¬ÓÐÀ¢ÓÚÌâÄ¿art¡£ÎÒ¼òµ¥µÄ×ö¸ö×ܽᣬ¹©ÈëÃŲο¼¡£Ö÷Òª½²ÁËgdbµÄ³£ÓÃÃüÁîÒÔ¼°³£¼ûbugµÄµ÷ÊÔ¡£
³£ÓÃÃüÁ
1. ÔÝÍ£»úÖÆ
    a.¶ÏµãµÄʹÓÃ
 & ......

Linux busyboxСÎÊÌâµÄ½â¾ö

±àÒë²¢°²×°Busybox 1.15.3µ½L inux2.6.11.1,Æô¶¯ÏµÍ³
½øÈëshell Ìáʾ:  ./ash : can't access tty; job control turned off.
·ÖÎö·¢ÏÖ
 /etc/inittabÎļþÖÐÓÐÒ»ÐÐ:
     ::askfirst:/bin/ash
   ÕâÔÚbusybox 1.2.1ÔËÐÐÕý³£
ÐÞ¸ÄΪ
  tty1::askfirst:/bin/ash
ºóÕý³£. ......

±àÒëlinuxÄÚºËÉú³ÉµÄsystem.mapÎļþÏê½â

ÓÐʱsystem.mapÎļþ¿ÉÒÔ°ïÖúÎÒÃÇÀí½âÄں˱àÒ룬Ëü¼Ç¼ÁËËùÓдúÂëµÄÔËÐеØÖ·¡£
system.mapÄÚÈݸñʽΪ£ºÏßÐÔµØÖ· ÀàÐÍ ·ûºÅ
¾ßÌåÄÚÈÝÈçÏ£º
00100000 A phys_startup_32
c0100000 T startup_32
c0100000 A _text                &nbs ......

ÔÚlinuxÏ£¬ÈçºÎÔÚCÓïÑÔÖÐʹÓÃÕýÔò±í´ïʽ£¨ÕûÀí£©


  Ò»¸öÕýÔò±í´ïʽµÄ½Ì³Ì¿ÉÒԲο´£¨ÀïÃæÓиö²âÊÔÕýÔò±í´ïʽµÄ¹¤¾ß£©
     http://unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm#ad
 
     ÕýÔò±í´ïÊÇÓÃÀ´Æ¥Åä×Ö·û´®µÄºÃ¶«¶«¡£
   
     Èç¹ûÓû§ÊìϤLin ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ