Linux ÍøÂçϵͳѧϰ IPv6 µÄ³õʼ»¯£¨Ïêϸ¶øÈ«Ã棩
ת×Ô£ºhttp://blog.csdn.net/rstevens/archive/2007/04/10/1559289.aspx
1.
ÍøÂç×Óϵͳ
1.1.
ÍøÂç×Óϵͳ¸ÅÊö
Linux
ÄÚºËÖУ¬ÓëÍøÂçÏà¹ØµÄ´úÂëÊÇÒ»¸öÏà¶Ô¶ÀÁ¢µÄ×Óϵͳ£¬³ÆÎªÍøÂç×Óϵͳ¡£
ÍøÂç×ÓϵͳÊÇÒ»¸ö²ã´Î»¯µÄ½á¹¹£¬¿É·ÖΪÒÔϼ¸¸ö²ã´Î£º
1¡¢
Socket
²ã
Linux
ÔÚ·¢Õ¹¹ý³ÌÖУ¬²ÉÓÃ
BSD socket APIs
×÷Ϊ×Ô¼ºµÄÍøÂçÏà¹ØµÄ
API
½Ó¿Ú¡£Í¬Ê±£¬
Linux
µÄÄ¿±êÓÖÒªÄÜÖ§³Ö¸÷ÖÖ²»Í¬µÄÐÒé×壬¶øÇÒÕâЩÐÒé×å¶¼¿ÉÒÔʹÓÃ
BSD socket APIs
×÷ΪӦÓòãµÄ±à³Ì½Ó¿Ú¡£Òò´Ë£¬ÔÚ
socket APIs
ÓëÐÒé×å²ãÖ®¼ä³éÏó³öÒ»¸ö
socket
²ã£¬ÓÃÓÚ½«
user space
µÄ
socket API
µ÷Óã¬×ª¸ø¾ßÌåµÄÐÒé×å×ö´¦Àí¡£
2¡¢
ÐÒé×å²ã£¨
INET
ÐÒé×å¡¢
INET6
ÐÒé×åµÈ£©
Linux
ÍøÂç×Óϵͳ¹¦ÄÜÉÏÏ൱Í걸£¬Ëü²»½öÖ§³Ö
INET
ÐÒé×壨Ҳ¾ÍÊÇͨ³£Ëù˵µÄ
TCP/IP stack
£©£¬¶øÇÒ»¹Ö§³ÖÆäËüºÜ¶àÖÖÐÒé×壬Èç
DECnet, ROSE, NETBEUI
µÈ¡£
INET6
¾ÍÊÇÒ»ÖÖÐÂÔö¼ÓµÄÐÒé×å¡£
¶ÔÓÚ
INET
¡¢
INET6
ÐÒé×åÀ´Ëµ£¬
ÓÖ½øÒ»²½»®·ÖΪ´«Êä²ãºÍÍøÂç²ã¡£
3¡¢
É豸Çý¶¯²ã
É豸Çý¶¯²ãÔòÖ÷Òª½«ÐÒé×å²ãÓëÎïÀíµÄÍøÂçÉ豸¸ôÀ뿪¡£Ëü²»ÔÚ±¾ÎĵÄÌÖÂÛ·¶Î§Ö®ÄÚ¡£
ÏÂͼÊÇ
Linux
ÍøÂçϵͳ²ã´Î½á¹¹Í¼¡£
1.2.
ÍøÂç×ÓϵͳµÄ³õʼ»¯
·
Socket
²ãµÄ³õʼ»¯£º
Init()->do_basic_setup()->sock_init()
Sock_init()
£º¶Ô
sock
ºÍ
skbuff
½á¹¹½øÐÐ
SLAB
ÄÚ´æµÄ³õʼ»¯¹¤×÷
·
¸÷ÖÖÍøÂçÐÒé×åµÄ³õʼ»¯£º
Do_initcalls()
£º
¶ÔÓÚ±àÒëµ½ÄÚºËÖеŦÄÜÄ£¿é£¨¶ø²»ÊÇÒÔÄ£¿éµÄÐÎʽ¶¯Ì¬¼ÓÔØ£©£¬ËüµÄ³õʼ»¯º¯Êý»áÔÚÕâ¸öµØ·½±»µ÷Óõ½¡£
ÄÚºËÓ³ÏóÖÐרÃÅÓÐÒ»¸ö³õʼ»¯¶Î£¬ËùÓбàÒëµ½ÄÚºËÖеŦÄÜÄ£¿éµÄ³õʼ»¯º¯Êý¶¼»á¼ÓÈëµ½Õâ¸ö¶ÎÖУ»¶ø
do_initcalls()
¾ÍÊÇ
Ïà¹ØÎĵµ£º
Linux·þÎñÆ÷ËäÈ»Ïà¶ÔÀ´Ëµ±ÈWindwos·þÎñÆ÷ÒªÎȶ¨Ó밲ȫ¡£µ«ÊÇÎȶ¨°²È«µÄLinux·þÎñÆ÷£¬ÈÔÈ»Àë²»¿ªºÏÀíµÄ¼°Ê±µÄά»¤¹¤×÷¡£
¡¡¡¡Ò»¡¢ÈÃÈí¼þ°ü±£³Ö×îеİ汾
¡¡¡¡Linux·þÎñÆ÷µÄÈí¼þ°üÒ²ÈçͬWindwos²Ù×÷ϵͳµÄ²¹¶¡Ò»ÑùÔÚ²»¶ÏµÄÉý¼¶¡£Linux·þÎñÆ÷Èí¼þµÄÉý¼¶Ö÷ÒªÓÐÁ½¸öÄ¿µÄ¡£Ò»ÊÇÔöÇ¿Èí¼þµÄ¹¦ÄÜ£¬¶þÊǽâ¾öһЩÒÑÖªµÄ°²È«Â©¶´¡£Èç ......
§1£®PCI×ÜÏßÌåϵ½á¹¹¸ÅÊö
PCI×ÜÏßÌåϵ½á¹¹ÊÇÒ»ÖÖ²ã´ÎʽµÄ£¨Hierarchical£©Ìåϵ½á¹¹¡£ÔÚÕâÖÖ²ã´ÎʽÌåϵ½á¹¹ÖУ¬PCIÇÅÉ豸ռ¾Ý×ÅÖØÒªµÄµØÎ»£¬Ëû½«¸¸×ÜÏߺÍ×Ó×ÜÏßÁ¬½ÓÔÚÒ»Æð£¬´Ó¶øÊ¹Õû¸öϵͳ¿´ÆðÀ´ÏñÒ»¿Åµ¹ÖõÄÊ÷Ðͽṹ¡£Ê÷µÄ¶¥¶ËÊÇϵͳµÄCPU£¬Ëûͨ¹ýÒ»¸ö½ÏÎªÌØ±ðµÄPCIÇÅÉ豸??Host£¯PCIÇÅÉ豸ºÍ¸ùPCI×ÜÏߣ¨root pci bus ......
1.×î¼òµ¥µÄ°ì·¨ÐÞ¸Ä/etc/rc.d/rc.localÎļþ(Õâ¸ö·½·¨ÊÇÔÚ²»ÐèÒªloginµÄÇé¿öϾÍÄÜ×Ô¶¯ÔËÐеÄ)
2.»¹ÓÐÐ޸IJ»Í¬Óû§µÄÓû§Ä¿Â¼ÏµÄ.bashrcÎļþ¿ÉÒÔʵÏÖµ±¸ÃÓû§µÇ½µÄʱºò×Ô¶¯ÔËÐÐһЩ½Å±¾(¼ÇµÃ/etcÏÂÒ²ÓÐÒ»¸ö.bashrcÎļþ,Ð޸ĺó¿ÉÒÔÈÃÈκÎÓû§µÇ½¶¼×Ô¶¯Ö´ÐÐһЩ½Å±¾µÄ)
3.»¹ÓÐÒ»¸öºÜºÃµÄ·½·¨,×öÒ»¸öÊôÓÚ×Ô¼ºµÄrcÆô¶¯½Å± ......
linuxÖÐtouchÃüÁî²ÎÊý²»³£Óã¬Ò»°ãÔÚʹÓÃmakeµÄʱºò¿ÉÄÜ»áÓõ½£¬ÓÃÀ´ÐÞ¸ÄÎļþʱ¼ä´Á£¬»òÕßн¨Ò»¸ö²»´æÔÚµÄÎļþ,ÒÔÏÂÊÇlinuxÖÐtouchÃüÁî²ÎÊýµÄʹÓ÷½·¨:
¡¡¡¡touch [-acm][-r ref_file(²ÎÕÕÎļþ)|-t time(ʱ¼äÖµ)] file(ÎļþÃû)
¡¡¡¡example:
¡¡¡¡touch file1.txt ¸üÐÂfile1.txtµÄ´æÈ¡ºÍÐÞ¸Äʱ¼ä
¡¡¡¡touch -c file1.tx ......