What do you mean by Bootloader


A boot loader is a small program that runs before operating system. When a computer is switched on , a small program is executed that is stored in ROM along with some small data, needed to access the non volatile devices such as operating system and now the data can be loaded into RAM. The small program needed to start the operation is called Boot Loader. The booting happens by ‘hard’ when a CPU is turned ON and ‘SOFT’ when it is initiated by some hardware (buttton) or by some software program.

In PC, we have BIOS (Basic Input output system), we perform initial stage configuration but this misses in the embedded. Embedded system have boot loader to start the sequence which is in flash memory. Boot loader is different for different board & CPU. The design of SOC (system on chip) mainly affects the boot loader design. Booting sequence is single or multi-stage. Multi-stage provides more complication with better portability.

Functional Blocks of Boot Loader:

  • Main function Module
  • I/O channel driver Module
  • Memory Device Driver Module.

Main function Module

  1. Initialize CPU and set clock rate
  2. Set up stack pointer
  3. Mask all interrupt
  4. Initialize RAM
  5. Initialize LED

I/O channel driver Module

  1. Initialize I/O ports
  2. Informs the status of the board to the user.

Memory Device Drive Module

  1. Initialize memory, register associated with memory ,memory device.
  2. Does memory management and configure memory size, page-size & register.

Some Boot loaders used in embedded system:

  • U-Boot (Universal Boot Loader)
  • RedBoot (RedHat eCos derived)
  • Rrload
  • FILO
  • Alios
You can leave a response, or trackback from your own site.
Leave a Reply to the article

Learning & Certifications
Follow Us
Facebook Icon   Linked In Icon   Twitter Icon  
Validation and Recognition

Valid CSS! Valid HTML5!

Powered by Wordpress