Linux USB gadgetÉ豸Çý¶¯½âÎö£¨2£© Çý¶¯µ÷ÊÔ
±¾ÎÄÖ÷Òª°ÑÔÚʵÏÖ“linuxÄ£ÄâUÅ̹¦ÄÜ”¹ý³ÌÖеÄһЩµ÷ÊÔ¹ý³Ì¼Ç¼ÏÂÀ´£¬²¢¼ÓÒÔ½âÎö¡£
Ò»¡¢±³¾°ÖªÊ¶
1¡¢USB Mass StorageÀà¹æ·¶¸ÅÊö
USB ×éÖ¯ÔÚuniversal Serial Bus Mass Storage Class
Spaceification 1.1°æ±¾Öж¨ÒåÁ˺£Á¿´æ´¢É豸ÀࣨMass Storage Class£©µÄ¹æ·¶£¬Õâ¸öÀà¹æ·¶°üÀ¨Ëĸö
¶ÀÁ¢µÄ×ÓÀà¹æ·¶£¬¼´£º
1. USB Mass Storage Class Control/Bulk/Interrupt (CBI)
Transport
2.USB Mass Storage Class Bulk-Only Transport
3.USB Mass Storage Class ATA Command Block
4.USB Mass Storage Class UFI Command Specification
ǰÁ½¸ö×ӹ淶¶¨ÒåÁËÊý¾Ý/ÃüÁî/״̬ÔÚUSB ÉϵĴ«Êä·½·¨¡£Bulk- Only ´«Ê乿·¶½ö½öʹÓÃBulk
¶Ëµã´«ËÍÊý¾Ý/ÃüÁî/״̬£¬CBI ´«Ê乿·¶ÔòʹÓÃControl/Bulk/Interrupt
ÈýÖÖÀàÐÍµÄ¶Ëµã½øÐÐÊý¾Ý/ÃüÁî/״̬´«ËÍ¡£ºóÁ½¸ö×ӹ淶Ôò¶¨ÒåÁË´æ´¢½éÖʵIJÙ×÷ÃüÁî¡£ATA ÃüÁî¹æ·¶ÓÃÓÚÓ²ÅÌ£¬UFI ÃüÁî¹æ·¶ÊÇÕë¶ÔUSB
ÒÆ¶¯´æ´¢¡£
Microsoft Windows ÖÐÌṩ¶ÔMass Storage ÐÒéµÄÖ§³Ö£¬Òò´ËUSB ÒÆ¶¯É豸ֻÐèÒª×ñÑ
Mass Storage ÐÒéÀ´×éÖ¯Êý¾ÝºÍ´¦ÀíÃüÁ¼´¿ÉʵÏÖÓëPC »ú½»»»Êý¾Ý¡£¶øFlash µÄ´æ´¢µ¥Ôª×éÖ¯ÐÎʽ²ÉÓÃFAT16
Îļþϵͳ£¬ÕâÑù£¬¾Í¿ÉÒÔÖ±½ÓÔÚWindowsµÄä¯ÀÀÆ÷ÖÐͨ¹ý¿ÉÒÆ¶¯´ÅÅÌÀ´½»»»Êý¾ÝÁË£¬Windows ¸ºÔð¶ÔFAT16 ÎļþϵͳµÄ¹ÜÀí£¬USB
É豸²»ÐèÒª¸ÉÔ¤FAT16 Îļþϵͳ²Ù×÷µÄ¾ßÌåϸ½Ú¡£
USB£¨Host£©Î¨Ò»Í¨¹ýÃèÊö·ûÁ˽âÉ豸µÄÓйØÐÅÏ¢£¬¸ù¾ÝÕâЩÐÅÏ¢£¬½¨Á¢ÆðͨÐÅ£¬ÔÚÕâ
ЩÃèÊö·ûÖУ¬¹æ¶¨ÁËÉ豸ËùʹÓõÄÐÒé¡¢¶ËµãÇé¿öµÈ¡£Òò´Ë£¬ÕýÈ·µØÌṩÃèÊö·û£¬ÊÇUSB
É豸Õý³£¹¤×÷µÄÏȾöÌõ¼þ¡£
Linux-2.6.26ÄÚºËÖÐÔÚÀûÓÃUSB
gadgetÇý¶¯ÊµÏÖÄ£ÄâUÅÌʱÖ÷񻃾¼°µ½file_storage.c¡¢s3c2410_udc.cµÈÇý
Ïà¹ØÎĵµ£º
´´½¨×ÀÃæÍ¼±ê
Ŀǰ½«ÍøÂçÓ¦ÓÃÀ©Õ¹µ½×ÀÃæÊÇÒ»¸öÇ÷ÊÆ£¬´æÔÚןܶà½â¾ö·½°¸£¬±¾ÎÄÒÔ Mozilla Prism ΪÀý£¬ÀàËÆµÄ·½·¨Í¬ÑùÊÊÓÃÓÚ Google Chrome ¡£
1. µ½ Mozilla Prism µÄÍøÕ¾ÉÏÏÂÔØ Prism£¬µã»÷ Download Now Ö®ºó»áÌáʾÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇÒÔ Mozilla Firefox À©Õ¹µÄ·½Ê½£¬ÊʺÏÒѾ°²×°ÓÐ Firefox µÄÅóÓÑ£»Ò»Ö ......
Ò»¡¢Ê×ÏÈҪ׼±¸±ØÐëµÄÈí¼þ£¬ÎÒÑ¡Óõİ汾ÈçÏ£º
apr-1.4.2£¬ÏÂÔØµØÖ·£ºhttp://archive.apache.org/dist/apr/
apr-util-1.3.9£¬ÏÂÔØµØÖ·£ºhttp://archive.apache.org/dist/apr/
apache£¨httpd-2.2.9£©£¬ÏÂÔØµØÖ·£ºhttp://archive.apache.org/dist/httpd/
SQLite-2.6.23.1£¬ÏÂÔØµØÖ·£ºhttp://www.sqlite.org/
neon- ......
ÍøÂçÉ豸½á¹¹Ì壺
struct sk_bufff{}
ËüµÄ¶¨ÒåÔÚlinux/skbuff.hÖÐ
sk_buff ÖÐÓÐÈý²¿·ÖÐÒéÍ··Ö±ðÃüÃûΪ¡°h,nh,mac¡±
h:Ϊ´«Êä²ãÐÒé(ICMP,IGMP)¡£
nh:ÎªÍøÂç²ãÐÒéÍ·¡£
mac:Á´Â·²ãÐÒéÍ·¡£ Èý¸öÐÒéÍ·ÊÇʹÓÃÁªºÏÌåµÄ£¬ÔÒòÊÇ£¬ÐÒé±¾ÉíÊÇ»¥³âµÄ¡£ ½á¹¹ÌåµÄ¶¨Òå¿ÉÒÔ¿´Í·Îļþ»òÊÇ¡¶ÄÚºË ......
ÔÚFC8ÖÐĬÈϰ²×°µÄÓÐmysql£¬Ã»Óеϰ¿ÉÒԺܷ½±ãµÄ°²×°Ï¡£
ĬÈϵÄmysqlµÄincludeÎļþĿ¼ÔÚ/usr/include/mysql
ĬÈϵÄmysqlµÄlibÎļþ¼ÐÔÚ/usr/lib/mysql
ÕâÁ½¸öĿ¼ÔÚÎÒÃDZàÒëʱºòÐèÒªµ½¡£
ÎҵIJâÊÔÓõÄC´úÂëΪ£º
££include <stdio.h>
#include <stdlib.h>
#include <mysql.h>
#define CONN_HOST ......
ÔÚ32λƽ̨ÉϱàÒ붯̬¿âûÓÐɶÎÊÌ⣬Äõ½x86_64λƽ̨ÉϱàÒëʱ³öÏÖÁËÎÊÌâ¡£
relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
ÕÕ×ÅÌáʾ±àÒë´úÂëµÄʱºò¼ÓÈë -fPICÑ¡Ïî¾Íok.
......