Linux ÐéÄâÊó±ê£¬¼üÅÌ Ö®Ò»¡£
Linux ÓÐ×Ô¼ºµÄ input ×Óϵͳ£¬¿ÉÒÔͳһ¹ÜÀíÊó±êºÍ¼üÅÌʼþ¡£
»ùÓÚÊäÈë×Óϵͳ ʵÏÖµÄ uinput ¿ÉÒÔ·½±ãµÄÔÚÓû§¿Õ¼äÄ£ÄâÊó±êºÍ¼üÅÌʼþ¡£
µ±È»£¬Ò²¿ÉÒÔ×Ô¼ºÔìÂÖ×Ó£¬ ×öÒ»¸ö×Ö·ûÉ豸½ÓÊÕÓû§ÊäÈ룬¸ù¾ÝÊäÈ룬ͶµÝ input ʼþ¡£
»¹ÓÐÒ»ÖÖ·½Ê½¾ÍÊÇÖ±½Ó Íù evnent ÀïдÈëÊý¾Ý£¬ ¶¼¿ÉÒÔ´ïµ½¿ØÖÆÊó±ê¼üÅ̵ŦÄÜ¡£
±¾ÆªÎÄÕ¾ÍÊÇÑÝʾֱ½ÓдÈë event µÄ·½·¨¡£
linux/input.hÖÐÓж¨Ò壬Õâ¸öÎļþ»¹¶¨ÒåÁ˱ê×¼°´¼üµÄ±àÂëµÈ
struct input_event {
struct timeval time; //°´¼üʱ¼ä
__u16 type; //ÀàÐÍ£¬ÔÚÏÂÃæÓж¨Òå
__u16 code; //ҪģÄâ³Éʲô°´¼ü
__s32 value;//Êǰ´Ï»¹ÊÇÊÍ·Å
};
code£º
ʼþµÄ´úÂë.Èç¹ûʼþµÄÀàÐÍ´úÂëÊÇEV_KEY,¸Ã´úÂëcodeΪÉ豸¼üÅÌ´úÂë.´úÂëÖ²0~127Ϊ¼üÅÌÉϵİ´¼ü´úÂë, 0x110~0x116 ΪÊó±êÉϰ´¼ü´úÂë,ÆäÖÐ0x110(BTN_ LEFT)ΪÊó±ê×ó¼ü,0x111(BTN_RIGHT)ΪÊó±êÓÒ¼ü,0x112(BTN_ MIDDLE)ΪÊó±êÖмü.ÆäËü´úÂ뺬ÒåÇë²Î¿´include/linux /input.hÎļþ. Èç¹ûʼþµÄÀàÐÍ´úÂëÊÇEV_REL,codeÖµ±íʾ¹ì¼£µÄÀàÐÍ.ÈçָʾÊó±êµÄXÖá·½Ïò REL_X (´úÂëΪ0x00),ָʾÊó±êµÄYÖá·½ÏòREL_Y(´úÂëΪ0x01),ָʾÊó±êÖÐÂÖ×Ó·½ÏòREL_WHEEL(´úÂëΪ0x08).
type:
EV_KEY,¼üÅÌ
EV_REL,Ïà¶Ô×ø±ê
EV_ABS,¾ø¶Ô×ø±ê
value£º
ʼþµÄÖµ.Èç¹ûʼþµÄÀàÐÍ´úÂëÊÇEV_KEY,µ±°´¼ü°´ÏÂʱֵΪ1,ËÉ¿ªÊ±ÖµÎª0;Èç¹ûʼþµÄÀàÐÍ´úÂëÊÇEV_ REL,valueµÄÕýÊýÖµºÍ¸ºÊýÖµ·Ö±ð´ú±íÁ½¸ö²»Í¬·½ÏòµÄÖµ.
/*
* Event types
*/
#define EV_SYN 0x00
#define EV_KEY 0x01 //°´¼ü
#define EV_REL 0x02 //Ïà¶Ô×ø±ê(¹ì¼£Çò)
#define EV_ABS 0x03 //¾ø¶Ô×ø±ê
#define EV_MSC 0x04 //ÆäËû
#define EV_SW 0x05
#define EV_LED 0x11 //LED
#define EV_SND &
Ïà¹ØÎĵµ£º
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
Ò»¡¢ÒýÑÔ
ÔÚÏÖ´ú²Ù×÷ϵͳÀͬһʱ¼ä¿ÉÄÜÓжà¸öÄÚºËÖ´ÐÐÁ÷ÔÚÖ´ÐУ¬Òò´ËÄÚºËÆäʵÏó¶à½ø³Ì¶àÏ̱߳à³ÌÒ»ÑùÒ²ÐèҪһЩͬ²½»úÖÆÀ´Í¬²½¸÷Ö´Ðе¥Ôª¶Ô¹²ÏíÊý¾ÝµÄ·ÃÎÊ¡£ÓÈÆäÊÇÔÚ¶à´¦ÀíÆ÷ϵͳÉÏ£¬¸üÐèҪһЩͬ²½»úÖÆÀ´Í¬²½²»Í¬´¦ÀíÆ÷ÉϵÄÖ´Ðе¥Ôª¶Ô¹²ÏíµÄÊý¾ÝµÄ·ÃÎÊ¡£
ÔÚÖ÷Á÷µÄLinuxÄÚºËÖаüº¬Á˼¸ºõËùÓÐÏÖ´úµÄ²Ù×÷ϵͳ¾ßÓеÄͬ²½» ......
ǰ ÑÔ
“Linux£¿Ëü±ÈWindows¸üºÃÂð£¿ÎÒÄÜÓÃËü´òħÊÞÂ𣿔
“¿È£¡±ðÌáÁË£¬Ëü²Ù×÷ÆðÀ´ÌرðÂé·³£¬ÄãµÃ²»Í£µØÇû÷¼üÅÌ¡£Ã»×¼Ëü»¹»á³ÃÄã²»×¢ÒâµÄʱºòÔÚÄãµÄÊÖָͷÉÏÒ§Ò»¿ÚÄØ£¡”
»òÐíÄãÒ²ÓÐÀàËÆµÄÏë·¨¡£µ«ÎÞÂÛÈËÃǶÔLinuxÓÐÔõÑùµÄÎó½â£¬ÖÁÉÙÎÒ²»ÔÙÏñǰЩÄêÄÇÑùƵ·±µØ»Ø´ð“Linux ......
µÚ1Õ Linux¸ÅÊö
ʲôÊÇLinux£¿ÔÚËùÓйØÓÚLinuxµÄÎÊÌâÖУ¬Ã»ÓбÈÕâ¸ö¸ü»ù±¾µÄÁË¡£¼òµ¥µØËµ£¬LinuxÊÇÒ»ÖÖ²Ù×÷ϵͳ£¬¿ÉÒÔ°²×°ÔÚ°üÀ¨·þÎñÆ÷¡¢¸öÈ˵çÄÔ¡¢ÄËÖÁPDA¡¢ÊÖ»ú¡¢´òÓ¡»úµÈ¸÷ÀàÉ豸ÖС£³¢ÊÔÒ»¸öеIJÙ×÷ϵͳÄÑÃâÈÃÈËÐij±ÅìÅÈ£¬Èç¹û¶ÁÕß֮ǰ»¹Ã»ÓнӴ¥¹ýLinuxµÄ»°£¬ÔÚÕýʽ¿ªÊ¼°²×°ºÍʹÓÃLinux֮ǰ£¬Ê×ÏÈÈÃ×Ô¼º·ÅËÉ£ ......
1. µØÖ·¿Õ¼äµÄ¹ÜÀí
¡¡¡¡ÎïÀíµØÖ·¶¼ÊÇÓÐÄں˹ÜÀíµÄ£¬ node-->zone-->mem_map-->page, ËùÓеÄÎïÀíÒ³Ãæ¶¼ÔÚmem_mapÊý×éÖеÄÒ³Ö¡¶ÔÓ¦£¬ È»ºó²»Í¬µÄpageÓзÖΪDMA£¬normal£¬highmemÈý¸özone¡£
¡¡¡¡ÄÚºËÏßÐÔµØÖ·¿Õ¼ä£¬ ʵ¼ÊÉÏÖ»ÊǵͶËÄÚ´æ²ÅÓÐÏßÐÔµØÖ·£¬0---896MB²¿·Ö¡£
¡¡¡¡ÄÚºËÐéÄâµØÖ·£¬ µÍ¶ËÄÚ´æµÄÐéÄâµØÖ·ÓëÏ ......