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

LinuxϵͳÏÂÇý¶¯³ÌÐò¿ò¼Ü¸ÅÊö

Ò»¡¢linuxµÄÉ豸Çý¶¯³ÌÐòÓëÍâ½çµÄ½Ó¿Ú¿ÉÒÔ·ÖΪÈý¸ö²¿·Ö£º
¡¡¡¡1£®Çý¶¯³ÌÐòÓë²Ù×÷ϵͳÄں˵Ľӿڡ£Í¨¹ýfile_operations(include/linux/fs.h)Êý¾Ý½á¹¹À´Íê³ÉµÄ¡£
¡¡¡¡2£®Çý¶¯³ÌÐòÓëϵͳÒýµ¼µÄ½Ó¿Ú¡£Õⲿ·ÖÀûÓÃÇý¶¯³ÌÐò¶ÔÉ豸½øÐгõʼ»¯¡£
¡¡¡¡3£®Çý¶¯³ÌÐòÓëÉ豸µÄ½Ó¿Ú¡£Õⲿ·ÖÃèÊöÁËÇý¶¯³ÌÐòÈçºÎÓëÉ豸½øÐн»»¥£¬Óë¾ßÌåµÄÉ豸ÃÜÇÐÏà¹Ø¡£
¡¡¡¡¶þ¡¢¸ù¾Ý¹¦ÄÜ»®·Ö£¬É豸Çý¶¯³ÌÐòµÄ´úÂëÓÐÒÔϼ¸²¿·Ö£º
¡¡¡¡1£®Çý¶¯³ÌÐòµÄ×¢²áºÍ×¢Ïú¡£
¡¡¡¡2£®É豸µÄ´ò¿ªºÍÊÍ·Å¡£
¡¡¡¡3£®É豸µÄ¶Áд²Ù×÷¡£
¡¡¡¡4£®É豸µÄ¿ØÖƲÙ×÷¡£
¡¡¡¡5£®É豸µÄÖжϺÍÂÖѯ´¦Àí¡£
¡¡¡¡Èý¡¢Çý¶¯³ÌÐòµÄ×¢²áºÍ×¢Ïú£º
¡¡¡¡É豸Çý¶¯³ÌÐò¿ÉÒÔÔÚϵͳÆô¶¯µÄʱºò³õʼ»¯£¬Ò²¿ÉÒÔÔÚÐèÒªµÄʱºò¶¯Ì¬¼ÓÔØ¡£×Ö·ûÉ豸µÄ³õʼ»¯ÓÉchr_dev_init()Íê³É£¬°üÀ¨¶ÔÄڴ棨devfs_register_chrdev(MEM_MAJOR,"mem",&memory_fops)£©£¬ÖÕ¶Ë£¨tty_init()£©£¬´òÓ¡»ú£¨lp_init()£©£¬Êó±ê£¨misc_init()£©µÈ×Ö·ûÉ豸µÄ³õʼ»¯¡£
¡¡¡¡¿éÉ豸³õʼ»¯ÓÉblk_dev_init()Íê³É£¬Õâ°üÀ¨¶ÔIDEÓ²ÅÌ£¨ide_init()£©£¬ÈíÅÌ£¨floppy_init()£©£¬¹âÇýµÈ¿éÉ豸µÄ³õʼ»¯¡£
¡¡¡¡Ã¿¸ö×Ö·ûÉ豸»òÊÇ¿éÉ豸µÄ³õʼ»¯¶¼ÊÇͨ¹ýdevfs_register_chrdev()»òÊÇdevfs_register_blkdev()ÏòÄÚºË×¢²á¡£ÔڹرÕ×Ö·ûÉ豸»òÊÇ¿éÉ豸ʱ£¬»¹ÐèҪͨ¹ýdevfs_unregister_chrdev()»òÊÇdevfs_unregister_blkdev()´ÓÄÚºËÖÐ×¢ÏúÉ豸¡£
¡¡¡¡ËÄ¡¢É豸µÄ´ò¿ªºÍÊÍ·Å£º
¡¡¡¡´ò¿ªÉ豸ÊÇÓÉopen()À´Íê³ÉµÄ¡£ÀýÈ磬´òÓ¡»úÊÇÓÃlp_open()´ò¿ªµÄ£¬¶øÓ²ÅÌÊÇÓÃhd_open()´ò¿ªµÄ¡£Ôڴ󲿷ÖÉ豸Çý¶¯³ÌÐòÖУ¬openÍê³ÉÈçϹ¤×÷£º
¡¡¡¡1£®Ôö¼ÓÉ豸µÄÊÇÓüÆÊý¡£
¡¡¡¡2£®¼ì²éÉ豸µÄÏà¹Ø´íÎó£¬ÈçÉ豸ÉÐδ׼±¸ºÃ»òÊÇÀàËÆÓ²¼þµÄÎÊÌâ¡£
¡¡¡¡3£®¼ì²éÊÇÊ״δò¿ª£¬Ôò³õʼ»¯É豸¡£
¡¡¡¡4£®Ê¶±ð´ÎÉ豸ºÅ£¬ÈçÓбØÒªÔò¸üÐÂf_opÖ¸Õë¡£
¡¡¡¡5£®Èç¹ûÐèÒª£¬·ÖÅäÇÒÉèÖÃÒª·ÅÔÚfilp->private_dataÀïµÄÊý¾Ý½á¹¹¡£
¡¡¡¡ÊÍ·ÅÉ豸ÓÉrelease()À´Íê³É£¬ÀýÈçÊÍ·Å´òÓ¡»úÊÇÓÃlp_release()£¬¶øÊÍ·ÅÖÕ¶ËÉ豸ÊÇÓÃtty_release()¡£ÊÍ·ÅÉ豸µÄÒ»°ã²½Öè°üÀ¨£º
¡¡¡¡1£®ÊÍ·ÅÔÚfilp->private_dataÖеÄopen·ÖÅäµÄÄÚ´æ¡£
¡¡¡¡2£®Èç¹ûÊÇ×îºóÒ»´ÎÊÍ·Å£¬Ôò¹Ø±ÕÉ豸¡£
¡¡¡¡3£®µÝ¼õÉè±ðµÄʹÓüÆÊý¡£
¡¡¡¡Îå¡¢É豸µÄ¶Áд²Ù×÷£º
¡¡¡¡×Ö·ûÉ豸ʹÓø÷×ÔµÄread()ºÍwrite()À´½øÐÐÊý¾Ý¶Áд¡£ÀýÈ磬¶ÔÐéÄâÖն˵ĶÁдÊÇͨ¹ývcs_read()ºÍvcs_write()À´½øÐÐÊý¾Ý¶ÁдµÄ¡£
¡¡¡¡¿éÉ豸ʹÓÃͨÓõÄgene


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì(Áù) L2CAP±à³ÌʵÀý

ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
 Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......

LinuxÉ豸ģÐÍÖ®input×ÓϵͳÏê½â

Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......

Unix/Linux ϵͳ×Ô¶¯»¯¹ÜÀí: ÄÚ´æ¹ÜÀíÆª

2009 Äê 10 ÔÂ 29 ÈÕ
±¾ÎÄÊÇ Unix/Linux ϵͳ¹ÜÀí×Ô¶¯»¯ÏµÁÐÖеÄһƪÎÄÕ£¬Ö÷Òª½éÉÜÁËÄÚ´æ¹ÜÀíËùÉæ¼°µÄÃüÁ²¢Í¨¹ý±àд×Ô¶¯»¯½Å±¾ÊµÏÖÁËÄÚ´æ¹ÜÀíÓë¼à¿ØµÄ×Ô¶¯»¯
ÄÚ´æÊÇ Unix/Linux ÄÚºËËù¹ÜÀíµÄ×îÎªÖØÒªµÄ×ÊÔ´Ö®Ò»£¬ÄÚ´æ¹ÜÀíÊÇϵͳ¹ÜÀíÖзdz£ÖØÒªÒ²ÊÇ×ÔӵĵIJ¿·Ö¡£ÏµÍ³¹ÜÀíÔ±ÐèÒªÕÆÎÕÄÚ´æ¹ÜÀíµÄ»ù±¾¹¤×÷Ô­ÀíÒÔ¼°Ê¹Óú ......

ÔÚlinuxϰ²×°Sqlite

°²×°Sqlite
Ê×ÏÈÊÇÏÂÔØsqlite-3.3.8.tar.gz¡£
1¡¢½âѹsqlite-3.3.8.tar.gz£ºtar –xzvf sqlite-3.3.8.tar.gz,µÃµ½sqlite-3.3.8µÄÎļþ¡£
2¡¢ÔÚsqlite-3.3.8ͬһĿ¼Ï´´½¨sqliteÎļþ£ºmkdir sqlite
3¡¢Cd sqlite
4¡¢Ö´ÐÐconfigureÉú³É°²×°³ÌÐò
5¡¢   ../sqlite-3.3.8/configure --prefix=/home/work/zd ......

ÈçºÎ±àдLinuxÉ豸Çý¶¯³ÌÐò

LinuxÊÇUnix²Ù×÷ϵͳµÄÒ»ÖÖ±äÖÖ£¬ÔÚLinuxϱàдÇý¶¯³ÌÐòµÄÔ­ÀíºÍ˼ÏëÍêÈ«ÀàËÆÓÚÆäËûµÄUnixϵͳ£¬µ«Ëüdos»òwindow»·¾³ÏµÄÇý¶¯³ÌÐòÓкܴóµÄÇø±ð¡£ÔÚLinux»·¾³ÏÂÉè¼ÆÇý¶¯³ÌÐò£¬Ë¼Ïë¼ò½à£¬²Ù×÷·½±ã£¬¹¦ÄÜÒ²ºÜÇ¿´ó£¬µ«ÊÇÖ§³Öº¯ÊýÉÙ£¬Ö»ÄÜÒÀÀµkernelÖеĺ¯Êý£¬ÓÐЩ³£ÓõIJÙ×÷Òª×Ô¼ºÀ´±àд£¬¶øÇÒµ÷ÊÔÒ²²»·½±ã¡£
ÒÔϵÄһЩÎÄ×ÖÖ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ