ShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-041Linux2.6lizhiguo0532@163.com2010-6-04----------------------------------------------------------------------------------------------------------------------^_^SDMakefileuImageMakefileuImage*.o1.arm-linux-gnu-ldarch/arm/kernel/vmlinux.ldsarch/arm/kernel/head.oarch/arm/kernel/init_task.obuilt-in.olib/lib.aarch/arm/lib/lib.avmlinuxarch/arm/kernel/vmlinux.lds0xc0008000vmlinux.lds[s1]:ELFkernel,linux^_^[s2]:ShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-042vmlinux.lds2.system.map,3.arm-linux-gnu-objcopyvmlinux-R.note-R.comment3.2March/arm/boot/Image4.gzip-f-9arch/arm/boot/compressed/../Imagearch/arm/boot/compressed/piggy.gzarch/arm/boot/Imagearch/arm/boot/compressed/piggy.gz5.arm-linux-gnu-gccarch/arm/boot/compressed/piggy.Spiggy.gzpiggy.gzarch/arm/boot/compressed/piggy.opiggy.S[s3]:”^_^[s4]:BIN[s5]:incbinsorry,ShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-043piggy.gzpiggy.old6.arm-linux-gnu-ldarch/arm/boot/compressed/piggy.oarch/arm/boot/compressed/head.omisc.oarch/arm/boot/compressedvmlinuxarch/arm/boot/compressed/vmlinux.lds0x0vmlinux.lds27*(.piggydata)piggydatapiggydataImagepiggy.gzvmlinux.lds[s6]:^_^ShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-044.stackarch/arm/boot/compressed/vmlinuxbss_endpiggy.gz7.arm-linux-gnu-objcopyarch/arm/boot/zImage8./bin/sh/home/farsight/Resources/kernel/linux-2.6.14/scripts/mkuboot.sh-Aarm-Olinux-Tkernel-Cnone-a0x30008000-e0x30008000-n'Linux-2.6.14'-darch/arm/boot/zImagearch/arm/boot/uImagemkimagearch/arm/boot/zImage64uImagearch/arm/boot/uImagezImagehead.omisc.ouboot64uImagezImagevmlinux-arch/arm/boot/Image-arch/arm/boot/compressed/piggy.gz-arch/arm/boot/compressed/piggy.o0xc0008000(arch/arm/boot/compressed/vmlinux-arch/arm/boot/zImage)0x00x000000000x00x30008000Imagevmlinux0xc0008000[s7]:.BSSBSS0[s8]:bin[s9]:ShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-0450x0arch/arm/boot/compressed/head.smisc.c1.ubootthekernelr0—r8,r1-r7.2.LC00x00x300080003.0x00x30008000CONFIG_ZBOOT_ROMr2,r3r5,r6,ip,spr6ipgot4.clearbss5.cache4K.align.section.stack,wuser_stack:.space4096ShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-046stackzImage_end4Kstack64Kcache_onmmuhead.SmmucacheD-cache1:1..compressed.head.S-v2-cache_on6.zImageImage0x30008000finalkerneladdresszImagezImage0x0SDRAMubootubootzImage0x30008000Image4MImage0x300080000x30008000kernelImageuImageload0x30008000ImagezreladdruImageloadZreladdrvmlinuxarch/arm/mach-s3c2410/Makefile.bootarch/arm/boot/Makefile[s10]:SP4K[s11]:Cmisc.cmalloc()””[s12]:^_^ShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-047arch/arm/boot/compressed/MakefileZRELADDRvmlinuxImageuImageloadzImageloaduImagezImageubootzImageloadentryuImagezImagemkimageuImage-adataload-eentryarch/arm/boot/Makefile0x30008000ShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-048r4Image0x30008000r5zImager2zImager4=r2,r4=0x30800000Imager2=0x30008000+(zImage+bsssize)+stacksize4K+mallocsize64KzImageImage0x30800000r4+4Mr5,r5=0x30800000r4=30008000zImager4r4+4Mr5,r4=r5=0x300080000x30008000@r0=mallocendordecompressspace,@r1=spendormallocbegin,@r2=mallocend,@r3=architectureIDdecompress_kernelmalloc0x300080007.decompress_kernelinarch/arm/boot/compressed/misc.cShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-049Gunzip()lib/inflate.cgunzipinflate()inflate.cmaloc8.r0r0128addr0,r0,#127bicr0,r0,#127@alignthekernellength9head.S0x30008000R1128r2reloc_startr3reloc_endhead.Scache_clean_flushcachecachereloc_startzImagegdb9.reloc_start[s13]:ShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-0410*r0=decompressedkernellength*r1-r3=unused*r4=kernelexecutionaddress*r5=decompressedkernelstart*r6=processorID*r7=architectureID*r8-r14=unused0x30008000cacher0r1pc0x30008000=0r1=architectureIDarch/arm/kernel/vmlinux.ldsstext1.SVCFIRIRQ2.__lookup_processor_typecp15cpuid.proc.info.initproc_info_listcpu3.__lookup_machine_typeubootmachinearchitecturenumber.arch.info.initmachinenumbermachine_descShenzhenFarsightInc.lizhiguo0532@163.com2010-6-04lizhiguo0532@163.com2010-6-0411……………………arch-arm-kernel-head.Sarch-arm-kernel-head(linux_banner)2.setup_arch(&command_line);/*inarm/kernel/setup.c*/void__initsetup_arch(char**cmdline_p)a.setup_processor()lookup_processor_type()idproc_info_listlistcpu_namecpunameidproc_archsystem_utsname=list-arch_namearmv4telf_platform=list-elf_namev4elf_hwcap=list-elf_hwcap;/*1|2|4*/cpu_proc_init()Cpu-single.h#definecpu_proc_init__cpu_fn(CPU_NAME,_proc_init)#define__cpu_fn(na