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

LinuxµÄInput Device

      Linux µÄ Input Device ÊÇÖØÒªµÄÒ»個 subsystem£¬ÔÚ進ÐÐ實Àý½é紹ǰ£¬ÏÈ´óÂÔÁ˽âÒ»ÏÂÏà關µÄ API¡£input.cÊÇLinuxµÄÊäÈë驅動³Ìʽ£¬Ö÷ÒªÖ§Ô®鍵盤與»¬ÊóµÄ輸È룻input.c½éÃæÌØÊâµÄµØ·½ÊÇ採ÓÃÁËʼþ£¨event£©µÄ·½Ê½來處Àí輸È룬ÒÔÏÂÊÇinput.c½éÃæÖØÒªµÄ資ÁÏ結構與º¯數£º
* struct input_dev
* void input_event(struct input_dev *dev, unsigned int type, unsigned int code, int value)
* void input_register_device(struct input_dev *);
* void input_unregister_device(struct input_dev *);
* void input_register_handler(struct input_handler *);
* void input_unregister_handler(struct input_handler *);
£¨1£© struct input_devÊÇÓÃ來ÃèÊö輸ÈëʼþµÄÖØÒª資ÁÏ結構£¬ÆäÔ­ÐÍÈçÏ£º
struct input_dev {
 const char *name;
 const char *phys;
 const char *uniq;
 struct input_id id;
 unsigned long evbit[BITS_TO_LONGS(EV_CNT)];
 unsigned long keybit[BITS_TO_LONGS(KEY_CNT)];
 unsigned long relbit[BITS_TO_LONGS(REL_CNT)];
 unsigned long absbit[BITS_TO_LONGS(ABS_CNT)];
 unsigned long mscbit[BITS_TO_LONGS(MSC_CNT)];
 unsigned long ledbit[BITS_TO_LONGS(LED_CNT)];
 unsigned long sndbit[BITS_TO_LONGS(SND_CNT)];
 unsigned long ffbit[BITS_TO_LONGS(FF_CNT)];
 unsigned long swbit[BITS_TO_LONGS(SW_CNT)];
 unsigned int keycodemax;
 unsigned int keycodesize;
 void *keycode;
 int (*setkeycode)(struct input_dev *dev, int scancode, int keycode);
 int (*getkeycode)(struct input_dev *dev, int scancode, int *keycode);
 struct ff_device *ff;
 unsigned int repeat_key;
 struct timer_list timer;
 int sync;
 int abs[ABS_MAX + 1];
 int rep[REP_MAX + 1];
 unsigned long key[BITS_TO_LONGS(KEY_CNT)];
 unsigned long led[BITS_TO_LONGS(LED_CNT)];
 unsigned long snd[BITS_TO_LONGS(SND_CNT)];
 unsign


Ïà¹ØÎĵµ£º

linux shell½Å±¾Ö®ifÅжÏ

ÎÞÂÛʲô±à³ÌÓïÑÔ¶¼Àë²»¿ªÌõ¼þÅжϡ£SHELLÒ²²»ÀýÍâ¡£
 if list then
          do something here
      elif list then
          do another thing here
      ......

linux½ø³ÌͨÐÅ ÐźÅÁ¿Ê¹ÓÃ

±êÌ⣺Linux½ø³ÌͨÐÅ-ʹÓÃÐźÅÁ¿
Ò»¡¢Ïà¹ØÖªÊ¶
 ÐźÅÁ¿£ºÒ»¸öÕûÊý£»
  ´óÓÚ»òµÈÓÚ0ʱ´ú±í¿É¹©²¢·¢½ø³ÌʹÓõÄ×ÊԴʵÌåÊý£»
  СÓÚ0ʱ´ú±íÕýÔڵȴýʹÓÃÁÙ½çÇøµÄ½ø³ÌÊý£»
  ÓÃÓÚ»¥³âµÄÐźÅÁ¿³õʼֵӦ´óÓÚ0£»
  Ö»ÄÜͨ¹ýP¡¢VÔ­Óï²Ù×÷¶ø¸Ä±ä£»
 ÐźÅÁ¿ÔªËØ×é³É£º
  1¡¢±íʾÐźÅÁ¿ÔªË ......

linuxѧϰ±Ê¼Ç ¶Á¡¶Linux±à³Ì¼¼ÊõÏê½â¡· ÊØ»¤½ø³Ì

ÊØ»¤½ø³ÌÒ²³ÆÎª¾«Áé½ø³Ì£¬ÊÇÒ»ÖÖÔËÐÐÔÚºǫ́µÄÌØÊâ½ø³Ì£¬Ëü²»´æÔÚ¿ØÖÆÖÕ¶Ë£¬²¢ÖÜÆÚÐÔµØÖ´ÐÐijÏîÈÎÎñ»òµÈ´ý´¦ÀíijÏîÈÎÎñ¡£
ÊØ»¤½ø³ÌÌØµã£º
l  ËùÓеÄÊØ»¤½ø³Ì¶¼ÊÇÒÔ³¬¼¶Óû§Æô¶¯µÄ(UIDΪ0)£»
l  ûÓпØÖÆÖÕ¶Ë(TTYΪ£¿)£»
l  Öն˽ø³Ì×éIDΪ-1(TPGID±íʾÖն˽ø³Ì×éID£¬¸ÃÖµ±íʾÓë¿ØÖÆÖÕ¶ËÏà¹ØµÄǰ̨½ø³Ì×é£ ......

LinuxϵĴ®¿Ú±à³Ì

Linux ²Ù×÷ϵͳ´ÓÒ»¿ªÊ¼¾Í¶Ô´®ÐпÚÌṩÁ˺ܺõÄÖ§³Ö,±¾ÎÄ¾Í Linux ϵĴ®ÐпÚͨѶ±à³Ì½øÐмòµ¥µÄ½éÉÜ¡£
´®¿Ú¼ò½é
´®ÐпÚÊǼÆËã»úÒ»ÖÖ³£ÓõĽӿÚ,¾ßÓÐÁ¬½ÓÏßÉÙ,ͨѶ¼òµ¥,µÃµ½¹ã·ºµÄʹÓᣳ£ÓõĴ®¿ÚÊÇ RS-232-C ½Ó¿Ú£¨ÓÖ³Æ EIA RS-232-C£©ËüÊÇÔÚ 1970 ÄêÓÉÃÀ¹úµç×Ó¹¤ÒµÐ­»á£¨EIA£©ÁªºÏ±´¶ûϵͳ¡¢ µ÷ÖÆ½âµ÷Æ÷³§¼Ò¼°¼ÆËã»úÖÕ ......

linuxÏÂÒ»¸öºÃÍæµÄ×Ô½âѹ½Å±¾

Öܺ£ºº /ÎÄ
2010.4.22
¿´¼¯ÈºµÄ¶«Î÷ʱÎÞÒâÖп´µ½¼¸ÄêǰÁ÷Ðеķֲ¼Ê½¿ÆÑ§¼ÆËãseti@home£¬ÃÀ¹ú²®¿ËÀû´óѧµÈ¿ÆÑ§½çÓÃÓÚ¼ÆËãÌìÌåÊý¾ÝµÄ¡£SETI@home ÊÇÒ»ÏîÀûÓÃÈ«ÇòÁªÍøµÄ¼ÆËã»ú¹²Í¬ËÑѰµØÍâÎÄÃ÷£¨SETI£©µÄ¿ÆÑ§ÊµÑ鼯»®¡£Äã¿ÉÒÔͨ¹ýÔËÐÐÒ»¸öÃâ·Ñ³ÌÐòÏÂÔØ²¢·ÖÎö´ÓÉäµçÍûÔ¶¾µ´«À´µÄÊý¾ÝÀ´¼ÓÈëÕâ¸öÏîÄ¿¡£ ²»¹ýÎÒÔÙ´ÎʹÓÃÆä¿Í»§¶ËÊ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ