This the following minimum boot sequence 1) Bootloader loads the Kernel image to Ram The image may be compressed or uncompressed.Uboot uses a special header in added to the kernel image and make it as uImage. Using mkimage we can make the image zImage/vmLinux 2) Ramdisk loaded in the memory, bootloader do that. 3) Control is given to kernel ,it also provides kernel arguments/command line options.Also bootlader set ramdisk as rootfs. Initial Rootfs filesystem may be of ext2 or minix format. **initramfs** is the file can be unpacked by kerne l of following formats **..****[gzip]( "Gzip"), [bzip2]( "Bzip2"), [LZMA]( "LZMA"), [XZ]( "Xz") and [LZO]( "LZO").** 3) Then “linuxrc” ran from initial ramdisk. 4) The root device is changed to that specified in the kernel parameter. 5) The init program `/etc/init` is run which will perform the user configurable boot sequence. if rdinit is used then specified binary is called.
qemu-system-arm -M versatilepb -m 128M -kernel linux-3.5.3/arch/arm/boot/uImage -initrd rootfs3.img.gz -append “rdinit=/sbin/init” That means roofs is rootfs3.img.gz and run /sbin/init from mounted rootfs.In this command we run the uImage kernel on qemu arm emulator which is emulation versatilepb arm architechture.