0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何移植OpenHarmony輕量系統(tǒng)

電子發(fā)燒友開源社區(qū) ? 來源:HarmonyOS官方合作社區(qū) ? 作者:HarmonyOS官方合作社 ? 2022-02-25 12:14 ? 次閱讀

摘要:本文簡單介紹OpenHarmony輕量系統(tǒng)移植,會分多篇

適合群體:想自己動手移植OpenHarmony輕量系統(tǒng)的朋友

開始嘗試講解一下系統(tǒng)的移植,主要是輕量系統(tǒng),也可能會順便講下L1移植。

1.1 移植類型

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

(1)ARCH部分的代碼

(2)SoC部分的代碼

(3)board級的代碼

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

如何移植OpenHarmony輕量系統(tǒng)

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è)計,我們移植的類型可以分為3部分:

(1)ARCH移植:全新的架構(gòu)級別的移植

(2)SoC移植:已支持的架構(gòu)做SoC級別的移植

(3)board級別的移植:只針對開發(fā)板做少量移植。

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

1.2 相關(guān)代碼

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

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

ARCH相關(guān)的代碼存放在kernelliteos_march文件夾中

如何移植OpenHarmony輕量系統(tǒng)

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

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

SoC相關(guān)的代碼位于:devicesoc

如何移植OpenHarmony輕量系統(tǒng)

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

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

如何移植OpenHarmony輕量系統(tǒng)

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

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

內(nèi)容如下:

如何移植OpenHarmony輕量系統(tǒng)

1.3 移植思路

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

vendor —— board —— soc —— ARCH

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

一開始基于hi3861,之后會基于STM32或者gd32單片機(jī)開始,大家也可以在評論區(qū)里寫上想要移植的芯片型號。

原文標(biāo)題:移植OpenHarmony輕量系統(tǒng)【1】移植思路

文章出處:【微信公眾號:HarmonyOS官方合作社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • soc
    soc
    +關(guān)注

    關(guān)注

    38

    文章

    4021

    瀏覽量

    217011
  • 移植
    +關(guān)注

    關(guān)注

    1

    文章

    375

    瀏覽量

    28008
  • OpenHarmony
    +關(guān)注

    關(guān)注

    25

    文章

    3546

    瀏覽量

    15734

原文標(biāo)題:移植OpenHarmony輕量系統(tǒng)【1】移植思路

文章出處:【微信號:HarmonyOS_Community,微信公眾號:電子發(fā)燒友開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    詳解Board和SoC解耦的設(shè)計思路

    本文簡單介紹OpenHarmony系統(tǒng)移植,Board和SoC解耦的設(shè)計思路。適合自己動手移植
    的頭像 發(fā)表于 03-03 09:50 ?5261次閱讀
    詳解Board和SoC解耦的設(shè)計思路

    【熱門直播】移植OpenHarmony系統(tǒng)到龍芯1c300芯片

    直播簡介:慧睿思通于12月9日成為國內(nèi)第一家成功將OpenHarmony系統(tǒng)移植到龍芯平臺的公司。本次突破得益于慧睿思通研發(fā)團(tuán)隊和龍芯廣
    發(fā)表于 12-20 16:05

    【水】OpenHarmony開源見面會分享

    非常榮幸,能受邀參加OpenHarmony開源見面會 南京站的活動,并且上臺分享。同臺的有開放原子基金會、潤和軟件、中科院等大佬。我分享的主題是《ARM架構(gòu)和MIPS架構(gòu)如何移植OpenHarmony
    發(fā)表于 12-31 10:10

    從零移植OpenHarmony系統(tǒng)【1】移植思路

    摘要:本文簡單介紹OpenHarmony系統(tǒng)移植,會分多篇適合群體:想自己動手移植
    發(fā)表于 01-26 17:18

    從零移植OpenHarmony系統(tǒng)【2】Board和SoC解耦的設(shè)計思路

    本帖最后由 jf_39160458 于 2022-1-27 17:18 編輯 摘要:本文簡單介紹OpenHarmony系統(tǒng)移植,B
    發(fā)表于 01-27 17:16

    從零移植OpenHarmony系統(tǒng)【3】Board、SOC、架構(gòu)與代碼對應(yīng)關(guān)系

    摘要:本文簡單介紹OpenHarmony系統(tǒng)移植,Board和SoC與代碼的對應(yīng)關(guān)系適合群體:想自己動手
    發(fā)表于 02-07 14:29

    移植OpenHarmony系統(tǒng)【4】啟動文件與鏈接

    摘要:本文簡單介紹OpenHarmony系統(tǒng)移植,啟動文件和鏈接適合群體:想自己動手移植
    發(fā)表于 02-09 18:05

    移植OpenHarmony系統(tǒng)【5】newlibc庫移植

    摘要:本文簡單介紹OpenHarmony系統(tǒng)移植,libc庫移植適合群體:想自己動手
    發(fā)表于 02-09 18:06

    移植OpenHarmony系統(tǒng)【6】內(nèi)核初始化和啟動

    摘要:本文簡單介紹OpenHarmony系統(tǒng)移植,內(nèi)核初始化和啟動適合群體:想自己動手移植
    發(fā)表于 02-09 18:08

    移植OpenHarmony系統(tǒng)【7】燒錄與驗(yàn)證

    摘要:本文簡單介紹OpenHarmony系統(tǒng)移植,內(nèi)核初始化和啟動適合群體:想自己動手移植
    發(fā)表于 02-09 18:09

    從零開始移植OpenHarmony系統(tǒng)

    摘要:本文簡單介紹OpenHarmony系統(tǒng)移植,如何使用移植示例適合群體:想自己動手
    發(fā)表于 02-09 18:58

    一文詳解Niobe407開發(fā)板移植OpenHarmony系統(tǒng)

    系統(tǒng)的全過程。本次移植架構(gòu)采用 Board 與 SoC 分離的方案,使用 arm gcc 工具鏈 Newlib C 庫,實(shí)現(xiàn) lwip、littlefs、hdf 等子
    發(fā)表于 07-20 18:13

    龍芯1c300芯片移植OpenHarmony系統(tǒng)

    導(dǎo)語:本周熱點(diǎn),通信企業(yè)慧睿思通宣布,于12月9日成功地將OpenHarmony 3.0移植到智龍開發(fā)板上,板載芯片1C300B,成為國內(nèi)第一家成功將OpenHarmony
    的頭像 發(fā)表于 12-21 09:34 ?2252次閱讀

    OpenHarmony Dev-Board-SIG專場:ARM架構(gòu)和MIPS架構(gòu)移植OpenHarmony系統(tǒng)

    OpenHarmony Dev-Board-SIG專場:ARM架構(gòu)和MIPS架構(gòu)移植OpenHarmony
    的頭像 發(fā)表于 12-28 16:00 ?1733次閱讀
    <b class='flag-5'>OpenHarmony</b> Dev-Board-SIG專場:ARM架構(gòu)和MIPS架構(gòu)<b class='flag-5'>移植</b><b class='flag-5'>OpenHarmony</b><b class='flag-5'>輕</b><b class='flag-5'>量</b><b class='flag-5'>系統(tǒng)</b>

    OpenHarmony Dev-Board-SIG專場:MIPS架構(gòu)移植OpenHarmony系統(tǒng)展示

    OpenHarmony Dev-Board-SIG專場:MIPS構(gòu)架移植OpenHarmony系統(tǒng)
    的頭像 發(fā)表于 12-28 16:07 ?1399次閱讀
    <b class='flag-5'>OpenHarmony</b> Dev-Board-SIG專場:MIPS架構(gòu)<b class='flag-5'>移植</b><b class='flag-5'>OpenHarmony</b><b class='flag-5'>輕</b><b class='flag-5'>量</b><b class='flag-5'>系統(tǒng)</b>展示