偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

OpenHarmony輕量系統(tǒng)移植示例

系統(tǒng) OpenHarmony
OpenHarmony輕量系統(tǒng)的移植比較簡單,代碼中解耦做得非常好。

??想了解更多內(nèi)容,請?jiān)L問:??

??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??

??https://ost.51cto.com??

1、移植類型

OpenHarmony輕量系統(tǒng)的移植比較簡單,代碼中解耦做得非常好。從代碼的設(shè)計(jì)理念上來看,移植主要是3部分的內(nèi)容:

  1. ARCH部分的代碼。
  2. SoC部分的代碼。
  3. board級的代碼。

從上至下我們可以用一張圖來做對比:

ARCH也就是架構(gòu),例如ARM架構(gòu)、RISC-V架構(gòu)等。

SoC是具體芯片,例如STM32、海思等,一個架構(gòu)可以有多個芯片。

Board是具體開發(fā)板,例如3861有潤和的開發(fā)板、也有小熊派的開發(fā)板。

通常來說,相關(guān)架構(gòu)的不同SoC,應(yīng)該是共用一套ARCH代碼,不需要為每個SoC都重新寫一遍ARCH代碼,可以增加代碼的復(fù)用。

相關(guān)SoC的不通過board開發(fā)板,也應(yīng)該共用一套SoC代碼即可,板卡之間的代碼差異應(yīng)該放到board中。

基于如上設(shè)計(jì),我們移植的類型可以分為3部分:

  1. ARCH移植:全新的架構(gòu)級別的移植。
  2. SoC移植:已支持的架構(gòu)做SoC級別的移植。
  3. board級別的移植:只針對開發(fā)板做少量移植。

移植的難度也是ARCH最難,SoC較難、board較簡單。

2、 相關(guān)代碼

我們看下OpenHarmony輕量系統(tǒng)之3部分的代碼分別在哪里:

(1)ARCH相關(guān)代碼。

ARCH相關(guān)的代碼存放在kernel\liteos_m\arch文件夾中。

可以看到目前已支持的架構(gòu)有ARM(M3、M4、M33、M7、ARM9)、csky、risc-v、xtensa。

(2)SoC相關(guān)代碼。

SoC相關(guān)的代碼位于:device\soc。

(3)board相關(guān)代碼。

board相關(guān)的代碼位于:device/board。

(4)vendor相關(guān)代碼。

除了以上3部分的代碼之外,還有廠商配置相關(guān)代碼,這一部分主要是用于編譯系統(tǒng)、HDF配置等,路徑為: vendor。

內(nèi)容如下:

3、移植思路

建議是先從最簡單的開始,路線如下:

vendor —— board —— soc —— ARCH。

下一篇文章,將開始講解如何創(chuàng)建一個自己的vendor廠商配置和編譯流程。

一開始會基于GD32單片機(jī)。

4、 代碼倉庫

代碼倉庫如下:

其中,01_vendor_soc_board 是初步移植的示例,編譯不通過。

02_vendor_soc_board是已經(jīng)可以編譯通過并且燒錄到GD32F303上可以正常跑的。

5、 使用說明

(1)代碼下載

開發(fā)者可以直接先下載最新的openharmony代碼,參考文章:

https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/quick-start/quickstart-lite-sourcecode-acquire.md。

然后下載本倉庫的代碼,將對應(yīng)的代碼拷貝到device/board 、device/soc、vendor中。

(2)交叉編譯器下載:

我們使用的編譯器是arm-none-eabi-gcc,下載地址:

git clone https://gitee.com/harylee/gcc-arm-none-eabi-10-2020-q4-major.git。

將交叉編譯器環(huán)境變量bin目錄配置到.bashrc文件中。

執(zhí)行arm-none-eabi-gcc -v,有如下打印則表示交叉編譯器配置正確。

(3)編譯。

執(zhí)行hb set,選擇gd32f303_lianzhian。

然后執(zhí)行hb build -f,如下提示,則表示編譯成功。

??想了解更多內(nèi)容,請?jiān)L問:??

??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??

??https://ost.51cto.com??


責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2022-02-09 19:45:41

MQTTOpenHarmon鴻蒙

2022-02-08 15:21:59

Hi3861開發(fā)鴻蒙

2022-06-09 14:40:14

系統(tǒng)移植鴻蒙

2022-01-21 21:22:24

OpenHarmon操作系統(tǒng)鴻蒙

2024-01-05 15:32:47

鴻蒙SNTP智慧時(shí)鐘

2022-04-15 11:46:09

輕量系統(tǒng)解耦鴻蒙操作系統(tǒng)

2023-04-03 15:39:31

2022-02-10 15:07:10

云平臺OpenHarmon系統(tǒng)開發(fā)

2023-03-24 14:39:17

鴻蒙系統(tǒng)開發(fā)

2022-01-24 18:43:20

OpenHarmon操作系統(tǒng)鴻蒙

2023-06-13 14:55:04

2022-01-24 18:35:56

OpenHarmon鴻蒙操作系統(tǒng)

2022-02-09 19:25:49

Hi3861WiFi操作鴻蒙

2022-02-09 19:31:41

Hi3861OpenHarmon鴻蒙

2023-04-24 15:11:51

系統(tǒng)開發(fā)鴻蒙

2023-07-28 15:32:26

鴻蒙操作系統(tǒng)

2023-05-06 15:41:00

人體傳感器數(shù)據(jù)鴻蒙

2023-08-07 15:13:09

設(shè)備開發(fā)鴻蒙

2021-09-13 08:20:13

Loki日志系統(tǒng)

2022-08-19 10:54:47

操作系統(tǒng)鴻蒙
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號