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

LinuxÏ´®¿Ú±à³ÌÖ®¶þ£º¶Á´®¿ÚºÍд´®¿Ú

1£¬´ò¿ª´®¿Ú
      /**´ò¿ª´®¿Ú£¬dev ´®¿ÚÉ豸Ãû£¬ mode ´ò¿ª·½Ê½£¬**/
     int opendev(char *dev,mode_t mode)
    {
          int fd;
          fd = open(dev, mode);
          if (-1 == fd){   
                perror("Can't Open Serial Port");
                return -1; 
          }
          else{
                 fcntl(fd, F_SETFL, FNDELAY);
                 return fd;
          }
     }
2£¬Ð´´®¿Ú
    #define FALSE  -1
    #define TRUE   0
    #define NET_PORT 19988
    #define MAX_BUF_SIZE 4096
    struct net2net_buf{
           int len;
           char buf[MAX_BUF_SIZE];
     };
     #define RSDEV_NAME "/dev/ttyS1"
     int main(void)
     {
            int rsfd = 0;
            int nwrite;
            char input_buf[64];
            rsfd = opendev(RSDEV_NAME,O_RDWR | O_NOCTTY |


Ïà¹ØÎĵµ£º

LinuxµÄ´óÔıø






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
A:link { so-language: zxx }
-->
        Ëùν“Ôıø”¾ÍÊǼìÔIJ¿¶ÓµÄÒâ˼¡£
Linux
´ó¾ü£¨·¢Ðа棩¿Éν“É¢±øÓÎÓ”£¬Ì¸ºÎ´óÔıø£¿´ËÑÔ²îÒÓ¡£
 
   ......

Linux ÄÚºËWorkQueueÔĶÁ±Ê¼Ç


1.            Workqueue
WorkqueueµÄÃû×־ͺÍËûµÄ¹¦ÄÜÒ»Ñù£ºÐèÒª´¦ÀíµÄ¹¤×÷ÁбíºÍ¹¤×÷µÄÌí¼Óɾ³ý£¨Ã²ËÆÃ»Óп´µ½ÈçºÎɾ³ýµÄ£©¡¢ÒÔ¼°¹¤×÷µÄµ÷¶ÈÖ´ÐС£
ÐèÒª´¦ÀíµÄ¹¤×÷Áбíͨ³£¶¼Î¬»¤ÔÚÄں˶ÔÏóworkqueue_structÀïÃæ¡£ÏµÍ³ÀïÃæ¿ÉÒÔÓжà¸öworkqueue_struct¡£ ......

LinuxÖÐselectº¯Êýѧϰ¼°ÊµÀý±Ê¼Ç

UnixÖеĺ¯ÊýselectºÍpollÓÃÀ´£¬Ö§³ÖUnixÖÐI/O¸´ÓõŦÄÜ£¬ÔÚUnixÖÐI/OÄ£ÐÍ¿ÉÒÔ·ÖΪÒÔÒ»¼¸ÖÖ£º
£¨1£©×èÈûI/O
£¨2£©·Ç×èÈûI/O
£¨3£©I/O¸´Óã¨selectºÍpoll£©
£¨4£©ÐźÅÇý¶¯I/O(SIGIO)
£¨5£©Òì²½I/O
   ÆäÖУ¬ÏÖÔڱȽÏÁ÷ÐеÄI/OÄ£ÐÍÊÇ×èÈûI/OÄ£ÐÍ.×èÈûI/OÊǵ±Ó¦ÓóÌÐòºÍÄں˽»»»Êý¾Ýʱ£¬ÓÉÓÚÄں˻¹Ã»ÓÐ×¼±¸ºÃ ......

³É¹¦ÊµÏÖLinuxÏÂpppdͨ¹ýGPRS²¦ºÅÉÏÍø

³É¹¦ÊµÏÖLinuxÏÂpppdͨ¹ýGPRS²¦ºÅÉÏÍø


×ò
Ìì°Ñ¿ª·¢°åµÄbootloaderɾÁË,û°ì·¨,Ö»µÃÔÚPCÉϵ÷GPRS²¦ºÅÁË.ÏÈÔÚwindowsϲ¦ºÅ³É¹¦,È»ºóÓù¤¾ß¿´²¦ºÅʱ¾ßÌåʹÓÃÁËÄÄЩATÃü
Áî,ÔÙʹÓÃÕâЩÃüÁîµ½linuxÏÂʹÓÃpppdÀ´²¦ºÅ,×îºóÖÕÓڳɹ¦ÁË,֮ǰ¿ª·¢°åÉϲ»Äܳɹ¦²¦ºÅ¼«ÓпɾÍÊÇATÖ¸ÁîÓÐÎ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ