20200712]qemu仿真树莓派buster kernel-qemu-4.19.50-buster


 

环境:

windows 7/10

 

一、下载QEMU,安装

  https://www.qemu.org/download/#windows

  我的电脑是64位,下载的 qemu-w64-setup-20200612.exe

  安装时有选项,安装arm的即可,其他的cpu架构可以不装。

 

二、准备内核和镜像

  由于arm版本的不同,我们使用网上已经编译好的内核版本和树配置文件

  https://github.com/dhruvvyas90/qemu-rpi-kernel

  直接全部用git pull下来或者仅下载: kernel-qemu-4.19.50-buster 、 versatile-pb-buster.dtb

  去官网下载img:

        http://downloads.raspberrypi.org/raspbian_lite/images/

   http://downloads.raspberrypi.org/raspbian_full/images/

 

  kernel-qemu-4.19.50-buster —— Linux内核

  versatile-pb-buster.dtb —— 设备树

  2019-09-26-raspbian-buster-lite.img —— 树莓派精简版镜像,没有GUI,实际上只用到里面的配置、驱动、根文件系统,里面的 Linux内核、设备树未使用

  2020-05-27-raspios-buster-full-armhf.img —— 树莓派完整版镜像,有GUI画面,实际上只用到里面的配置、驱动、根文件系统,里面的 Linux内核、设备树未使用

 

 

三、准备环境

   直接运行下列命令,或者写一个bat脚本:

cd C:\Program Files\qemu
qemu-system-arm.exe -M versatilepb -cpu arm1176 -m 256 -drive format=raw,file=C:\share\qemu-rpi-kernel\2019-09-26-raspbian-buster-lite.img -net nic -net user,hostfwd=tcp::5022-:22 -dtb C:\share\qemu-rpi-kernel\versatile-pb-buster.dtb -kernel C:\share\qemu-rpi-kernel\kernel-qemu-4.19.50-buster -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw"

 

解释: cd C:\Program Files\qemu ——这是转到安装目录,你安装在哪儿就改成哪儿

    qemu-system-arm.exe——

     -m 256 —— 内存大小

    file=C:\share\qemu-rpi-kernel\2019-09-26-raspbian-buster-lite.img —— img的绝对地址,我这里全部用的绝对地址,各位读者根据自己的文件路径自行修改

     -net user,hostfwd=tcp::5022-:22 —— 将qemu虚拟机的22端口映射到windows主机的127.0.0.1:5022端口,就是换了个马甲

    其他选项不懂

 

这些配置参数不是最佳的,建议阅读:

https://wiki.qemu.org/Documentation/Platforms/ARM 

 

或者使用带GUI的完全版:

cd C:\Program Files\qemu
qemu-system-arm.exe -M versatilepb -cpu arm1176 -m 256 -drive format=raw,file=C:\share\qemu-rpi-kernel\2020-05-27-raspios-buster-full-armhf.img -net nic -net user,hostfwd=tcp::5022-:22 -dtb C:\share\qemu-rpi-kernel\versatile-pb-buster.dtb -kernel C:\share\qemu-rpi-kernel\kernel-qemu-4.19.50-buster -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw"

 

开机时间较长,启动后现象:

 

默认用户名:pi 密码:raspberry 

 

2020-05-27-raspios-buster-full-armhf.img开机后是这样的:

 

 

另外,只用:2019-09-26-raspbian-buster-lite.img 也是可以的,我试过这个windows 脚本:

cd C:\Program Files\qemu

qemu-system-aarch64.exe ^
-M raspi3 ^
-cpu cortex-a53 ^
-dtb C:\ctures\qemu-rpi-kernel\bcm2710-rpi-3-b.dtb ^
-kernel C:\ctures\qemu-rpi-kernel\kernel8.img ^
-drive id=hd-root,format=raw,file=C:\ctures\qemu-rpi-kernel\2019-09-26-raspbian-buster-lite.img ^
-m 1024 ^
-show-cursor ^
-append "rw earlyprintk=ttyAMA0,115200 loglevel=8 console=ttyAMA0,115200 root=PARTUUID=6c586e13-02 rootfstype=ext4 rootwait" ^
-serial mon:stdio 

cd C:\Program Files\qemu

qemu-system-aarch64.exe ^
-M raspi3 ^
-cpu cortex-a53 ^
-dtb C:\ctures\qemu-rpi-kernel\bcm2710-rpi-3-b.dtb ^
-kernel C:\ctures\qemu-rpi-kernel\kernel8.img ^
-drive id=hd-root,format=raw,file=C:\ctures\qemu-rpi-kernel\2019-09-26-raspbian-buster-lite.img ^
-m 1024 ^
-show-cursor ^
-append "rw earlyprintk=ttyAMA0,115200 loglevel=8 console=ttyAMA0,115200 root=PARTUUID=6c586e13-02 rootfstype=ext4 rootwait" ^
-serial mon:stdio

 

其中的 bcm2710-rpi-3-b.dtb 、 kernel8.img 都是从 2019-09-26-raspbian-buster-lite.img 解压出来的,原汤化原食。

也是可以启动,而且使用的cpu和内存都更好。其他功能没有继续研究,有时间的读者请研究下更好的命令组合。 

 

 ——————————————————————————————————————————————————————————————————————————————————

下边是使用方法:

开启ssh:

输入命令:sudo raspi-config

 

 

 

 

 

用putty做ssh连接:

 

 

 

yes记录密钥,然后登录

 

 

 用vscode远程调试:革命性的新方法,非常好用

https://zhuanlan.zhihu.com/p/64849549

 

 

部分内容参考过:https://www.cnblogs.com/qpanda/p/11534455.html

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM