A simple FAT32 bootloader written in assembly to boot from USB drives.
It can load the first file( which should be a file less than 4096 bytes) which is located in a USB drive with a FAT32 file system to the memory and hand over the execution to that program.
-
Compile the bootloader.
nasm <path of the bootloader> f bin o boot.bin
-
Unmount the USB device.
sudo umount <absolute path of the device>
-
Format the USB device to FAT32 file system.
sudo /sbin/mkdosfs F 32 <absolute path of the device>
-
Copy the Bootloader to the USB device.
sudo dd if=boot.bin of=<absolute path of the device>
-
Copy the compiled kernel to the USB device (just as you copy any usual file to the USB device).
-
Restart the computer and boot from the USB device!.
More information can be found in the pdf in the doc folder. Don't forget to leave a comment in http://blog.ishans.info/2012/01/19/a-simple-fat32-bootloader-written-in-assembly-to-boot-from-usb-drives/