LinuxǶÈëʽÎļþϵͳºáÏò¶Ô±È(ת)
Æäʵ£¬Ã¿Ò»ÖÖLinuxǶÈëʽϵͳÎļþϵͳ¶¼ÓÐÆ䲻ͬµÄ×÷ÓúÍÌص㣬ÌرðÊÇϵͳÎļþ£¬Ëü³ÐÔØ×ÅϵͳÊÇ·ñ¿ÉÒÔ°²È«ÔËÐУ¬Èç¹û³öÏÖ´íÎó£¬ÄÇô½«µ¼ÖÂϵͳÍ˳ö£¬ÑÏÖØÓ°ÏìÎÒÃǵÄʹÓá£Ç¶ÈëʽϵͳÎļþϵͳ±È½Ïjffs2, yaffs, cramfs, romfs, ramdisk, ramfs/tmpfs£¬Linux Ö§³Ö¶àÖÖÎļþϵͳ£¬°üÀ¨ext2¡¢ext3¡¢vfat¡¢ntfs¡¢iso9660¡¢jffs¡¢romfsºÍnfsµÈ£¬ÎªÁ˶Ը÷ÀàÎļþϵͳ½øÐÐͳһ¹ÜÀí£¬LinuxÒýÈëÁËÐéÄâÎļþϵͳVFS(Virtual File System)£¬Îª¸÷ÀàÎļþϵͳÌṩһ¸öͳһµÄ²Ù×÷½çÃæºÍÓ¦Óñà³Ì½Ó¿Ú¡£
¡¡¡¡LinuxÆô¶¯Ê±£¬µÚÒ»¸ö±ØÐë¹ÒÔصÄÊǸùÎļþϵͳ£»Èôϵͳ²»ÄÜ´ÓÖ¸¶¨É豸ÉϹÒÔظùÎļþϵͳ£¬Ôòϵͳ»á³ö´í¶øÍ˳öÆô¶¯¡£Ö®ºó¿ÉÒÔ×Ô¶¯»òÊÖ¶¯¹ÒÔØÆäËûµÄÎļþϵͳ¡£Òò´Ë£¬Ò»¸öϵͳÖпÉÒÔͬʱ´æÔÚ²»Í¬µÄÎļþϵͳ¡£
¡¡¡¡²»Í¬µÄǶÈëʽϵͳÎļþϵͳÀàÐÍÓв»Í¬µÄÌص㣬Òò¶ø¸ù¾Ý´æ´¢É豸µÄÓ²¼þÌØÐÔ¡¢ÏµÍ³ÐèÇóµÈÓв»Í¬µÄÓ¦Óó¡ºÏ¡£ÔÚǶÈëʽLinuxÓ¦ÓÃÖУ¬Ö÷ÒªµÄ´æ´¢É豸Ϊ RAM(DRAM, SDRAM)ºÍROM(³£²ÉÓÃFLASH´æ´¢Æ÷)£¬³£ÓõĻùÓÚ´æ´¢É豸µÄÎļþϵͳÀàÐÍ°üÀ¨£ºjffs2, yaffs, cramfs, romfs, ramdisk, ramfs/tmpfsµÈ¡£
1. »ùÓÚFLASHµÄLinuxǶÈëʽÎļþϵͳ
¡¡¡¡Flash(ÉÁ´æ)×÷ΪǶÈëʽϵͳµÄÖ÷Òª´æ´¢Ã½½é£¬ÓÐÆä×ÔÉíµÄÌØÐÔ¡£FlashµÄдÈë²Ù×÷Ö»ÄܰѶÔӦλÖõÄ1ÐÞ¸ÄΪ0£¬¶ø²»ÄÜ°Ñ0ÐÞ¸ÄΪ1(²Á³ýFlash¾ÍÊǰѶÔÓ¦´æ´¢¿éµÄÄÚÈݻָ´Îª1)£¬Òò´Ë£¬Ò»°ãÇé¿öÏ£¬ÏòFlashдÈëÄÚÈÝʱ£¬ÐèÒªÏȲÁ³ý¶ÔÓ¦µÄ´æ´¢Çø¼ä£¬ÕâÖÖ²Á³ýÊÇÒÔ¿é(block)Ϊµ¥Î»½øÐеġ£
¡¡¡¡ÉÁ´æÖ÷ÒªÓÐNORºÍNANDÁ½ÖÖ¼¼Êõ(¼òµ¥±È½Ï¼û¸½Â¼)¡£Flash´æ´¢Æ÷µÄ²Áд´ÎÊýÊÇÓÐÏ޵ģ¬NANDÉÁ´æ»¹ÓÐÌØÊâµÄÓ²¼þ½Ó¿ÚºÍ¶ÁдʱÐò¡£Òò´Ë£¬±ØÐëÕë¶ÔFlashµÄÓ²¼þÌØÐÔÉè¼Æ·ûºÏÓ¦ÓÃÒªÇóµÄÎļþϵͳ£»´«Í³µÄǶÈëʽϵͳÎļþϵͳÈçext2µÈ£¬ÓÃ×÷FlashµÄÎļþϵͳ»áÓÐÖî¶à±×¶Ë¡£
¡¡¡¡ÔÚǶÈëʽLinux Ï£¬MTD(Memory Technology Device,´æ´¢¼¼ÊõÉ豸)Ϊµ×²ãÓ²¼þ(ÉÁ´æ)ºÍÉϲã(Îļþϵͳ)Ö®¼äÌṩһ¸öͳһµÄ³éÏó½Ó¿Ú£¬¼´FlashµÄÎļþϵͳ¶¼ÊÇ»ùÓÚMTDÇý¶¯²ãµÄ(²Î¼ûÉÏÃæµÄLinuxϵÄÎļþϵͳ½á¹¹Í¼)¡£Ê¹ÓÃMTDÇý¶¯³ÌÐòµÄÖ÷ÒªÓŵãÔÚÓÚ£¬ËüÊÇרÃÅÕë¶Ô¸÷ÖÖ·ÇÒ×ʧÐÔ´æ´¢Æ÷(ÒÔÉÁ´æΪÖ÷)¶øÉè¼ÆµÄ£¬Òò¶øËü¶ÔFlashÓиüºÃµÄÖ§³Ö¡¢¹ÜÀíºÍ»ùÓÚÉÈÇøµÄ²Á³ý¡¢¶Á/д²Ù×÷½Ó¿Ú¡£Ë³±ãÒ»Ìᣬһ¿éFlashоƬ¿ÉÒÔ±»»®·ÖΪ¶à¸ö·ÖÇø£¬¸÷·ÖÇø¿ÉÒÔ²ÉÓò»Í¬µÄÎļþϵͳ£»Á½¿éFlashоƬҲ¿ÉÒԺϲ¢ÎªÒ»¸ö·ÖÇøʹÓ㬲ÉÓÃÒ»¸öÎļþϵͳ¡£¼´ÎļþϵͳÊÇÕë¶
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌṩÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
#pragma once
#include <pthread.h>
class ThreadWrapper
{
public:
virtual ~ThreadWrapper();
static void EnterFunc(void *p);
int Open();
int Close();
bool TestCancel();
void ......
ʹÓÃselectº¯Êý¿ÉÒÔÒÔ·Ç×èÈûµÄ·½Ê½ºÍ¶à¸ösocketͨÐÅ¡£³ÌÐòÖ»ÊÇÑÝʾselectº¯ÊýµÄʹÓ㬹¦Äܷdz£¼òµ¥£¬¼´Ê¹Ä³¸öÁ¬½Ó¹Ø±ÕÒÔºóÒ²²»»áÐ޸ĵ±Ç°Á¬½ÓÊý£¬Á¬½ÓÊý´ïµ½×î´óÖµºó»áÖÕÖ¹³ÌÐò¡£
1. ³ÌÐòʹÓÃÁËÒ»¸öÊý×éfd_A£¬Í¨ÐÅ¿ªÊ¼ºó°ÑÐèҪͨÐŵĶà¸ösocketÃèÊö·û¶¼·ÅÈë´ËÊý×é¡£
2. Ê×ÏÈÉú³ÉÒ»¸ö½Ðsock_fdµÄsocketÃèÊö·û£¬ÓÃÓÚ¼àÌý¶Ë¿ ......
stat½á¹¹µÄ³ÉÔ±ÔÚ²»Í¬µÄunixÖлáÓÐËù±ä»¯.. µ«Ò»°ã¶¼°üº¬ÒÔÏÂËùʾµÄÄÚÈÝ£º
St_mode ÎļþȨÏÞºÍÎļþÀàÐÍÐÅÏ¢¡£
st_ino Óë¸ÃÎļþ¹ØÁªµÄinode
st_dev ±£´æÎļþµÄÉ豸
st_uid ÎļþÊôÖ÷µÄUIDºÅ
st_gid ......