linux ÖеÄstruct resource
linux¶Ô¹Ò½ÓÔÚ4G×ÜÏ߿ռäÉϵÄÉ豸ʵÌåµÄ¹ÜÀí·½Ê½ -- struct resource /usr/src/linux-2.6.21.5/include/linux/ioport.h struct resource { resource_size_t start; resource_size_t end; const char *name; unsigned long flags; struct resource *parent, *sibling, *child; }; struct resource_list { struct resource_list *next; struct resource *res; struct pci_dev *dev; }; Ò»¸ö¶ÀÁ¢µÄ¹Ò½ÓÔÚcpu×ÜÏßÉϵÄÉ豸µ¥Ôª,Ò»°ã¶¼ÐèÒªÒ»¶ÎÏßÐԵĵØÖ·¿Õ¼äÀ´ÃèÊöÉ豸×ÔÉí,linuxÊÇÔõô¹ÜÀíËùÓеÄÕâЩÍⲿ"ÎïÀíµØÖ··¶Î§¶Î",½ø¶ø¸øÓû§ºÍlinux×ÔÉíÒ»¸ö±È½ÏºÃµÄ¹Û²ì4G×ÜÏßÉϹҽӵÄÒ»¸ö¸öÉ豸ʵÌåµÄ¼ò½à¡¢Í³Ò»¼¶ÁªÊÓͼµÄÄØ? linux²ÉÓÃstruct resource½á¹¹ÌåÀ´ÃèÊöÒ»¸ö¹Ò½ÓÔÚcpu×ÜÏßÉϵÄÉ豸ʵÌå(32λcpuµÄ×ÜÏßµØÖ··¶Î§ÊÇ0~4G): resource->startÃèÊöÉ豸ʵÌåÔÚcpu×ÜÏßÉϵÄÏßÐÔÆðʼÎïÀíµØÖ·; resource->end -ÃèÊöÉ豸ʵÌåÔÚcpu×ÜÏßÉϵÄÏßÐÔ½áβÎïÀíµØÖ·; resource->name ÃèÊöÕâ¸öÉ豸ʵÌåµÄÃû³Æ,Õâ¸öÃû×Ö¿ª·¢ÈËÔ±¿ÉÒÔËæÒâÆð,µ«×îºÃÌùÇÐ; resource->flag ÃèÊöÕâ¸öÉ豸ʵÌåµÄһЩ¹²ÐÔºÍÌØÐԵıê־λ; Ö»ÐèÒªÁ˽âÒ»¸öÉ豸ʵÌåµÄÒÔÉÏ4Ïî,linux¾ÍÄܹ»ÖªÏþÕâ¸ö¹Ò½ÓÔÚcpu×ÜÏßµÄÉϵÄÉ豸ʵÌåµÄ»ù±¾Ê¹ÓÃÇé¿ö,Ò²¾ÍÊÇ[resource->start, resource->end]Õâ¶ÎÎïÀíµØÖ·ÏÖÔÚÊÇ¿ÕÏÐ×ÅÄØ,»¹ÊDZ»Ê²Ã´É豸ռÓÃ×ÅÄØ? linux»á¼á¾ö±ÜÃ⽫һ¸öÒѾ±»Ò»¸öÉ豸ʵÌåʹÓõÄ×ÜÏßÎïÀíµØÖ·Çø¼ä¶Î[resource->start, resource->end],ÔÙ·ÖÅ䏸ÁíÒ»¸öºóÀ´µÄÒ²ÐèÒªÕâ¸öÇø¼ä¶Î»òÕßÇø¼ä¶ÎÄÚ²¿·ÖµØÖ·µÄÉ豸ʵÌå,½ø¶ø±ÜÃâÉ豸֮¼ä³öÏÖ¶Ôͬһ×ÜÏßÎïÀíµØÖ·¶ÎµÄÖØ¸´ÒýÓÃ,¶øÔì³É¶ÔΨһÎïÀíµØÖ·µÄÉ豸ʵÌå¶þÒåÐÔ. ÒÔÉϵÄ4¸öÊôÐÔ½ö½öÓÃÀ´ÃèÊöÒ»¸öÉ豸ʵÌå×ÔÉí,»òÕßÊÇÉ豸ʵÌå¿ÉÒÔÓÃÀ´×ÔÖεĵ¥Ôª,µ«ÊÇÕâ²»ÊÇlinuxËùÏëµÄ,linuxÐèÒª¹ÜÀí4GÎïÀí×ÜÏßµÄËùÓпռä,ËùÒÔ¹Ò½Óµ½×ÜÏßÉϵÄÐÎÐÎɫɫµÄ¸÷ÖÖÉ豸ʵÌå,Õâ¾ÍÐèÒªÁ´ÔÚÒ»Æð,Òò´Ëresource½á¹¹ÌåÌṩÁËÁíÍâ3¸ö³ÉÔ±:Ö¸Õëparent¡¢siblingºÍchild£º·Ö±ðΪָÏò¸¸Çס¢ÐֵܺÍ×Ó×ÊÔ´µÄÖ¸Õë¡£ ÒÔroot sourceΪÀý£¬root->child(*pchild)Ö¸ÏòrootËùÓк¢×ÓÖеØÖ·¿Õ¼ä×îСµÄÒ»¸ö£»pchild->siblingÊÇÐÖµÜÁ´±íµÄ¿ªÍ·£¬Ö¸Ïò±È×Ô¼ºµØÖ·¿Õ¼ä´óµÄÐֵܡ£ ÎïÀíÄÚ´æÒ³ÃæÊÇÖØÒªµÄ×ÊÔ´¡£´ÓÁíÒ»¸ö½Ç¶È¿´£¬µØÖ·¿Õ¼ä±¾Éí£¬»òÕßÎïÀí´æ´¢Æ÷ÔÚµØÖ·¿Õ¼äÖеÄλÖã¬Ò²ÊÇÒ»ÖÖ×ÊÔ´£¬Ò²Òª¼ÓÒÔ¹ÜÀí -- resource¹ÜÀíµØÖ·¿Õ¼ä×ÊÔ´¡£ ÄÚºËÖÐÓÐÁ½¿ÃresourceÊ÷£¬Ò»¿ÃÊÇiomem_resour
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,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 ......
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
Linux¸ùĿ¼”/“ϸ÷¸öϵͳÎļþ¼ÐµÄº¬ÒåºÍÓÃ;
/boot ¸ÃĿ¼ĬÈÏÏ´æ·ÅµÄÊÇLinuxµÄÆô¶¯ÎļþºÍÄںˡ£
/initrd ËüµÄÓ¢Îĺ¬ÒåÊÇboot loader initialized RAM disk,¾ÍÊÇÓÉboot loader³õʼ»¯µÄÄÚ´æÅÌ¡£ÔÚlinuxÄÚºËÆô¶¯Ç°£¬boot loader»á½«´æ´¢½éÖÊ(Ò»°ãÊÇÓ²ÅÌ)ÖеÄinitrdÎļþ¼ÓÔØµ½Äڴ棬ÄÚºËÆô¶¯Ê±»áÔÚ·ÃÎÊÕæÕýµÄ¸ ......
ÏÂÃæÕâЩÃüÁîÔÚRedHat & CentOSÏÂʹÓÃÓÐЧ£¬ÆäËûϵͳûÓбȽϹý
²é¿´CPUÐÅÏ¢£¬¿ÉÒÔÏÔʾµ½ºË
Ïêϸ
#cat /proc/cpuinfo
´ÖÂÔ
#grep "model name" /proc/cpuinfo
²é¿´ÄÚ´æ
#grep MemTotal /proc/meminfo
#free
²é¿´ÊÇ32»¹ÊÇ64λ
# ls /
#Èç¹ûÓÐlib64»òÕâ¸öĿ¼,ÄDzÙ×÷ϵͳ¾ÍÊÇ64λµÄ
#getconf LONG_BIT ......