簡介
一般嵌入式作業系統因為它的特殊性,往往和硬體平臺密切相關連,具體的嵌入式作業系統往往只能在特定的硬體上執行。對於剛接觸
OneOS-Lite
作業系統的讀者要想馬上獲得一個和
OneOS-Lite
作業系統相配套的硬體模組並不容易,但隨著計算機技術的發展,我們可以採用軟體方式來模擬一個能夠執行
OneOS-Lite
作業系統的硬體模組,這就是
ARM
公司的
MDK-ARM(Keil)
模擬模擬環境。
MDK虛擬硬體環境
MDK-ARM(MDK-ARM Microcontroller Development Kit,也稱為Keil)
軟體是一套完整的整合開發環境(IDE),它出自
ARM
公司,包括了針對
ARM
晶片(
ARM7
、
ARM9
、
Cortex-M
系列、
Cortex-R
系列等)的高效
C/C++
編譯器;針對各類
ARM
裝置、評估板的工程嚮導和工程管理;用於軟體模擬執行硬體平臺的模擬器;以及與市面上常見的如
ST-Link
,
JLink
等線上模擬器相連線以配合除錯目標板的偵錯程式。
MDK-ARM
軟體中的軟體模擬模擬器,採用完全軟體模擬方式解釋執行 ARM 的機器指令,並實現外圍的一些外設邏輯,從而構成一套完整的虛擬硬體環境,使得使用者能夠不借助真實的硬體平臺就能夠在電腦上執行相應的目標程式。
MDK-ARM
整合開發環境因為其完備的
STM32F103
軟體模擬環境,也讓我們有機會在不使用真實硬體環境的情況下直接在電腦上執行目的碼。這套軟體模擬模擬器能夠完整地虛擬出
ARM Cortex-M3
的各種執行模式、外設,如中斷異常、時鐘定時器、串列埠等,這幾乎和真實的硬體環境完全一致。實踐也證明,本文使用到的這份
OneOS-Lite
入門例程,在編譯成二進位制程式碼後,不僅能夠在模擬器上執行,也能夠在不加任何修改的情況下在真實硬體平臺上正常執行。
下面我們將選擇
MDK-ARM
整合開發環境作為目標硬體平臺來觀察
OneOS-Lite
作業系統是如何執行的。
準備工作
準備工程如下:
安裝 5。14 版本及以上的
MDK-ARM (Keil)
整合開發環境(具體安裝過程參見MDK環境搭建),在安裝好
MDK-ARM
整合開發環境後,再安裝
STM32F1xx\_DFP PACK
包;
下載一份完整的
OneOS-Lite
程式碼,該程式碼已上線gitee,可直接訪問並clone,地址如下:gitee: https://gitee。com/cmcc-oneos/OneOS-Lite
開啟使用Keil模擬器的示例工程
進入到
oneos-lite\projects\stm32f103rc
目錄中,雙擊
“project。uvprojx”
檔案,開啟
stm32f103rc
的
Keil
工程檔案,見下圖:
編譯和模擬
見下圖:
開啟模擬器串列埠、執行程式並觀察SHELL介面
見下圖:
執行help命令
透過
help
命令可以檢視當前系統支援的命令:
檢視記憶體堆使用情況
其中
mem
是檢視記憶體堆使用的情況,執行此命令,結果見下圖:
關注&&聯絡
gitee: https://gitee。com/cmcc-oneos/OneOS-Lite
docs: https://oneos-lite。com/
公眾號:CMCC-OneOS