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

linuxÏÂsocketͨÐÅ֮ͨÐÅÄ£ÐÍ

µ¼¶Á£º
¡¡¡¡1£®Socket¼ò½é
¡¡¡¡SocketÊÇTCP/IPÍøÂçµÄAPI£¬¿ÉÒÔÓÃËüÀ´¿ª·¢ÍøÂçÓ¦ÓóÌÐò£¬SocketÊý¾Ý´«ÊäÊÇÒ»ÖÖÌØÊâµÄI/O£¬SocketÒ²ÊÇÒ»ÖÖÎļþÃèÊö·û
¡¡¡¡2£®SocketµÄ½¨Á¢
¡¡¡¡int socket(int domain£¬ int type£¬ int protocol)
¡¡¡¡º¯Êý·µ»Ø£ºÒ»¸öÕûÐ͵ÄSocketÃèÊö·û£¬¿ÉÒÔÔÚºóÃæµ÷ÓÃËü¡£
¡¡¡¡²ÎÊý˵Ã÷£º
¡¡¡¡int domain£ºÖ¸Ã÷ËùʹÓõÄЭÒé×壬 ͨ³£ÊÇPF_INET£¬ ±íÊ¾ÍøÂç(TCP/IP)ЭÒé×å˵Ã÷ÎÒÃÇÍøÂç³ÌÐòËùÔÚµÄÖ÷»ú²ÉÓõÄͨѶЭ×å(AF_UNIXºÍAF_INETµÈ).
¡¡¡¡AF_UNIX£ºÖ»Äܹ»ÓÃÓÚµ¥Ò»µÄUnixϵͳ½ø³Ì¼äͨÐÅ£¬
¡¡¡¡AF_INET£ºÊÇÕë¶ÔInternetµÄ£¬Òò¶ø¿ÉÒÔÔÊÐíÔÚÔ¶³ÌÖ÷»úÖ®¼äͨÐÅ£¨µ±ÎÒÃÇman socketʱ·¢ÏÖdomain¿ÉÑ¡ÏîÊÇ PF_*¶ø²»ÊÇAF_*£¬ÒòΪglibcÊÇposixµÄʵÏÖËùÒÔÓÃPF´úÌæÁËAF£¬²»¹ýÎÒÃǶ¼¿ÉÒÔʹÓõģ©
¡¡¡¡int type£ºÖ¸¶¨socketµÄÀàÐÍ£¬ ͨ³£ÊÇ SOCK_STREAM Á÷ʽSocketÕâÑù»áÌṩ°´Ë³ÐòµÄ£¬¿É¿¿£¬Ë«Ïò£¬ÃæÏòÁ¬½ÓµÄ±ÈÌØÁ÷ºÍSOCK_DGRAMÊý¾Ý±¨Ê½SocketÕâÑùÖ»»áÌṩ¶¨³¤µÄ£¬²»¿É¿¿£¬ÎÞÁ¬½ÓµÄͨÐÅ
¡¡¡¡int prottocol£ºÍ¨³£Îª0 ÓÉÓÚÎÒÃÇÖ¸¶¨ÁËtype£¬ËùÒÔÕâ¸öµØ·½ÎÒÃÇÒ»°ãÖ»ÒªÓÃ0À´´úÌæ¾Í¿ÉÒÔÁË
¡¡¡¡Ó¦ÓÃʾÀý£ºint sockfd = socket(PF_INET£¬ SOCK_STREAM£¬ 0);
¡¡¡¡
¡¡¡¡3£®SocketÅäÖÃ
¡¡¡¡SocketÃèÊö·ûÊÇÒ»¸öÖ¸ÏòÄÚ²¿Êý¾Ý½á¹¹µÄÖ¸Õ룬ËüÖ¸ÏòÃèÊö·û±íÈë¿Ú¡£µ÷ÓÃSocketº¯Êýʱ£¬socketÖ´ÐÐÌ彫½¨Á¢Ò»¸öSocket£¬Êµ¼ÊÉÏ"½¨Á¢Ò»¸öSocket"Òâζ×ÅΪһ¸öSocketÊý¾Ý½á¹¹·ÖÅä´æ´¢¿Õ¼ä¡£SocketÖ´ÐÐÌåΪÄã¹ÜÀíÃèÊö·û±í¡£
¡¡¡¡Á½¸öÍøÂç³ÌÐòÖ®¼äµÄÒ»¸öÍøÂçÁ¬½Ó°üÀ¨ÎåÖÖÐÅÏ¢£ºÍ¨ÐÅЭÒé¡¢±¾µØÐ­Ò鵨ַ¡¢±¾µØÖ÷»ú¶Ë¿Ú¡¢Ô¶¶ËÖ÷»úµØÖ·ºÍÔ¶¶ËЭÒé¶Ë¿Ú¡£SocketÊý¾Ý½á¹¹Öаüº¬ÕâÎåÖÖÐÅÏ¢¡£
¡¡¡¡Í¨¹ýsocketµ÷Ó÷µ»ØÒ»¸ösocketÃèÊö·ûºó£¬ÔÚʹÓÃsocket½øÐÐÍøÂç´«ÊäÒÔǰ£¬±ØÐëÅäÖøÃsocket£º
¡¡¡¡1) ÃæÏòÁ¬½ÓµÄsocket¿Í»§¶Ëͨ¹ýµ÷ÓÃConnectº¯ÊýÔÚsocketÊý¾Ý½á¹¹Öб£´æ±¾µØºÍÔ¶¶ËÐÅÏ¢¡£
¡¡¡¡2) ÎÞÁ¬½ÓsocketµÄ¿Í»§¶ËºÍ·þÎñ¶ËÒÔ¼°ÃæÏòÁ¬½ÓsocketµÄ·þÎñ¶Ëͨ¹ýµ÷ÓÃbindº¯ÊýÀ´ÅäÖñ¾µØÐÅÏ¢¡£
¡¡¡¡
¡¡¡¡4£®Bind£¨£©
¡¡¡¡Bindº¯Êý½«socketÓë±¾»úÉϵÄÒ»¸ö¶Ë¿ÚÏà¹ØÁª£¬ËæºóÄã¾Í¿ÉÒÔÔڸö˿ڼàÌý·þÎñÇëÇó¡£
¡¡¡¡º¯ÊýÔ­ÐÍ£ºint bind(int sockfd£¬ struct sockaddr *my_addr£¬ int addrlen);
¡¡¡¡º¯Êý·µ»Ø£º³É¹¦±»µ÷ÓÃʱ·µ»Ø0£»³öÏÖ´íÎóʱ·µ»Ø"-1"²¢½«errnoÖÃΪÏàÓ¦µÄ´íÎóºÅ¡£
¡¡¡¡²ÎÊý˵Ã÷£º
¡¡¡¡Sockfd£ºÊǵ÷ÓÃsocketº¯Êý·µ»ØµÄsocketÃèÊö·û£¬


Ïà¹ØÎĵµ£º

Linux °²×°mysql

 
1¡¢¶þ½øÖÆÎļþ£¨tar.gz£©°²×°
ÏÈ´´½¨Óû§ºÍÓû§×é
 su - root
groupadd mysql
useradd -g mysql mysql
½âѹ¶þ½øÖÆÎļþ¡£
gunzip -c filename | tar -xf -
¸´ÖÆÄ¿Â¼/home/mysqlµ½/usr/local£»
´´½¨mysqlÐí¿É±í£º
linux:/usr/local/mysql #scripts/mysql_install_db --user=mysql
ÉèÖöþ½øÖÆËùÓÐȨ£¬Ê ......

±¾ÎĽ²ÊöÁËLinuxÃüÁîÐÐÐÞ¸ÄIP¡¢Íø¹Ø¡¢DNSµÄ·½·¨

·½Ê½Ò»£º
ifconfig eth0 192.168.1.18 netmask 255.255.255.0
˵Ã÷£º¸ÃÖÖ·½Ê½¿ÉÒÔʹ¸Ä±ä¼´Ê±ÉúЧ£¬ÖØÆôºó»á»Ö¸´ÎªÔ­À´µÄIP
·½Ê½¶þ£º
vi /etc/sysconfig/network-scripts/ifcfg-eth0
˵Ã÷£º¸Ã·½Ê½ÒªÖØÆôºóÉúЧ£¬ÇÒÊÇÓÀ¾ÃµÄ
Èç¹ûÒªÁ¢¼´¸ü¸ÄÇÒÓÀ¾ÃÉúЧ£¬¾ÍÖ»ÄÜÒÔÉÏÁ½ÖÖ·½Ê½Í¬Ê±Ê¹ÓÃÁË¡£
ÒÔÉÏÊÇͨ¹ýlinuxÃüÁîÐÐÐÞ¸ÄIPµÄ· ......

Oracle Linux Æð動¤ÈÍ£Ö¹¤Î×Ô動»¯

¤½¤ÎËû¤Î¥ª¥Ú¥ìー¥Æ¥£¥ó¥°?¥·¥¹¥Æ¥à¤Ë¤ª¤±¤ë¥Çー¥¿¥Ùー¥¹¤ÎÆð動¤ÈÍ£Ö¹¤Î×Ô動»¯
dbstart¤ª¤è¤Ódbshut¥¹¥¯¥ê¥×¥È¤òʹÓ䷤ƥÇー¥¿¥Ùー¥¹¤ÎÆð動¤ÈÍ£Ö¹¤ò×Ô動»¯¤¹¤ë¤Ë¤Ï¡¢´Î¤ÎÊÖ順¤ò実ÐФ·¤Þ¤¹¡£
root¥æー¥¶ー¤Ç¥í¥°¥¤¥ó¤·¤Þ¤¹¡£
¥×¥é¥Ã¥È¥Õ ......

LinuxϵͳÓëÍøÂç·þÎñ¹ÜÀí¼¼Êõ


±¾ÎÄÑ¡×Ô¡¶LinuxϵͳÓëÍøÂç·þÎñ¹ÜÀí¼¼Êõ´óÈ«£¨µÚ2°æ£©¡·Ò»Êé
µÚ2°æ ǰÑÔ      LinuxÊÇÒ»¸öÓÅÐãµÄ¡¢ÈÕÒæ³ÉÊìµÄ²Ù×÷ϵͳ£¬¾­¹ýÊ®¼¸ÄêµÄ·¢Õ¹£¬ÒѾ­ÓµÓÐÁË´óÁ¿µÄÓû§¡£ÎªÁËÂú×ãÖÚ¶àLinux³õѧÕß¡¢°®ºÃÕß¼°×¨ÒµÈËÔ±µÄʹÓÃÐèÒª£¬±ÊÕßÔÚ¶àÄê´ÓÊÂLinuxÑо¿¡¢½Ìѧ¼°¿ª·¢¹¤×÷µÄ»ù´¡ÉϾ ......

linuxϵÄdeamon½ø³Ì

Éè¼ÆÒ»¸ölinuxϵÄdeamon½ø³Ì£¬¹Ø¼üÖ»Óм¸¸ö£º
1.forkÁ½´Î¡£
2.forkµÚÒ»´ÎºÍµÚ¶þ´ÎÖ®¼ä³ÉΪ½ø³Ì×éÍ·¡£
3.¸Ä±ä¹¤×÷Ŀ¼¡£
4.ºöÂÔÐźš£
5.ÉèÖöÁдÑÚÂë¡£
Ò»ÏÂÊÇÒ»¸ö´ÓÍøÂçËѼ¯µ½µÄÀý³Ì£¬·Ç³£ºÃµÄÑÝʾÁËÉÏÊöÒªµã£¬´æ´Ë±¸Íü¡£
#include
#include
#include
#include
void main(int argc, char ** argv)
{
tim ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ