LinuxÉ豸ģÐÍÖ®input×ÓϵͳÏê½â
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì²âµ½µÄËùÓа´¼ü¶¼Éϱ¨¸øÁËinput×Óϵͳ¡£Input×ÓϵͳÊÇËùÓÐI/OÉ豸Çý¶¯µÄÖмä²ã£¬ÎªÉϲãÌṩÁËÒ»¸öͳһµÄ½çÃæ¡£ÀýÈ磬ÔÚÖÕ¶ËϵͳÖУ¬ÎÒÃDz»ÐèҪȥ¹ÜÓжàÉÙ¸ö¼üÅÌ£¬¶àÉÙ¸öÊó±ê¡£ËüÖ»Òª´Óinput×ÓϵͳÖÐȥȡ¶ÔÓ¦µÄʼþ(°´¼ü£¬Êó±êÒÆÎ»µÈ)¾Í¿ÉÒÔÁË¡£
¶þ£ºÊ¹ÓÃinput deviceµÄÀý×Ó
ÏÂÃæµÄ´úÂëÊÇ»ùÓÚlinux kernel 2.6.25.·ÖÎöµÄ´úÂëÖ÷ҪλÓÚkernel2.6.25/drivers/inputÏÂÃæ.
ÔÚÄÚºË×Ô´øµÄÎĵµDocumentation/input/input-programming.txtÖС£ÓÐÒ»¸öʹÓÃinput×ÓϵͳµÄÀý×Ó£¬²¢¸½´øÏàÓ¦µÄ˵Ã÷¡£ÒÔ´ËΪÀý·ÖÎöÈçÏ£º
#include <linux/input.h>
#include <linux/module.h>
#include <linux/init.h>
#include <asm/irq.h>
#include <asm/io.h>
static void button_interrupt(int irq, void *dummy, struct pt_regs *fp)
{
input_report_key(&button_dev, BTN_1, inb(BUTTON_PORT) & 1);
input_sync(&button_dev);
}
static int __init button_init(void)
{
if (request_irq(BUTTON_IRQ, button_interrupt, 0, "button", NULL)) {
printk(KERN_ERR "button.c: Can't allocate irq %d\n", button_irq);
return -EBUSY;
}
button_dev.evbit[0] = BIT(EV_KEY);
button_dev.keybit[LONG(BTN_0)] = BIT(BTN_0);
input_register_device(&button_dev);
}
static void __exit button_exit(void)
{
&n
Ïà¹ØÎĵµ£º
×÷Õߣº Sam£¨Õç·å£© sam_code@hotmail.com
threadÊôÐÔ£º
pthread_create()ÖУ¬µÚ¶þ¸ö²ÎÊý£¨pthread_attr_t£©Îª½«Òª´´½¨µÄthreadÊôÐÔ¡£Í¨³£Çé¿öÏÂÅäÖÃΪNULL£¬Ê¹ÓÃȱʡÉèÖþͿÉÒÔÁË¡£
µ«Á˽âÕâЩÊôÐÔ£¬ÓÐÀûÓÚ¸üºÃµÄÀí½âthread.
ÊôÐÔ¶ÔÏó£¨pthread_attr_t£©ÊDz»Í¸Ã÷µÄ£¬¶øÇÒ²»ÄÜͨ¹ý¸³ÖµÖ±½Ó½øÐÐÐ޸ġ£ÏµÍ³ÌṩÁËÒ»×麯Êý ......
linux ´ò°üÃüÁîtar£º
tar cvf my.tar file1 // µ¥¸öÎļþ
tar cvf my.tar file1 file2 .. // ¶à¸öÎļþ
tar cvf my.tar dir1 // µ¥¸öĿ¼
tar cvf my.tar dir1 dir2 .. // ¶à¸öĿ¼
ÒÔÉϽö´ò°ü²¢ÎÞѹËõ¡£
²ÎÊý£º
-c £º½¨Á¢Ò»¸öѹËõÎļþµÄ²ÎÊýÖ¸Áî(create µÄÒâ˼)£»
-x £º½â¿ªÒ»¸öѹËõÎļþµÄ²ÎÊýÖ¸Á
- ......
LinuxÖвéÕÒÎļþµÄÃüÁîͨ³£Îª“find”ÃüÁ“find”ÃüÁîÄܰïÖúÎÒÃÇÔÚʹÓÃ, ¹ÜÀíLinuxµÄÈÕ³£ÊÂÎñÖз½±ãµÄ²éÕÒ³öÎÒÃÇÐèÒªµÄÎļþ¡£¶ÔÓÚLinuxÐÂÊÖÀ´Ëµ£¬“find” ÃüÁîÒ²ÊÇÁ˽âºÍѧϰLinuxÎļþÌØµãµÄ·½·¨¡£ÒòΪLinux·¢Ðа汾·±¶à£¬°æ±¾Éý¼¶ºÜ¿ì£¬ ÔÚLinuxÊé¼®ÉÏÍùÍùдÃ÷ij¸öÅäÖÃÎļþµÄËùÔÚλÖ㬠......
RHCEֱͨ³µ www.taobaofun.com Ìṩ×îÈ«ÃæµÄRHCE¿¼ÊÔ×ÊÁÏ
1£® ÕÆÎÕÖÁÉÙ50¸öÒÔÉϵij£ÓÃÃüÁî¡£
2£® ÊìϤGnomeKDEµÈX-windows×ÀÃæ»·¾³²Ù×÷£¬×îºÃÊÇ×Ô¼º°²×°ÏÂϵͳ£¬Ê¹ÓÃx»·¾³ÉÏÏÂÍø¡£
3£® ÕÆÎÕ.tgz¡¢.rpmµÈÈí¼þ°üµÄ³£Óð²×°·½·¨£¬±¸·Ý»¹Ôʱºò»áÓõ½µÄ
4£® Ñ§Ï°Ì ......
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
·¢Õ¹
Linux
µÄ×îÖÕÄ¿µÄÊÇ´ø¸øÈËÃÇÒ»¸öÍêÃÀµÄ×ÀÃæ£¨
Desktop
£©
,
ÓÃÓÚ¹¤×÷ºÍÓéÀÖ£¬ÆäÓàÊÂÇé¶¼ÊǵڶþλµÄ¡£Õ⻰˵µÃÓÐµã¾ø¶Ô£¬µ«ÊÇ£¬ÏÖÔÚ²»µÃ²»Õâô˵¡£ÎªÊ²Ã´£¿
&n ......