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; /*
Ïà¹ØÎĵµ£º
vi /etc/sysconfig/i18n
½«ÄÚÈݸÄΪ
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
ÕâÑùÖÐÎÄÔÚSSH,telnetÖն˾ͿÉÒÔÕý³£ÏÔʾÁË¡£
......
ÕâƪÈÕÖ¾»¹ÊÇÏÈ´ÓÒ»¸öÄܹ»ÔËÐÐÆðÀ´µÄÀý×Ó³ö·¢£¬Ò»µ©ÄÜ˳ÀûµÄ¿´µ½³ÌÐòµÄ³É¹¦ÔËÐУ¬ÄÇô½ÓÏÂÀ´µÄʼþÎÒÏëÓ¦¸ÃÊÇÎÊΪʲôÁË£¿ËƺõÕâÑù¸ü¼ÓÈÝÒ×Àí½âºÍÕÆÎÕ¡£
¶ÔÓÚsocket³ÌÐòµÄ¸ÅÄîÕâÀï¾Í²»¶àдÁË£¬µ«ÎÒÏàÐÅ£¬Èç¹ûÄÜ¿´ÍêÕâÕûƪÎÄÕ£¬ÎÒÏàÐŲ»»áÔÙÓÐÕâÑùµÄÒÉÎʵġ£
ÏÂÃ潫±àдһ¸öc/s½á¹¹µÄ³ÌÐò£¬Ö÷Òª¹¦ÄÜÊÇclient½«Ïòserver·¢Ë ......
2.2 ¹¹½¨ARM Linux½»²æ±àÒ빤¾ßÁ´
¹¹½¨½»²æ±àÒëÆ÷µÄµÚÒ»¸ö²½Öè¾ÍÊÇÈ·¶¨Ä¿±êƽ̨¡£ÔÚGNUϵͳÖУ¬Ã¿¸öÄ¿±êƽ̨¶¼ÓÐÒ»¸öÃ÷È·µÄ¸ñʽ£¬ÕâЩÐÅÏ¢ÓÃÓÚÔÚ¹¹½¨¹ý³ÌÖÐʶ±ðҪʹÓõIJ»Í¬¹¤¾ßµÄÕýÈ·°æ±¾¡£Òò´Ë£¬µ±ÔÚÒ»¸öÌض¨Ä¿±ê»úÏÂÔËÐÐGCCʱ£¬GCC±ãÔÚĿ¼·¾¶ÖвéÕÒ°üº¬¸ÃÄ¿±ê¹æ·¶µÄÓ¦ÓóÌÐò·¾¶¡£GNUµÄÄ¿±ê¹æ·¶¸ñʽΪCPU-PLATF ......
ÒòΪ×Ô¼ºµÄɵ£¬ËùÒÔ²ÅÓеĴËƪÈÕÖ¾¡£Ò²ÐíÓÐÈË¿ÉÒÔ·¢ÏÖ£¬ÔÚÎÒ²©¿ÍÉÏÒѾÓÐƪÃûΪ“LFSÅäÖÃIP¼°°²×°OpenSSH”£¬¶øÔÙдÕâƪÈÕ¼ÇÊÇÒòΪ×Ô¼ºÔÚLinuxÏÂʹÓÃÁ˹âÅÌÀïµÄOpenSSH£¬È»ºó×°ÉϺóʹÓÃ×Ô¼ºÓ²ÅÌÉϵÄSSHʱÀÏÊÇÌáʾÒѾռÓ㬽á¹û·´¸´×°Á˺ü¸±é²ÅÒâʶµ½Õâ¸öÎÊÌ⣡~Õâ¾ÍºÃ±ÈÒ»¸öÈËÆïÔÚÂíÉÏÊýÂíµÄÊýÄ¿Ò»Ñù£¬×ÜÊÇÉÙÒ» ......
ÔÚlinuxµÄÈÕ³£·þÎñÆ÷ά»¤Õ¾µãά»¤ÖУ¬¾³£ÐèÒªÅúÁ¿²Ù×÷Ò»²¿·ÖÎļþ£¬±ÈÈçÊý¾Ý¿âÓû§µÄ×ÊÁϱä¸ü£¬ÄÇôËùÒÔÏà¹ØÕ¾µãµÄÊý¾Ý¿âÅäÖÃÎļþÒªÏàÓ¦µÄÐ޸ġ£´ó¼Ò¶¼ÖªµÀ£¬linuxÏÂÃ漸ºõËùÓеÄÅäÖÃÎļþ¶¼ÊÇ´¿´âµÄÎı¾Îļþ£¬ËùÒÔÕâÆäʵ¾ÍÊÇÒ»¸ö»ù±¾µÄÎı¾²Ù×÷¡£Ò»Ì¨·þÎñÆ÷ÉÏÓÐÉÏ°Ù¸öÉõÖÁÉÏǧ¸öµÄÍøÕ¾¡£Èç¹ûÎÒÃÇÒ»¸ö¸öÀ´Ð޸IJ»ÊDz»¿ÉÒÔ£¬µ« ......