LinuxÄں˼°ARMµÄÄÚ´æ¹ÜÀí
»¶Ó»Øµ½KernelÖÐ……
¼ÌÐøËµ__vet_atagsº¯Êý£¬Õâ¸öº¯ÊýÈԾɶ¨ÒåÔÚarch\arm\kernel\head-common.sÎļþÖУº
/* Determine validity of the r2 atags pointer. The heuristic requires
* that the pointer be aligned, in the first 16k of physical RAM and
* that the ATAG_CORE marker is first and present. Future revisions
* of this function may be more lenient with the physical address and
* may also be able to move the ATAGS block if necessary.
*
* r8 = machinfo
*
* Returns:
* r2 either valid atags pointer, or zero
* r5, r6 corrupted
*/
__vet_atags:
tst r2, #0x3 @ aligned?
bne 1f
ldr r5, [r2, #0] @ is first tag ATAG_CORE?
subs r5, r5, #ATAG_CORE_SIZE
bne 1f
ldr r5, [r2, #4]
ldr r6, =ATAG_CORE
cmp r5, r6
bne 1f
mov pc, lr @ atag pointer is ok
1: mov r2, #0
mov pc, lr
ENDPROC(__vet_atags)
ÓÉTIµÄоƬÊÖ²áÖª£¬OMAP3430µÄSDRAMµØÖ·¿Õ¼ä×Ô0x80000000Æð£¬¼Æ1GB¿Õ¼ä¡£º¯Êý¿ªÊ¼µÄ×¢ÊÍÃ÷È·ÒªÇóATAG±íÐèÒªÔÚRAMÎïÀíµØÖ·Ç°16KB£¬¼´0x80000000-0x80004000·¶Î§ÄÚ£¬r2µÄ0x80000100Âú×ã´ËÒªÇó¡£¼òµ¥µÄÅжÏÁËÒ»ÏÂATAG±íµÄÆðʼµØÖ·ÊÇ·ñ¶ÔÆë£¬ÊÇ·ñÒÔATAG_CORE×÷Ϊ¿ªÍ·±êÖ¾£¬¸Ãº¯Êý·µ»Ø¡£
__create_page_tablesº¯Êý£¬ÕâÊÇÒª·ÖÎöµÄÖØµãº¯Êý£¬¸Ãº¯Êý¾ÍÔÚarch\arm\kernel\head.sÎļþĩβ¡£
ÏÈÀ´¿´Ò»¸öºê¶¨Ò壺
.macro pgtbl, rd
ldr \rd, =(KERNEL_RAM_PADDR - 0x4000)
.endm
KERNEL_RAM_PADDRµÄ¶¨ÒåΪ£º
#define KERNEL_RAM_PADDR (PHYS_OFFSET + TEXT_OFFSET)
PHYS_OFFSETÔÚÎļþarch\arm\plat-omap\include\mach\memory.hÖУ¨ÔõôÕÒµ½ÕâÀïµÄ£¬ÆäʵÊÇarch\arm\kernel\head.sÖаüº¬ÁËarch\arm\include\asm\memory.hÖÐÓÖ°üº¬ÁËarch\arm\plat-omap\include\mach\memory.hµÄÔµ¹Ê……£©¶¨ÒåΪ0x80000000£¬¶øTEXT_OFFSETÔòÐèÒªÔÚMakefileÖÐѰÕÒµ½´ð°¸¡£arch\arm\MakefileÖж¨Òå
……
textofs-y := 0x00008000
……
TEXT_OFFSET := $(textofs-y)
¿É¼û£¬TEXT_OFFSETµÄֵΪ0x00008000£¬Ôٻص½ºêpgtbl£¬¿É¼ÆËã³öKERNEL_RAM_PADDRµÄֵΪ0x80000000+0x00008000=0x80008000×îºó¸³¸ø¼Ä´æÆ÷ֵΪ0x80008000-0x4000=0x
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
Òýµ¼ Linux® ϵͳµÄ¹ý³Ì°üÀ¨ºÜ¶à½×¶Î¡£²»¹ÜÄúÊÇÒýµ¼Ò»¸ö±ê×¼µÄ x86 ×ÀÃæÏµÍ³£¬»¹ÊÇÒýµ¼Ò»Ì¨Ç¶ÈëʽµÄ
PowerPC® »úÆ÷£¬ºÜ¶àÁ÷³Ì¶¼¾ªÈ˵ØÏàËÆ¡£±¾ÎĽ«Ì½Ë÷ Linux
µÄÒýµ¼¹ý³Ì£¬´Ó×î³õµÄÒýµ¼µ½Æô¶¯µÚÒ»¸öÓû§¿Õ¼äÓ¦ÓóÌÐò¡£ÔÚ±¾ÎĽéÉܵĹý³ÌÖУ¬Äú½«Ñ§Ï°µ½¸÷ÖÖÓëÒýµ¼ÓйصÄÖ÷Ì⣬ÀýÈçÒýµ¼¼ÓÔØ³ÌÐò¡¢Äں˽âѹ¡¢³õʼ
RA ......
CHM¸ñʽÊÇÔÚMSϱȽÏÁ÷ÐеÄÒ»ÖÖÎĵµ¸ñʽ£¬¾Ý˵ÊÇMSµÄ¶«Î÷¡£ÒÔǰÔÚLinuxÏÂÒª¿´CHMÎĵµºÜ·³ºÜ·³¡£¾³£ÓбàÂë²»¶Ô£¬¸ñʽ֧³Ö´íÎóʲôµÄ¡£
ÒÔǰ³£Ó÷½·¨È磺ÓÃxchm¡¢ChmSee»òÕßFirefoxµÄCHM Reader²å¼þ¡£µ±È»Ò²Äܽâ¾öÒ»´ó²¿·ÖÎÊÌâ¡£
ÏÖÔÚÕýÊ½ÍÆ¼öÒ»ÖÖCHMä¯ÀÀÆ÷£ºGnochm£¬Gnochm»ùÓÚGtk+£¬ÔËÐпìËÙ£¬¶ÔÖÐÎÄÖ§³ÖÁ¼ºÃ£¬Ö§³ÖÈ«ÎÄË ......
Red Hat LinuxµÄ·ÖÇøÊDz»Í¬ÓÚÆäËü²Ù×÷ϵͳ·ÖÇøµÄ£¬ËüµÄ·ÖÇø¸ñʽֻÓÐExt2£¨Ext3£©ºÍSwapÁ½ÖÖ£¬Ext2£¨Ext3£©ÓÃÓÚ´æ·ÅϵͳÎļþ£¬SwapÔò×÷ΪRed Hat LinuxµÄ½»»»·ÖÇø¡£Red Hat LinuxÖÁÉÙÐèÒªÁ½¸öרÃŵķÖÇø£¨Linux NativeºÍLinux Swap£©¿öÇÒ²»Äܽ«Red Hat Linux°²×°ÔÚDos/Windows·ÖÇø¡£Ò»°ãÀ´ËµÎÒÃǽ«Red Hat Linux°²×°Ò»¸ö»ò¶à ......