LinuxÏÂUSB´ÓÉ豸ʹÓÃgadget API
LinuxÏÂUSB´ÓÉ豸ʹÓÃgadget API
[ÈÕÆÚ£º2007-12-27]
À´Ô´£ºLinux¹«Éç ×÷ÕߣºÎ°Î°
×î½üÔÚ×öLinuxÏÂUSB´ÓÉ豸µÄÇý¶¯£¬³ÌÐòдµÄ²î²»¶àÁË£¬×öÒ»¸öÕûÀíС½á¡£»¶Ó½»Á÷,ÈçÓдíÎóÇëÖ¸Õý,лл!--Jason
Ò»¡¢USB´ÓÉ豸Çý¶¯½éÉÜ
USB×ÜÏßÉÏÖ÷ÒªÓÐÈýÀàÉ豸£ºÖ÷¿ØÖÆÆ÷£¨Host Controller£¬ such as EHCI¡¢UHCI¡¢OHCI£©¡¢¼¯Ï߯÷£¨hub£©ºÍÉ豸£¨device£©¡£Host controller£¨HC£©¸ºÔð×ÜÏߵĹÜÀí£¬ÊÇ×ÜÏßµÄÖ¸»Ó¹Ù£¬×ÜÏßÉÏÒ»Çд«Êä¶¼ÊÇÓÉHC·¢ÆðµÄ£¬Ö§³ÖOTGµÄDeviceÒ²ÄÜ·¢Æð´«Ê䣻HubÊÇ×ÜÏߵĽڵ㣬ÓÃÀ´À©Õ¹×ÜÏßÉϿɽÓÈëÉ豸µÄÊýÁ¿£¬¶ÔÓÚÇý¶¯À´ËµÊÇ͸Ã÷µÄ£»Device¾ÍÊǸ÷ÖÖ¸÷ÑùµÄÉ豸ÁË£¬Ã¿¸öÉ豸¶¼ÓÐ×Ô¼ºµÄ¹¦ÄÜ£¬±ÈÈçUÅÌ¡¢USBÉãÏñÍ·µÈµÈ¡£
LinuxÏÂÖ÷»ú¶ËUSBÉ豸µÄÇý¶¯£¨device driver£©±àдµÄ×ÊÁÏÓкܶ࣬LDD3ÖÐÓÐÏàÓ¦µÄ½éÉÜ¡£Ö÷ÒªÊÇͨ¹ýÄÚºËÖÐUSB coreÕâ¸öÄ£¿éÓëÉ豸½»»¥¡£±¾ÎÄÖ»½éÉÜÔËÐÐLinuxµÄǶÈëʽUSBÉ豸Çý¶¯µÄ±àд¡£ÒòΪHost¶ËÒѾʹÓÃÁËdevice driverÒ»´Ê£¬ÎªÁ˱ÜÃâ»ìÏý£¬Ê¹ÓÃUSB gadget driverÒ»´Î±íʾ´ÓÉ豸Çý¶¯¡£In USB protocol interactions, the device driver is the master (or client driver) and the gadget driver is the slave (or function driver).
Linux USB gadget driver API¶¨ÒåÁËÒ»¸öͨÓõÄgadget driverµÄ½Ó¿Ú£¬gadget driverͨ¹ýAPIÓëµ×²ãUSB controller driverͨÐÅ¡£¸ÃAPIÆÁ±ÎÁ˵ײãÓ²¼þµÄ²»Í¬£¬Ê¹gadget driver×¢ÖØ¹¦ÄܵÄʵÏÖ£¬¾¡Á¿ÓëÓ²¼þÎ޹ء£Slave¶ËϵͳµÄ¼Ü¹¹ÈçÏÂͼËùʾ£º
ÆäÖУ¬gadgetfsÌṩ¸øÓû§¿Õ¼ä³ÌÐòÖ±½ÓÓëUSB device controller½»»¥µÄÄÜÁ¦¡£
¶þ¡¢Ïà¹Ø×ÊÁÏ
USB gadget API LayerµÄÏà¹Ø×ÊÁÏ£º
1£® http://www.linux-usb.org/gadget/
2£® ÄÚºËÖÐ/KernelDoc/gadget/Ŀ¼ÏµÄÎĵµ
3£®×îÖØÒªµÄ¾ÍÊÇ/include/linux/usb_gadget.hÎļþ£¬¸ÃÎļþÖÐÓÐgadget API½Ó¿ÚÊý¾Ý½á¹¹ºÍ·½·¨µÄÏêϸ¶¨Òå¼°×¢ÊÍ¡£
Gadget DriverµÄÀý×Ó£º
4£® ÄÚºË/drivers/usb/gadget/Ŀ¼ÏÂÓÐһЩgadget driverµÄÀý×Ó£¬zero.cΪ×î¼òµ¥µÄÀý×Ó£¬file_storage.cÊÇ´æ´¢É豸µÄgadget driver¡£
Èý¡¢gadget API
ÒªÁ˽âgadget API£¬Ö»ÐèÒªÀí½âÍ·Îļþ£¨usb_gadget.h£©Öм¸¸öÖØÒªµÄÊý¾Ý½á¹¹¾Í¿ÉÒÔÁË¡£ÏêϸµÄ×ֶνéÉÜ¿´hÎļþ×¢ÊÍ¡£
£¨1£©
struct usb_gadget {
const struct usb_gadget_ops *ops;
struct usb_ep *ep0;
struct list_he
Ïà¹ØÎĵµ£º
ÔÌù£ºhttp://2bits.com/articles/installing-php-apc-gnulinux-centos-5.html
Published Mon, 2008/03/24 - 13:49, Updated Wed, 2009/07/15 - 23:40
Complex PHP applications, such as Drupal, can gain a lot of performance benefits from running a PHP op-code cache/accelerators
.
APC,
Alternate ......
¡¡Ò»¡¢ÒýÑÔ
¡¡¡¡ÏëʹÓÃLinuxÒѾºÜ³¤Ê±¼äÁË£¬ÓÉÓÚûÓÐÓ²ÐÔÈÎÎñһֱҲûÓÐϵͳѧϰ£¬½üÈÕÓÉÓÚ¹¤×÷ÐèÒª±ØÐëʹÓÃLinuxϵÄMySQL¡£±¾ÒÔΪÓÐ
WindowsÏÂʹÓÃSQL
ServerµÄ¾Ñ飬¾õµÃÔÚLinuxϰ²×°MySqlÓ¦¸ÃÊÇÒ×Èç·´ÕÆµÄÊ£¬¿ÉÔÚÕæÕý°²×°ºÍʹÓÃMySQLʱ×ßÁ˺ܶàÍä·£¬Óö¼ûºÜ¶àÎÊÌ⣬±Ï¾¹Linux
ºÍWindows±¾Éí¾ÍÓкܴóÇø±ð¡£ÎªÁËÈà ......
bilbo ²âÊԳɹ¦£¬Linux×ÜËãÓа취¿ÉÒÔ·¢µã¶«Î÷ÁË£¡£¡£¡ÔÀ´ÔÚLinuxÏÂÊÇͨ¹ýFireFox·¢µÄ£¬µ«ÊÇCSDN¶ÔFirefoxµÄÖ§³ÖÓÐÎÊÌ⣬ÔÚÏ߱༻ᶪʧ¸ñʽ£¬¸üÑÏÖØµÄÊÇFireFoxÌá½»µÄÎÄÕÂÖ»ÄÜÓÃFireFox²ÅÄÜ¿´µ½£¬º¦µÃµ±Ê±ÎÒÒ»ÅúÎÄÕÂÈ«²¿ÖØÐ·¢±íÁËÒ»´Î£¬²»ÖªµÀÏÖÔÚºÃÁËûÓУ¬×ÜÖ®ÎÒÊÇûÓÐÔÙ¸ÒÓÃFireFox·¢±íÎÄÕÂÁË¡£×î½ü×ÜËãÔÚKDEÏÂÕÒµ½ÁË ......
ÎÒʹÓõÄÐéÄâ»úÊÇVMware£¬ÔÚÆäÉÏ×°µÄϵͳÊÇRed Hat Linux 9.0¡£ÔÚLinuxÉÏʹÓÃUÅÌÓëWindowsÏÂÓÐËùÇø±ð£¬ÐèÒªÏȹÒÔØ£¬µ±³ÉÎļþ·ÃÎÊ£¬ºó²ÅÄÜʹÓ㨲»¹ýÔÚUbuntuϺÃÏñ²»ÓùÒÔØ¾Í¿ÉÒÔÖ±½ÓʹÓã©¡£
Èç¹ûÏëÔÚÐéÄâ»úÉÏʹÓÃUÅÌ£¬ÓÐÒ»µãÐèҪעÒâµÄÊÇ£¬±ØÐë°ÑÐéÄâ´ò¿ª²¢ÇÒ²»ÄÜ´°¿Ú×îС»¯¡£·ñÔò£¬UÅÌ»á±»Ê ......