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)];
u
Ïà¹ØÎĵµ£º
ÊØ»¤½ø³ÌÒ²³ÆÎª¾«Áé½ø³Ì£¬ÊÇÒ»ÖÖÔËÐÐÔÚºǫ́µÄÌØÊâ½ø³Ì£¬Ëü²»´æÔÚ¿ØÖÆÖÕ¶Ë£¬²¢ÖÜÆÚÐÔµØÖ´ÐÐijÏîÈÎÎñ»òµÈ´ý´¦ÀíijÏîÈÎÎñ¡£
ÊØ»¤½ø³ÌÌØµã£º
l ËùÓеÄÊØ»¤½ø³Ì¶¼ÊÇÒÔ³¬¼¶Óû§Æô¶¯µÄ(UIDΪ0)£»
l ûÓпØÖÆÖÕ¶Ë(TTYΪ£¿)£»
l Öն˽ø³Ì×éIDΪ-1(TPGID±íʾÖն˽ø³Ì×éID£¬¸ÃÖµ±íʾÓë¿ØÖÆÖÕ¶ËÏà¹ØµÄǰ̨½ø³Ì×é£ ......
£¨1£©
linuxϵÄÅú´¦ÀíÎļþ£¬»ù±¾¾ÍÊÇshell½Å±¾Îļþ¡£
1.Ò»¸ö×î¼òµ¥µÄ½Å±¾Êéд·½·¨Îª£º
н¨Ò»¸öÎļþ£¬Ãû×ÖΪclean(×Ô¼º¶¨ÒåµÄÃû×Ö)£¬ÔÚÀïÃæ±àд
rm -fv *.o;ls -al;
(¿ÉÒÔдһЩshellÆÕͨÃüÁÃüÁîÓ÷ֺŸô¿ª)
2.Ö´Ðз½·¨
(1)ÔÚ¿ØÖÆÌ¨ÊäÈ룺
sh clean
(2)ÏȸøÓë½Å±¾¿ÉÖ´ÐÐȨÏÞ£º
......
tar ÎļþÓëĿ¼ѹËõÃüÁî
tar [-cxtzjvfpPN] ÎļþÓëĿ¼ ....
²ÎÊý£º
-c £º½¨Á¢Ò»¸öѹËõÎļþµÄ²ÎÊýÖ¸Áî(create µÄÒâ˼)£»
-x £º½â¿ªÒ»¸öѹËõÎļþµÄ²ÎÊýÖ¸Á
-t £º²é¿´ tarfile ÀïÃæµÄÎļþ£¡
ÌØ±ð×¢Ò⣬ÔÚ²ÎÊýµÄÏ´ïÖУ¬ c/x/t ½öÄÜ´æÔÚÒ»¸ö£¡²»¿Éͬʱ´æÔÚ£¡ÒòΪ²»¿ÉÄÜͬʱѹËõÓë½âѹËõ¡£
-z £ºÊÇ·ñͬʱ¾ßÓÐ gzip µÄ ......
µÚÒ»´ÎÔÚLinuxÉϰ²×°OracleµÄʱºòÅöµ½Õâ¸öÎÊÌ⣬ºÇºÇ¡£Ö®Ç°ÔÚLinuxÉϰ²×°Oracleʱ£¬Ò»°ã¶¼Ê¹ÓÃRedHatϵÁеÄLinux£¬ÔÚ°²×°¹ý³ÌÖУ¬ÐèÒª×ö´óÁ¿µÄ°²×°Ç°Öù¤×÷£¬Èç°²×°RPM°ü£¬´´½¨×éºÍÓû§£¬ÐÞ¸ÄÄں˲ÎÊý£¬Ð޸Ļ·¾³±äÁ¿µÈ¡£Õâ´ÎʹÓõÄÊÇRedFlagµÄAsianux 3£¬¶øÇÒ×Ô´øOracleµÄ°²×°¸¨Öú¹¤¾ßOrana ......
Öܺ£ºº /ÎÄ
2010.4.22
¿´¼¯ÈºµÄ¶«Î÷ʱÎÞÒâÖп´µ½¼¸ÄêǰÁ÷Ðеķֲ¼Ê½¿ÆÑ§¼ÆËãseti@home£¬ÃÀ¹ú²®¿ËÀû´óѧµÈ¿ÆÑ§½çÓÃÓÚ¼ÆËãÌìÌåÊý¾ÝµÄ¡£SETI@home ÊÇÒ»ÏîÀûÓÃÈ«ÇòÁªÍøµÄ¼ÆËã»ú¹²Í¬ËÑѰµØÍâÎÄÃ÷£¨SETI£©µÄ¿ÆÑ§ÊµÑ鼯»®¡£Äã¿ÉÒÔͨ¹ýÔËÐÐÒ»¸öÃâ·Ñ³ÌÐòÏÂÔØ²¢·ÖÎö´ÓÉäµçÍûÔ¶¾µ´«À´µÄÊý¾ÝÀ´¼ÓÈëÕâ¸öÏîÄ¿¡£ ²»¹ýÎÒÔÙ´ÎʹÓÃÆä¿Í»§¶ËÊ ......