Building Bootloader[2] – Preparaing for the implementation

27Dec - by qkim0x01 - 0 - In /Tutorial

There are several programs needed for this tutorial.

NASM

This is the assembler used for this tutorial. You can download it from http://nasm.us

QEMU

This is an emulator. We are going to test the bootloader on x86 hardware using QEMU.

Emulator vs. Virtual Machine

Some people might not have concrete knowledge of differences between Virtual Machine (VM) and emulator. Virtual machine uses hardware resources directly, but it can separate environment with the host machine by using virtualized interfaces. On the other hand, emulator accurately reproduce some hardware behavior.

Since bootloader is closely related with hardware’s behavior, we are going to need to use an emulator for x86 architecture.

GDB

This GNU debugger is going to be useful when you debug bootloader because it is especially harder to debug than other program. For example, the most basic debugging skill, printing results on screen, is not available until you implement the printing function using BIOS interrupt.

 

Leave a Reply

Your email address will not be published. Required fields are marked *