Linux ´®¿ÚÉ豸
ÔÚLinuxÖÐÓÃttySxµÄÐÎʽÀ´±íʾ´®¿ÚÉ豸Ãû£¬Èç COM1±»±íʾΪttyS0£¬COM2±»±íʾΪttyS1£¬ÒÔ´ËÀàÍÆ¡£ÏÂÃæÕâ¸öÃüÁîÏÔʾϵͳÖб»¼ì²âµ½µÄ´®¿Ú£º
# dmesg | grep ttyS
[ 25.942157] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[ 25.942840] 00:08: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
setserial ÃüÁîÓÃÀ´µ÷Õû»ò±¨¸æÓë´®¿ÚÓйصÄÉèÖ㬰üÀ¨´®¿ÚËùʹÓõÄI/O¶Ë¿ÚºÍÖжÏ:
# setserial -g /dev/ttyS[0123]
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: unknown, Port: 0x02f8, IRQ: 3
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3
Ïà¹ØÎĵµ£º
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......
1. Òý ÑÔ
Linux ×î³õÊÇÓÉÈðµäºÕ¶ûÐÁ»ù´óѧµÄѧÉú Linus TorvaldsÔÚ1991 Ä꿪·¢³öÀ´µÄ£¬Ö®ºóÔÚ
GNUµÄÖ§³ÖÏ£¬Linux »ñµÃÁ˾޴óµÄ·¢Õ¹¡£ËäÈ» Linux ÔÚ×ÀÃæ PC »úÉÏµÄÆÕ¼°³Ì¶ÈÔ¶²»¼°Î¢
ÈíµÄ Windows ²Ù×÷ϵͳ£¬µ«ËüµÄ·¢Õ¹ËÙ¶ÈÖ®¿ì¡¢Óû§ÊýÁ¿µÄÈÕÒæÔö¶à£¬Ò²ÊÇ΢ÈíËù²»ÄÜÇá
Êӵġ£¶ø½üЩÄêÀ´ Linux ÔÚǶÈëʽÁìÓòµÄѸÃÍ ......
ÓÑgrep’ËÑË÷Îı¾Îļþ
Èç¹ûÄúÒªÔÚ¼¸¸öÎı¾ÎļþÖвéÕÒÒ»×Ö·û´®£¬¿ÉÒÔʹÓÑgrep’ÃüÁî¡£‘grep’ÔÚÎı¾ÖÐËÑË÷Ö¸¶¨µÄ×Ö·û´®¡£
¼ÙÉèÄúÕýÔÚ‘/usr/src/linux/Documentation’Ŀ¼ÏÂËÑË÷´ø×Ö·û´®‘magic’µÄÎļþ£º
$ grep magic /usr/src/linux/Documentation/ ......
¡¡¡¡1¡¢ ×îÊ×ÏÈÓ¦¸Ã³¢ÊÔstringsÃüÁî,±ÈÈçÄõ½Ò»¸ö½Ðcr1µÄ¶þ½øÖÆÎļþ,¿ÉÒÔ:
¡¡¡¡$ strings cr1 | more
¡¡¡¡ÀïÃæ¿ÉÄÜ»áÓÐһЩ¶ÔÓÚÕâ¸öcr1µÄÃèÊö,ÕâЩÐÅÏ¢
¶¼ÊDZàÒëÖ®ºóÔÚ³ÌÐòÖÐÁôϵÄһЩÎı¾ÐÔµÄ˵Ã÷,ËùÒÔ¿ÉÄÜ»á¸æËßÄãÕâ¸öÎļþÊÇʲô.
¡¡¡¡±ÈÈçÓÐÊä³ö:
¡¡¡¡$ strings cr1 | more
¡¡¡¡%s %s %s%s%s -> %s%s% ......