boot-loader

Does Boot loader mind kernel import declarations?

I wonder whether the Windows XP bootloader (ntldr) actually makes use of the Windows kernel (ntoskrnl.exe) import declarations? ntoskrnl.exe has following imported modules: BOOTVID.dll, HAL.dll and KDCOM.dll. So these three modules are the first ones to be loaded. Imagine that the kernel has another module declared as imported. Will th...

Real Mode, Interrupt vector replacement Crashing

I'm trying to learn more about how systems really work underneath all the pretty graphics on top. So I'm currently playing with memory in the 512bytes that the BIOS loads on startup, can't really call it a bootloader at the moment I guess. Anyway, I'm replacing an interrupt vector but having issues with it. After replacing interupt 09h (...

Why do boot loaders relocate in memory?

I am writing a boot loader, and I've got most of the details down, but I am not sure why some boot loaders relocate themselves in memory before they begin the bulk of their execution. Can anyone explain this? An example of this behavior is the original v0.01 Linux kernel bootloader which has the following comment in it: boot.s is load...

how to setup irq with masm

How can I setup IRQ using C++ and Masm, most of the search results refer me to Nasm, I am trying to create a bootloader of my own, I get it to boot from cd (iso) then I want to add menu options but cant seem to setup IRQ An example that uses nasm can be found at Bran's Kernel Development looking something like global irq0 ; 32: IRQ0 i...

Simple VM That allows booting from folder or disk

I was wondering if there was a very simple and free virtual machine that would allow you to boot from a folder or disk image that couldn't damage my hard disk. I am using a MacBook and am looking into operating system programming. I found a tutorial on the internet that looked promising (http://www.viralpatel.net/taj/tutorial/hello_world...

Write custom boot loader to .vhd file

I have a custom boot loader that I would like to write to a .VHD file for testing. Any idea at what offset in the file I should write the boot loader to? Any pointers to the C structures for the .VHD file format? ...