Linux USB gadgetÉ豸Çý¶¯½âÎö
Ò»¡¢±³¾°ÖªÊ¶
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µÈÇý¶¯Îļþ£¨ÕâЩÎļþµÄ¾ßÌå½á¹¹£¬½«ÔÚÏÂһƪÎÄÕÂÖÐÃèÊö£©¡£´ËʱÎÒÃÇÏëÏÈ´ÓÕâЩ´úÂëÖÐÕÒµ½USBÃèÊöÃèÊö·û£¬´ÓÖÐÈ·¶¨Ê¹ÓõĴ洢Àà¹æ·¶£¬´Ó¶øÈ·¶¨ÐÒ顣ȷ¶¨Í¨Ñ¶ÐÒéÊÇÎÒÃǵ÷ÊԵĻù´¡¡£
´æ´¢Àà¹æ·¶ÊÇÓɽӿÚÃèÊö·û¾ö¶¨µÄ¡£½Ó¿ÚÃèÊö·û¸÷ÏîµÄ¶¨ÒåÒåÈçÏ£º
&n
Ïà¹ØÎĵµ£º
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
Ò»¡¢ÔÚLinuxϲ鿴¶þ½øÖÆÎļþµÄÈí¼þ£º
xxd
hexdump
¶þ¡¢±à¼£º
1¡¢biew
2¡¢hexedit
3¡¢vim
Vim À´±à¼¶þ½øÖÆÎļþ¡£Vim ±¾·ÇΪ´Ë¶øÉè¼ÆµÄ£¬Òò¶øÓÐÈô¸É¾ÖÏÞ¡£µ«ÄãÄܶÁ
ȡһ¸öÎļþ£¬¸Ä¶¯Ò»¸ö×Ö·û£¬È»ºó°ÑËü´æÅÌ¡£½á¹ûÊÇÄãµÄÎļþ¾ÍÖ»ÓÐÄÇÒ»¸ö×Ö·û¸ø¸ÄÁË£¬
ÆäËüµÄ¾Í¸úÔÀ´ÄǸöһģһÑù¡£
Òª±£Ö¤ Vim ±ð°Ñ ......
linuxÊÇÒ»¸öºÜÄÜ×Ô¶¯²úÉúÎļþµÄϵͳ£¬ÈÕÖ¾¡¢Óʼþ¡¢±¸·ÝµÈ¡£ËùÒÔ×Ô´Óɾ³ý¾ÍÏԵĺܷ½±ã¡£
Óï¾äд·¨£º
find ¶ÔӦĿ¼ -mtime +ÌìÊý -name "ÎļþÃû" -exec rm -rf {} \;
Àý1£º
find /u01/backups -mtime +10 -name "*.*" -exec rm -rf {} \;
½«/u01/backupsĿ¼ÏÂËùÓÐ10Ììǰ´ø"."µÄÎļþɾ³ý
find£ºlinuxµÄ²éÕÒÃüÁÓû ......
Ϻ¯Êý£¬´´½¨½ø³ÌÃèÊö·ûÒÔ¼°×Ó½ø³ÌÖ´ÐÐËùÐèÒªµÄËùÓÐÆäËûÊý¾Ý½á¹¹¡£²ÎÊýÓëdo_fork()µÄ²ÎÊýÏàͬ£¬Íâ¼Ó×Ó½ø³ÌµÄpid¡£
static task_t *copy_process(unsigned long clone_flags,unsigned long stack_start,struct pt_regs *regs,unsigned long stack_size,int __user *parent_tidptr,int __user *child_tidptr,int pid)
{
&n ......
¹¦ÄÜ˵Ã÷£ºÁгöĿǰÓë¹ýÈ¥µÇÈëϵͳµÄÓû§Ïà¹ØÐÅÏ¢¡£
¡¡¡¡Óï¡¡¡¡·¨£ºlast [-adRx][-f <¼Ç¼Îļþ>][-n <ÏÔʾÁÐÊý>][ÕʺÅÃû³Æ...][ÖÕ¶Ë»ú±àºÅ...]
¡¡¡¡²¹³ä˵Ã÷£ºµ¥¶ÀÖ´ÐÐlastÖ¸ÁËü»á¶ÁȡλÓÚ/var/logĿ¼Ï£¬Ãû³ÆÎªwtmpµÄÎļþ£¬²¢°Ñ¸Ã¸øÎļþµÄÄÚÈݼǼµÄµÇÈëϵͳµÄÓû§Ãûµ¥È«²¿ÏÔʾ³öÀ´¡£
¡¡¡¡²Î¡¡¡¡Êý£º
......