我正在尝试使用QEMU使用Raspian OS模拟Raspberry Pi.我尝试过在互联网上描述的几种方法但没有任何成功.
我想我需要修补一个适合所需操作系统的Linux内核.在我的例子中,我选择了带有内核4.4的Rasbian Lite:
wget https://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2016-05-31/2016-05-27-raspbian-jessie-lite.zip
unzip 2016-05-27-raspbian-jessie-lite.zip
rm 2016-05-27-raspbian-jessie-lite.zip
Run Code Online (Sandbox Code Playgroud)
接下来,我从https://www.kernel.org/加载内核:
wget https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.4.16.tar.gz
tar -xzf linux-4.4.16.tar.gz
rm linux-4.4.16.tar.gz
Run Code Online (Sandbox Code Playgroud)
现在交叉编译内核:
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabi-
cd linux-4.4.16
make vexpress_defconfig
make all
cd ..
Run Code Online (Sandbox Code Playgroud)
现在我可以将启动映像(即在RAM中自动提取的压缩内核映像)复制到我的工作区:
cp linux-4.4.16/arch/arm/boot/zImage zImage
Run Code Online (Sandbox Code Playgroud)
并运行QEMU
qemu-system-arm -kernel zImage -M vexpress-a9 -m 1024 -cpu cortex-a9 -no-reboot -serial stdio -hda 016-05-27-raspbian-jessie-lite.img -append "root=/dev/sda2 rootfstype=ext4"
Run Code Online (Sandbox Code Playgroud)
但我所看到的只是一个黑色的QEMU窗口.:(
我认为问题是获得正确的内核.从Internet复制某些内核从未取得成功,因为它们不适合操作系统.
如何构建/修补适合操作系统的内核(不下载现有的内核)以及如何正确运行QEMU?
先谢谢
Alex
我kernel-qemu从这里加载一个https://www.dropbox.com/s/g8u93xblz1v1ly0/kernel-qemu?dl=0并用它运行QEMU:
qemu-system-arm -kernel kernel-qemu -cpu arm1176 -m 256 -M versatilepb -no-reboot -serial …Run Code Online (Sandbox Code Playgroud)