http://duartes.org/gustavo/blog/post/how-computers-boot-up
this is for x86, not for ARM though. On Wed, Feb 6, 2013 at 10:30 AM, Peter Teoh <[email protected]> wrote: > > normally in embedded uboot is the bootloader. and to trace this is > simple: > > a. understand how uboot works - and this is highly platform specific > (uboot is highly hardware dependent)...and examine the point where control > passed is passed to kernel image file (which still run at 16 bit real > mode), and from there u can trace everything. > > b. well u need assembly, as everything starting is written in assembly. > for ARM (as u asked for Android), the place is "start_kernel" inside: > > arch/arm/kernel/head-common.S > > and then u must learn linker scripting (for ARM is > arm/kernel/vmlinux.ld.S) as well, that is how u tell the compiler to > generate a image that can be loaded directly into memory and executed > directly on the hardware in memory - using the hardware-specific reset > vector as the starting point. there is no loader at this stage to load > the binary. (uboot will load it as a image, but executeable). > > the rest is yours... > > On Mon, Feb 4, 2013 at 12:34 PM, Ranganath T.M <[email protected]>wrote: > >> Hi All, >> >> I am trying to find out how the kernel will *start* from the uboot and >> how the kernel will call there respective static modules which are built as >> *.o* file and also how the *probe* of every modules will be called. >> >> Thanks And Regards >> Ranganath >> >> _______________________________________________ >> Kernelnewbies mailing list >> [email protected] >> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies >> >> > > > -- > Regards, > Peter Teoh > -- Regards, Peter Teoh
_______________________________________________ Kernelnewbies mailing list [email protected] http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
