7

Complete beginner question: why do I have to pass an extra kernel binary when running e.g. a Debian image on an emulated Raspberry Pi? So far all the documentations state that the image files are the equivalent of a mass storage device, so if not the bootloader but at least a kernel should be present in them, no? If Qemu simulates a CPU, shouldn't this somehow even require a start from the very beginning, i.e. from the Reset Vector?

Vroomfondel
  • 173
  • 1
  • 5

1 Answers1

2

Older versions of QEMU did not emulate the Raspberry Pi but a "Versatile PB" board.

Therefore a custom "Versatile" kernel is running inside QEMU , the userland of Raspberry Pi images works somewhat fine on top of it (YMMV) - as the whole point of the Linux kernel is to provide this very abstraction.

See here on how to really emulate the Raspberry Pi 2 with QEMU built from source.

flakeshake
  • 6,244
  • 1
  • 16
  • 35