I want to try programming for EFI so I created a VM using virtualbox, checked "enable efi" option and left CD empty. The efi shell boots how it should but instead of FS0 i only see BLK0, BLK1 etc. Is there any way to have FS without inserting USB disk (which is displayed as FS)?
Edit: Thanks for your replies. For people who still want to use VB - formatting VB disk with DISKPART using Windows CD solves the problem.
@unixsmurf answer in comments is correct. Your image need file system supported by UEFI. If you can't see fsX
in output of map
command then it means that non of attached block devices (blkX
) contain supported file system. Please create FAT32 partition on your disk, then you will be able to see fsX
in map
output. To switch between file systems use DOS like syntax command ie. fs0:
switch to FS0 file system.
According to UEFI specification 2.5 section 12.3:
EFI encompasses the use of FAT32 for a system partition, and FAT12 or FAT16 for removable media.
I would suggest to use OVMF (Open Virtual Machine Firmware) directly with QEMU not through VirtualBox. Why ?
I wrote beginners tutorial that help setting up development environment needed for UEFI application development using OVMF.
More about OVMF.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With