The first-stage boot using initrd.img

The first stage of the start up process in Android-x86 uses a specific ramdisk initrd.img. The source code can be found at $AOSP/bootable/newinstaller. This project is duplicated from the Android-x86 project. As it is hosted in GitHub, I can make my own changes:

$ ls -1 -F
Android.mk
boot/
editdisklbl/
initrd/
install/

If we look at the contents in this newinstaller folder, we can see the preceding folders and files. The following is the explanation about the content of newinstaller:

  • boot: This is the bootloader for the installation media. The images of Android-x86 can be built into different formats (ISO, UEFI, and so on)
  • editdisklbl: A host tool used to edit system image partitions
  • initrd: The ramdisk for the first-stage boot
  • install : The installer for Android-x86
  • Android.mk : Android Makefile for newinstaller

If we build newinstaller, it can generate a few different image formats, such as ISO, USB, or UEFI. To build a specified image, you can run the following command after you set up the environment and choose a build target:

$ make iso_img/usb_img/efi_img  

Besides an installation image, it also produces another two images, initrd.img and install.img:

  • initrd.img : The ramdisk image for the first stage boot up
  • install.img : The image contains the Android-x86 installer

We will look at the details about both initrd.img and install.img to understand how the first stage boot works in Android-x86.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.225.255.178