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

linux´®¿ÚÓ¦Óÿª·¢

linux´®¿ÚÓ¦Óÿª·¢
2009Äê10ÔÂ20ÈÕ ÐÇÆÚ¶þ 14:16
1¡¢´®¿Ú¸ÅÊö
    Óû§³£¼ûµÄÊý¾ÝͨÐŵĻù±¾·½Ê½ÓÐÁ½ÖÖ£º²¢ÐÐͨÐźʹ®ÐÐͨÐÅ¡£
    ´®ÐÐͨÐÅÊǼÆËã»ú³£ÓõĽӿڣ¬È磺RS-232-C½Ó¿Ú¡£¸Ã±ê×¼¹æ¶¨²ÉÓÃÒ»¸öDB25оÒý½ÅÁ¬½ÓÆ÷»òDB9оÒý½ÅÁ¬½ÓÆ÷¡£Ð¾Æ¬ÄÚ²¿³£¾ßÓÐUART¿ØÖÆÆ÷£¬Æä¿É¹¤×÷ÓÚInterrupt(ÖжÏģʽ)»òDMA£¨Ö±½ÓÄÚ´æ·ÃÎÊ£©Ä£Ê½¡£
     UARTµÄ²Ù×÷Ö÷Òª°üÀ¨ÒÔϼ¸¸ö²¿·Ö£º
Êý¾Ý·¢ËÍ£»Êý¾Ý½ÓÊÕ£»²úÉúÖжϣ»²úÉú²¨ÌØÂÊ£»Loopbackģʽ£»ºìÍâģʽ£»×Ô¶¯Á÷¿ØÄ£Ê½¡£
    ´®¿Ú²ÎÊýµÄÅäÖÃÖ÷Òª°üÀ¨£º²¨ÌØÂÊ¡¢Êý¾Ýλ¡¢Í£Ö¹Î»¡¢Á÷¿ØÐ­Òé
    linuxÖеĴ®¿ÚÉ豸Îļþ´æ·ÅÓÚ/devĿ¼Ï£¬ÆäÖд®¿ÚÒ»£¬´®¿Ú¶þ¶ÔÓ¦É豸ÃûÒÀ´ÎΪ“/dev/ttyS0”¡¢“/dev/ttyS1”¡£ÔÚlinuxϲÙ×÷´®¿ÚÓë²Ù×÷ÎļþÏàͬ¡£
2¡¢´®¿ÚÏêϸÅäÖÃ
   ÔÚʹÓô®¿Ú֮ǰ±ØÐëÉèÖÃÏà¹ØÅäÖ㬰üÀ¨£º²¨ÌØÂÊ¡¢Êý¾Ýλ¡¢Ð£Ñéλ¡¢Í£Ö¹Î»µÈ¡£
´®¿ÚÉèÖÃÓÉÏÂÃæ½á¹¹ÌåʵÏÖ£º
Struct termios {
tcflag_t c_iflag; /*input flags */
tcflag_t c_oflag; /*output flags */
tcflag_t c_cflag; /*control flags */
tcflag_t c_lflag; /*local flags */
cc_t   c_cc[NCCS]; /*control characters */
};
    ¸Ã½á¹¹ÖÐc_cflag×îÎªÖØÒª£¬¿ÉÉèÖò¨ÌØÂÊ¡¢Êý¾Ýλ¡¢Ð£Ñéλ¡¢Í£Ö¹Î»¡£ÔÚÉèÖò¨ÌØÂÊʱÐèÔÚÊý×Öǰ¼ÓÉÏ‘B’£¬ÈçB9600»òB19200¡£Ê¹ÓÃÆäÐèͨ¹ý“Ó딓»ò”²Ù×÷·½Ê½¡£
ÊäÈëģʽc_iflag³ÉÔ±¿ØÖƶ˿ڽÓÊն˵Ä×Ö·ûÊäÈë´¦Àí¡£
´®¿Ú¿ØÖƺ¯Êý£º
Tcgetattr                      È¡ÊôÐÔ(termios½á¹¹)
Tcsetattr                    ÉèÖÃÊôÐÔ(termios½á¹¹)
cfgetispeed                  µÃµ½ÊäÈëËÙ¶È
Cfgetospeed                µÃµ½Êä³öËÙ¶È
Cfsetispeed              &nb


Ïà¹ØÎĵµ£º

LinuxÏÂSVN·þÎñÆ÷µÄ°²×°

        Õâ´Îתµ½Á˺½¿ÕµÄÒ»¸öÏîÄ¿£¬ÐèÒªÔÚLinuxÏÂÓÃC×ö¿ª·¢¡£°æ±¾¹ÜÀí²ÉÓÃSVN£¬´Ó×òÌìÏÂÎ翪ʼÎҾͿªÊ¼Á˰²×°£¬ÕæµÄÊÇÍ´¿àµÄ¹ý³Ì¡£ÏÖÔÚµ¹Êǰ²×°ºÃÁË£¬µ«ÊÇÅäÖÃÃüÁûÓÐÕÆÎÕ¡£
        Èç¹ûÓÐȨÏÞ´ÓÍøÉÏÖ±½Ó¸üÐÂÈí¼þ£¬ÎÒ²»±ØÃ¿´Î¶¼È¥ÕÒÔ´Âë°ü£¬È ......

Linux VIÃüÁîʹÓôóÈ«

vi filename :´ò¿ª»òн¨Îļþ£¬²¢½«¹â±êÖÃÓÚµÚÒ»ÐÐÊ×
¡¡¡¡vi +n filename £º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚµÚnÐÐÊ×
¡¡¡¡vi + filename £º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚ×îºóÒ»ÐÐÊ×
¡¡¡¡vi +/pattern filename£º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚµÚÒ»¸öÓëpatternÆ¥ÅäµÄ´®´¦
¡¡¡¡vi -r filename £ºÔÚÉÏ´ÎÕýÓÃvi±à¼­Ê±·¢Éúϵͳ±ÀÀ££¬»Ö¸´filename
......

LinuxÏÂÈçºÎ°ÑIO¿Õ¼äÓ³Éäµ½Óû§½ø³Ì¿Õ¼ä£¿


ÆäʵÊǸöÂù¼òµ¥µÄÎÊÌâ¡£ÔÚLDD3µÄµÚ15ÕÂÉÏÓÐд£¨¼û“Remapping Specific I/O Regions”ÕâÒ»½Ú£©¡£²»¹ýµ±Ê±×÷ÕßÑ¡ÔñÁËÒ»¸ö´íÎóµÄ×ö·¨£ºÏȰÑÕâ¿éIO¿Õ¼äÓÃioremapÓ³Éäµ½ÁËÄں˿ռ䣬ȻºóÔÚÓû§½ø³Ì·ÃÎʱ»Ó³ÉäµÄµØÖ·Ëù²ú ÉúµÄȱҳÖжÏÀÓÃvmalloc_to_pageµÃµ½page£¬·µ»Ø¸øÓû§½ø³Ì¡£
È»¶ø£¬vmalloc_to_pageû·¨Óà ......

ÉîÈëdz³ö LinuxÉ豸Çý¶¯×èÈûÓë·Ç×èÈû (select poll)


×èÈû²Ù×÷ÊÇÖ¸£¬ÔÚÖ´ÐÐÉ豸²Ù×÷ʱ£¬Èô²»ÄÜ»ñµÃ×ÊÔ´£¬Ôò½ø³Ì¹ÒÆðÖ±µ½Âú×ã¿É²Ù×÷µÄÌõ¼þÔÙ½øÐвÙ×÷¡£·Ç×èÈû²Ù×÷µÄ½ø³ÌÔÚ²»ÄܽøÐÐÉ豸²Ù×÷ʱ£¬²¢²»¹ÒÆð¡£±»¹ÒÆðµÄ½ø³Ì½øÈësleep״̬£¬±»´Óµ÷¶ÈÆ÷µÄÔËÐжÓÁÐÒÆ×ߣ¬Ö±µ½µÈ´ýµÄÌõ¼þ±»Âú×ã¡£
ÔÚLinuxÇý¶¯³ÌÐòÖУ¬ÎÒÃÇ¿ÉÒÔʹÓõȴý¶ÓÁУ¨wait queue£©À´ÊµÏÖ×èÈû²Ù×÷¡£wait queueºÜÔ ......

ÉîÈëdz³öLinuxÉ豸Çý¶¯Ö®×èÈûÓë·Ç×èÈû

×¢: ¸ÃϵÁÐÎÄÕÂ×ªÔØ×Ôarm+linux chinaunix²©¿ÍȦȦÖ÷Ö®²©¿Í——http://blog.chinaunix.net/u/22630 /article_54997.html   ΪÁËÊʺÏÎҵıàÒë»·¾³£¬Ô´´úÂëÓи͝£¬µ«ÊÇÏàÐÅÎÒ¸ü¸ÄºóµÄ´úÂë¸ü¼ÓÊʺÏÏÖÔÚ´ó¶àÊý¶ÁÕßµÄpc»·¾³¡£
×èÈû²Ù×÷ÊÇÖ¸£¬ÔÚÖ´ÐÐÉ豸²Ù×÷ʱ£¬Èô²»ÄÜ»ñµÃ×ÊÔ´£¬Ôò½ø³Ì¹ÒÆðÖ±µ½Âú×ã¿É²Ù×÷µ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ