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

linux socketѧϰ±Ê¼Ç£¨µÚ¶þÕ£©


ÓòºÍµØÖ·×å
    ÓÐÒ»¸öºÜÇ¡µ±µÄ±ÈÓ÷˵Ã÷Ì×½Ó¿Ú±à³Ì£¬Ì׽ӿھͺñȵ绰£¬¶øµç»°ÍøÖеĵ绰ºÅÂë¾ÍºÃÏñÌ×½Ó¿ÚµØÖ·¡£ËµÃ÷Ì×½Ó¿Ú¿ÉÒÔÓÃÌØ¶¨µÄµØÖ·À´±êʾ×Ô¼º¡£²¢²»ÊÇËùÓеÄÌ×½Ó¿Ú¶¼ÐèÒªµØÖ·£¬±ÈÈçÎÞÃûÌ׽ӿھͲ»ÐèÒªµØÖ·£¬ÀýÈ纯Êýsocketpair(2)¾ÍÉú³ÉÁËÒ»¶Ô»¥Ïà¿ÉÒÔÁ¬½Óµ«ÊÇȴûÓеØÖ·µÄÌ×½Ó¿Ú¡£ÊéÖбÈÓ÷˵¾ÍºÃÏñÊÇÀäսʱÆÚËÕÁªºÍÃÀ¹úÖ®¼äµÄÈÈÏߵ绰һÑù£¬Ö±½ÓÏàÁ¬£¬²»ÐèÒªµç»°ºÅÂë¡£
    Óò(domain)£¬ÔÚsocketÖУ¬²»½ö¿ÉÒÔÖ§³ÖTCP/IPЭÒ飬Ҳ¿ÉÒÔÖ§³ÖÆäËûЭÒ飬socketÖеIJÎÊýdomainµÄ×÷ÓÃÕýÔÚÓÚ´Ë¡£»Ø¹ËÒ»ÏÂsocketpair(2)º¯ÊýµÄÓï·¨¿ÉÒÔ¿´µ½¡£
    #include <sys/types.h>
    #include <sysy/socket.h>
   
    int socketpair( int domain , int type , int protocol , int sv[2] );
    ÔÚsocketpair(2)º¯ÊýÖУ¬domain²ÎÊýҪôÊÇAF_LOCAL,ҪôÊÇAF_UNIX. ÆäʵËûÃÇÊǵȼ۵ġ£AF_LOCALµÄǰ׺AF±íʾµØÖ·×壨address family£©£¬domain²ÎÊýµÄÓÃ;¾ÍÊÇ˵Ã÷º¯ÊýÊDzÉÓÃÄĸöµØÖ·×å¡£Ö®ºó»¹»á³öÏÖPF_µÄºê£¬ÏÖÔÚ¿ÉÒÔÔÝʱÈÏΪÊǵȼ۵ġ£
    AF_LOCAL±íʾʹÓñ¾µØµØÖ·¹æÔòÀ´Éú³ÉµØÖ·£¬AF_INET±íʾʹÓÃIPµØÖ·¹æÔòÀ´Éú³ÉµØÖ·¡£BSDµÄ½â¾ö·½°¸ÌṩÁËÒ»ÖÖͨÓõĵØÖ·½á¹¹ÈçÏ£º
    #include <sys/socket.h>
   
    struct sockaddr{
        sa_family_t sa_family ;         /* µØÖ·×å */
        char  sa_data[14] ;               /* µØÖ·Êý¾Ý */
    };
    ¶ÔÓÚ±à³ÌÕßÀ´Ëµ£¬Í¨ÓÃÌ×½Ó¿Ú±¾ÉíûÓÐʲôÓô¦£¬µ«ÊÇËüΪÆäËûµØÖ·½á¹¹ÌṩÁËÒ»¸öÖØÒªµÄ²Î¿¼Ä£ÐÍ£¬±ÈÈçËùÓеĵØÖ·¶¼ÒªÔڽṹÖеÄͬÑùλÖö¨Òåsa_family³ÉÔ±£¬ÒòΪËû¾ö¶¨ÁËÔõô·­Òë½á¹¹Öаüº¬µØÖ·ÐÅÏ¢µÄ×Ö½Ú¡£
    Éú³É±¾µØµØÖ·AF_LOCAL»òÕßAF_UNIXµÄµØÖ·µÄ½á¹¹ÃûÊÇsockaddr_un.
    ÔÚLinuxÖУ¬Ê¹ÓÃ×îÆÕ±éµÄµØÖ·×åÊÇAF_INET.¾ßÓÐIPv4Ì×½Ó¿ÚµØÖ·µÄÌ×½Ó¿Ú¿ÉÒÔÓëTCP/IPÉÏµÄÆäËûÖ÷»ú½øÐÐͨÐÅ¡£Ò»ÏÂÊÇCÓïÑÔÃèÊöµÄ½á¹¹sockadd


Ïà¹ØÎĵµ£º

LinuxÇý¶¯¿ª·¢Ñ§Ï°²½Öè

1. ѧ»áд¼òµ¥µÄmakefile
    2. ±àÒ»Ó¦ÓóÌÐò£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
    3. ѧ»áдÇý¶¯µÄmakefile
    4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬ insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö¡£
  &n ......

LinuxϼӹÒÎļþϵͳ

LinuxϼӹÒÎļþϵͳµÄС½á
ѧϰ²Ù×÷ϵͳʱÎÒÃǶ¼Á˽⵽ÎļþϵͳÊDzÙ×÷ϵͳµÄÖØÒª×é³É²¿·ÖÖ®Ò»¡£ÎļþϵͳÓкܶàÖÖÀàÐÍ£¬±È
windowsµÄfat¡¢fat32£»LinuxµÄext¡¢ext2»òext3£»FreeBSDµÄufsµÈµÈ¡£ÔÚʹÓÃLinuxµÄ¹ý³Ì£¬Ò²³£³£Linux
²Ù×÷ϵͳʹÓÃÐéÄâÎļþϵͳVFS£¬Í¨¹ýVFS¿ÉÒÔÖ±½Ó´æÈ¡ÆäËüÒѱ»ÄÚºËÖ§³ÖµÄ¸÷ÖÖÎļþϵͳ£¬ÓÃÆðÀ´¾Í ......

LinuxÏÂÈí¼þ¡¢PHPºÍPerlµÄÄ£¿éµÈ¶¼ÊµÏÖÁË×Ô¶¯°²×°

LinuxÏÂÈí¼þ¡¢PHPºÍPerlµÄÄ£¿éµÈ¶¼ÊµÏÖÁË×Ô¶¯°²×°£¬ÕæµÄºÜ·½±ã£¬±¾Îļòµ¥½éÉÜһϡ£
linuxÏ¿ÉÒÔʹÓÃyum¹¤¾ß£¬RedhatÏÂ×Ô¶¯´øÓУº
yum list php*   //¿ÉÒԲ鿴phpµÄÏà¹ØÄ£¿é
yum install php //°²×°phpÕâ¸öÄ£¿é
phpÄ£¿éµÄ×Ô¶¯°²×°(ÀûÓÃpecl.php.netºÍpear.php.netÔÚÏß°²×°)£º
ÀûÓÃpearºÍpecl¹¤¾ß£¬Ê×ÏÈÐèÒª° ......

linux tcʵÏÖipÁ÷Á¿ÏÞÖÆ

tcÊǸöÅäÖÃLinuxÄÚºËÁ÷Á¿¿ØÖƵŤ¾ß Ãû×Ö tc - ÏÔʾ£¯Î¬»¤Á÷Á¿¿ØÖÆÅäÖà ժҪ tc qdisc [ add | change | replace | link ] dev DEV [ parent qdisc-id | root ] [ handle qdisc-id ] qdisc [ qdisc specific parameters ] tc class [ add | change | replace ] dev DEV parent qdisc-id [ classid class-id ] qd ......

linuxÖÐ×Ö·û´®µÄ´¦Àí

st='abcd'
1.×Ö·û´®³¤¶È
expr length $st »òÕß ${#st}
2.È¡×Ö·û´®µÄsubstring
expr substr "$var" startpos length »òÕß ${var:m} ${var:m:len}
${var:m}ÖеÄmµÄȡֵ´Ó0µ½${#var}-1£¬Æä·µ»ØµÄÊÇ´ÓµÚm¸ö×Ö·ûµ½×îºóµÄ²¿·Ö£»ÀýÈçecho ${st:1}µÄ½á¹ûÊÇ'bcd'
expr substr "$var" startpos length ÖеÄstartposȡֵ·¶Î§ÊÇ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ