Currently I have the firmware code for a device running on Raspberry Pi. I want to use a linux computer that I have to test the device out using a virtual machine like Virtual Box (To connect it to server for example).
So my question is, to what extent can raspberry pi's functions be emulated by a virtual machine, compared to bare metal? What are the things a RPI system running on bare metals can do, that a virtual machine-emulated RPI cannot do? Can the emulator do firmware code testing, and server testing, for example?