linux socket±à³ÌÒ»°ãģʽ
1£ºËùÐèÍ·Îļþ£º<systypes.h>£¨Êý¾ÝÀàÐͶ¨Ò壩 < sys/socket.h>£¨Ìṩsocketº¯ÊýºÍÊý¾Ý½á¹¹£©
<netinet/in.h>£¨¶¨ÒåÊý¾Ý½á¹¹sockaddr_in£© <netdb.h>£¨Ìṩ»ñÈ¡ÓòÃû»òIPµÄº¯Êý£©
<arpa/inet.h>£¨ÌṩIPµØַת»»º¯Êý£© <sys/select.h> (Ìṩselectº¯Êý¼¯Ïà¹ØÊý¾Ý½á¹¹µÄ)
2£º±àд¿Í»§¶Ë³ÌÐò
int sock_fd, recvbytes;
¡¡ char buf[MAXDATASIZE]; //½ÓÊܵÄÊý¾Ý´æ·ÅµÄλÖÃ
¡¡ struct hostent *host;
¡¡ struct sockaddr_in serv_addr
if((host=gethostbyname(argv[1]))==NULL)
{
herror("gethostbyname³ö´í£¡");
exit(1);
}
¡¡ if ((sock_fd = socket(AF_INET, SOCK_STREAM, 0)) == -1)
{
perror("socket´´½¨³ö´í£¡");
exit(1);
}
serv_addr.sin_family=AF_INET;
¡¡ serv_addr.sin_port=htons(SERVPORT);
¡¡ serv_addr.sin_addr = *((struct in_addr *)host->h_addr);
¡¡ bzero(&(serv_addr.sin_zero),8);
¡¡ if (connect(sock_fd, (struct sockaddr *)&serv_addr, \
¡¡¡¡ sizeof(struct sockaddr)) == -1) {
perror("connect³ö´í£¡");
exit(1);
}
¡¡ if ((recvbytes=recv(sock_fd, buf, MAXDATASIZE, 0)) ==-1) {
perror("recv³ö´í£¡");
exit(1);
}
¡¡ buf[recvbytes] = '\0';
¡¡ printf("Received: %s",buf);
¡¡ close(sock_fd);
}
int sock_fd,client_fd; /*sock_fd£º¼àÌýsocket£»client_fd£ºÊý¾Ý´«Êäsocket */
¡¡ struct sockaddr_in my_addr; /* ±¾»úµØÖ·ÐÅÏ¢ */
¡¡ struct sockaddr_in remote_addr; /*
Ïà¹ØÎĵµ£º
2.2 ¹¹½¨ARM Linux½»²æ±àÒ빤¾ßÁ´
¹¹½¨½»²æ±àÒëÆ÷µÄµÚÒ»¸ö²½Öè¾ÍÊÇÈ·¶¨Ä¿±êƽ̨¡£ÔÚGNUϵͳÖУ¬Ã¿¸öÄ¿±êƽ̨¶¼ÓÐÒ»¸öÃ÷È·µÄ¸ñʽ£¬ÕâЩÐÅÏ¢ÓÃÓÚÔÚ¹¹½¨¹ý³ÌÖÐʶ±ðҪʹÓõIJ»Í¬¹¤¾ßµÄÕýÈ·°æ±¾¡£Òò´Ë£¬µ±ÔÚÒ»¸öÌض¨Ä¿±ê»úÏÂÔËÐÐGCCʱ£¬GCC±ãÔÚĿ¼·¾¶ÖвéÕÒ°üº¬¸ÃÄ¿±ê¹æ·¶µÄÓ¦ÓóÌÐò·¾¶¡£GNUµÄÄ¿±ê¹æ·¶¸ñʽΪCPU-PLATF ......
ÔõÑù´´½¨ÕæÕýºÜСµÄLinuxϵÄELF¿ÉÖ´ÐÐÎļþ
תÔØ: ELFÎļþ¸ñʽÑо¿
ÈÕÆÚ: Friday, July 25 @ 14:46:16 CST
Ö÷Ì⣺ Èí¼þ¿ª·¢
·¢ÐÅÈË: someone (++), ÐÅÇø: Linux
±ê Ìâ: ÔõÑù´´½¨ÕæÕýºÜСµÄLinuxϵÄELF¿ÉÖ´ÐÐÎļþ
·¢ÐÅÕ¾: ......
ÔÚlinuxµÄÈÕ³£·þÎñÆ÷ά»¤Õ¾µãά»¤ÖУ¬¾³£ÐèÒªÅúÁ¿²Ù×÷Ò»²¿·ÖÎļþ£¬±ÈÈçÊý¾Ý¿âÓû§µÄ×ÊÁϱä¸ü£¬ÄÇôËùÒÔÏà¹ØÕ¾µãµÄÊý¾Ý¿âÅäÖÃÎļþÒªÏàÓ¦µÄÐ޸ġ£´ó¼Ò¶¼ÖªµÀ£¬linuxÏÂÃ漸ºõËùÓеÄÅäÖÃÎļþ¶¼ÊÇ´¿´âµÄÎı¾Îļþ£¬ËùÒÔÕâÆäʵ¾ÍÊÇÒ»¸ö»ù±¾µÄÎı¾²Ù×÷¡£Ò»Ì¨·þÎñÆ÷ÉÏÓÐÉÏ°Ù¸öÉõÖÁÉÏǧ¸öµÄÍøÕ¾¡£Èç¹ûÎÒÃÇÒ»¸ö¸öÀ´Ð޸IJ»ÊDz»¿ÉÒÔ£¬µ« ......
etc/profile:´ËÎļþΪϵͳµÄÿ¸öÓû§ÉèÖû·¾³ÐÅÏ¢,µ±Óû§µÚÒ»´ÎµÇ¼ʱ,¸ÃÎļþ±»Ö´ÐÐ.
²¢´Ó/etc/profile.dĿ¼µÄÅäÖÃÎļþÖÐËѼ¯shellµÄÉèÖÃ.
/etc/bashrc:Ϊÿһ¸öÔËÐÐbash shellµÄÓû§Ö´ÐдËÎļþ.µ±bash shell±»´ò¿ªÊ±,¸ÃÎļþ±»¶ÁÈ¡.
~/.bash_profile:ÿ¸öÓû§¶¼¿ÉʹÓøÃÎļþÊäÈëרÓÃÓÚ×Ô¼ºÊ¹ÓõÄshellÐÅÏ¢,µ±Óû§µÇ¼ʱ ......
ÉîÈë·ÖÎö Linux ÄÚºËÁ´±í
¼¶±ð£º ³õ¼¶
ÑîɳÖÞ (pubb@163.net)¹ú·À¿Æ¼¼´óѧ¼ÆËã»úѧԺ
2004 Äê 8 ÔÂ 01 ÈÕ
±¾ÎÄÏêϸ·ÖÎöÁË 2.6.x ÄÚºËÖÐÁ´±í½á¹¹µÄʵÏÖ£¬²¢Í¨¹ýʵÀý¶Ôÿ¸öÁ´±í²Ù×÷½Ó¿Ú½øÐÐÁËÏ꾡µÄ½²½â¡£
Ò»¡¢ Á´±íÊý¾Ý½á¹¹¼ò½é
Á´±íÊÇÒ»ÖÖ³£ÓõÄ×éÖ¯ÓÐÐòÊý¾ÝµÄÊý¾Ý½á¹¹£¬Ëüͨ¹ýÖ¸Õ뽫һϵÁÐÊý¾Ý½Úµ ......