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