• Uncategorized

About x86 : VirtualBox—No-bootable-medium-found

Question Detail

There are a lot of question on stackoverflow with the similar title. I read all of them, but none of them answers my problem. This is why I opened this question.

I am creating an operating system in assembler and C. I found that I must compile C code to binary format, extract text section and save it as a file, then convert it to ISO, then mount it to virtual optical dive of diskete and then load my OS in VirtualBox. So, that is a lot of work I want to avoid. I don’t want to convert my binary file to ISO every time.

So, I decided to put the binary machine code of my OS to virtual hard drive (VDI file) and then set it to the top of boot order and load it instead of loading from virtual optical drive ISO.

I was researching how VDI works and I found that it is usually dinamically allocated and that only the beginning of data is stored. So, the start of VDI represents a header and the the rest is actual data stored on virtual drive. So, I found that data starts at some address (in my case it is 0x00200000 from the start of the VDI file).

Then, I basically filled from that address to the end of VDI file with pattern 55 AA. So, I suppose it now means that the disk is bootable (because at the end of first sector is still signature 55 AA).

I started virtual machine and it says:

No bootable medium found! System halted

Is there any way to solve this? Why is my virtual disk still not bootable?


Here is actual VDI file: 1.vdi

Question Answer

You may also like...

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.