linux zImageÉú³É¹ý³ÌÏê½â
Äں˱àÒëÍê³Éºó»áÉú³ÉzImageÄں˾µÏñÎļþ¡£¹ØÓÚbootloader¼ÓÔØzImageµ½Äںˣ¬²¢ÇÒÌø×ªµ½zImage¿ªÊ¼µØÖ·ÔËÐÐzImageµÄ¹ý³Ì£¬ÏàÐÅ´ó¼Ò¶¼ºÜÈÝÒ×Àí½â¡£µ«¶ÔÓÚzImageÊÇÈçºÎ½âѹµÄ¹ý³Ì£¬¾Í²»ÊÇÄÇôºÃÀí½âÁË¡£±¾ÎĽ«½áºÏ²¿·Ö¹Ø¼ü´úÂ룬½²½âzImageµÄ½âѹ¹ý³Ì¡£
¡¡¡¡ÏÈ¿´¿´zImageµÄ×é³É°É¡£ÔÚÄں˱àÒëÍê³Éºó»áÔÚarch/arm/boot/ÏÂÉú³ÉzImage¡£
¡¡¡¡ÔÚarch/armboot/MakefileÖУº
$(obj)/zImage:¡¡$(obj)/compressed/vmlinux FORCE
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ $(call if_changed,objcopy)
¡¡¡¡Óɴ˿ɼû£¬zImageµÄÊÇelf¸ñʽµÄarch/arm/boot/compressed/vmlinux¶þ½øÖÆ»¯µÃµ½µÄ
¡¡¡¡ÔÚarch/armboot/compressed/MakefileÖУº
$(obj)/vmlinux: $(obj)/vmlinux.lds $(obj)/$(HEAD) $(obj)/piggy.o
¡¡¡¡¡¡ ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ $(addprefix $(obj)/, $(OBJS)) FORCE
¡¡¡¡¡¡ ¡¡¡¡¡¡ $(call if_changed,ld)
$(obj)/piggy.gz: $(obj)/../Image FORCE
¡¡¡¡¡¡ ¡¡¡¡¡¡ $(call if_changed,gzip)
$(obj)/piggy.o:¡¡$(obj)/piggy.gz FORCE
¡¡¡¡ÆäÖÐImageÊÇÓÉÄں˶¥²ãĿ¼ÏµÄvmlinux¶þ½øÖÆ»¯ºóµÃµ½µÄ¡£×¢Ò⣺arch/arm/boot/compressed/vmlinuxÊÇλÖÃÎ޹صģ¬Õâ¸öÓÐÖúÓÚÀí½âºóÃæµÄ´úÂë¡££¬Á´½ÓÑ¡ÏîÖÐÓиö –fpic²ÎÊý£º
¡¡¡¡EXTRA_CFLAGS¡¡:= -fpic¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡×ܽáÒ»ÏÂzImageµÄ×é³É£¬ËüÊÇÓÉÒ»¸öѹËõºóµÄÄÚºËpiggy.o£¬Á¬½ÓÉÏÒ»¶Î³õʼ»¯¼°½âѹ¹¦ÄܵĴúÂ루head.o misc.o£©,×é³ÉµÄ¡£
¡¡¡¡ÏÂÃæ¾ÍÒª¿´ÄÚºËµÄÆô¶¯ÁË£¬ÄÇôÄÚºËÊÇ´ÓʲôµØ·½¿ªÊ¼ÔËÐеÄÄØ£¿Õâ¸öµ±È»Òª¿´ldsÎļþÀ²¡£zImageµÄÉú³É¾ÀúÁËÁ½´Î´óµÄÁ´½Ó¹ý³Ì£ºÒ»´ÎÊǶ¥²ãvmlinuxµÄÉú³É£¬ÓÉarch/arm/boot/vmlinux.lds£¨Õâ¸öldsÎļþÊÇÓÉarch/arm/kernel/vmlinux.lds.SÉú³ÉµÄ£©¾ö¶¨£»ÁíÒ»´ÎÊÇarch/arm/boot/compressed/vmlinuxµÄÉú³É£¬ÊÇÓÉarch/arm/boot/compressed/vmlinux.lds£¨Õâ¸öldsÎļþÊÇÓÉarch/arm/boot/compressed/vmlinux.lds.inÉú³ÉµÄ£©¾ö¶¨¡£zImageµÄÈë¿ÚµãÓ¦¸ÃÓÉarch/arm/boot/compressed/vmlinux.lds¾ö¶¨¡£´ÓÖпÉÒÔ¿´³öÈë¿ÚµãΪ‘_start’
OUTPUT_ARCH(arm)
ENTRY(_start)
SECTIONS
{
¡¡. = 0;
¡¡_text = .;
¡¡.text : {
¡¡¡¡_start = .;
¡¡¡¡*(.start)
¡¡¡¡*(.text)
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ……
}
¡¡¡¡ÔÚarch/arm/boot/compressed/head.SÖÐÕÒµ½Èë¿Úµã.¡£
¡¡¡¡¿´¿´head.S»á×öЩʲôÑ
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍ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ÏÂfile ÃüÁî
¹¦ÄÜ˵Ã÷£º±æÊ¶ÎļþÀàÐÍ¡£
Óï¡¡¡¡·¨£ºfile [-beLvz][-f <Ãû³ÆÎļþ>][-m <ħ·¨Êý×ÖÎļþ>...][Îļþ»òĿ¼...]
²¹³ä˵Ã÷£ºÍ¨¹ýfileÖ¸ÁÎÒÃǵÃÒÔ±æÊ¶¸ÃÎļþµÄÀàÐÍ¡£
²Î¡¡¡¡Êý£º
¡¡-b ¡¡Áгö±æÊ¶½á¹ûʱ£¬²»ÏÔʾÎļþÃû³Æ¡£
¡¡-c ¡¡ÏêϸÏÔʾָÁîÖ´Ðйý³Ì£¬±ãÓÚÅÅ´í»ò·ÖÎö³ÌÐòÖ´ÐеÄÇéÐΡ£
......
LinuxÎļþ²éÕÒÃüÁîfind,xargsÏêÊö
×ªÔØ×Ô http://www.cnblogs.com/starspace/archive/2008/10/20/1315384.html
×ܽ᣺zhy2111314
À´×Ô£ºLinuxSir.Org
ÕûÀí£º±±ÄÏÄϱ±
ÕªÒª£º ±¾ÎÄÊÇfind ÃüÁîµÄÏêϸ˵Ã÷£¬¿É¹óµÄÊÇÕë¶Ô²ÎÊý¾ÙÁ˺ܶàµÄʵÀý£¬´óÁ¿µÄÀýÖ¤£¬ÈóõѧÕ߸üΪÈÝÒ×Àí½â£»±¾ÎÄÊÇzhyflyÐÖÌùÔÚÂÛ̳ÖУ»Î ......
d Ŀ¼
l ·ûºÅÁ´½Ó(Ö¸ÏòÁíÒ»¸öÎļþ)
s Ì×½Ó×ÖÎļþ
b ¿éÉ豸Îļþ
c ×Ö·ûÉ豸Îļþ
p ÃüÃû¹ÜµÀÎļþ
- ÆÕͨÎļþ£¬»òÕ߸ü׼ȷµØËµ²»ÊôÓÚÒÔÉϼ¸ÖÖÀàÐ͵ÄÎļþ
-------------------------------------------------------------
ÎļþȨÏÞ
r´ú±í¿É¶Á
w´ú±í¿Éд
x´ú±í¿ÉÔËÐÐ µ ......