在上一篇「Raspberry Pi 4 樹莓派試玩」裡,先是介紹了如何安裝 Ubuntu,本篇就要介紹如何使用其 Hardware Virtualization 的硬體功能,來加速 QEMU ARM64 Guest,以加速嵌入式系統的開發。
本篇較為簡短,讀者主要是要先參考「以 QEMU 加速嵌入式系統開發」這篇,瞭解如何在一般的 x86 Ubuntu 上利用 QEMU 開發 ARM64 專案。接著,在樹莓派安裝好後,套用相同的流程,「直接」在其上編譯 Buildroot 與 Kernel 4.4。
由於是在樹莓派上做編譯,時間會有點久,約需60分左右。或者可以在 x86 編譯完,在將關鍵的 kernel image 與 rootfs 複製到樹莓派執行,只是這樣會稍微麻煩一點。
差異部份
最主要的差異部份,在於最後執行的 runqemu 腳本內的 qemu-system-aarch64 的執行參數。其差異的部份如下:
可以看到樹莓派指定了與系統相同的 CPU 與開啟了 KVM 的加速,所以可以達到較好的表現。
在使用 KVM 時會需要root權限,要使用 sudo 來執行。或者可以將用戶加入 kvm 群組,就可以利用 kvm 功能。
1 |
sudo usermod -a -G kvm ubuntu |
群組加入後,需重登入才能生效。
其它命令
在開發系統時,樹莓派只是拿來做模擬而已,程式編譯主要還是在 x86 上做。這時就會需要檔案共用,可以在樹莓派上使用下面的 mount 命令,來掛載 samba 系統,直接共用x86編好的檔案。
1 |
mount -t cifs //192.168.1.100/aarch64_dev /aarch64_dev/ -o username=user,file_mode=0777,dir_mode=0777 |
結語
由於主要的內容都在另外兩篇文章內,本文主要是提出關鍵的部份,讓開發者可以在樹莓派4上進行 ARM64 模擬。如有不清楚的部份,可回頭在看一下之前的文章。
Latest Comments