OpenHarmony是開放原子開源基金會(OpenAtom Foundation)旗下開源項目,定位是一款面向全場景的開源分布式操作系統。今年六月正式發布,它的開發語言是匯編語言,有linux、java、Python、C++等等。
OpenHarmony輕內核有兩個,一個是liteos_A另一個是lite_M。
要說這倆有啥區別呢?按照我個人的理解大概就是liteos_A 是ARM架構的 A系列liteos_M是ARM架構的M系列
liteos_M就感覺和Huawei LiteOS差不多,而liteos_A對應的是linux內核 ,linux是分時操作系統
lite_M 內核文件系統
```
/kernel/liteos_m
├── components # 可選組件
│ ├── cppsupport # C++支持
│ └── cpup # CPUP功能
├── kal # 內核抽象層
│ ├── cmsis # cmsis標準接口支持
│ └── posix # posix標準接口支持
├── kernel # 內核最小功能集支持
│ ├── arch # 內核指令架構層代碼
│ │ ├── arm # arm32架構的代碼
│ │ └── include # 對外接口存放目錄
│ ├── include # 對外接口存放目錄
│ └── src # 內核最小功能集源碼
├── targets # 板級工程目錄
├── utils # 通用公共目錄
```
lite_A 內核文件系統
/kernel/liteos_a
├── apps # 用戶態的init和shell應用程序
├── arch # 體系架構的目錄,如arm等
│ └── arm # arm架構代碼
├── bsd # freebsd相關的驅動和適配層模塊代碼引入,例如USB等
├── compat # 內核接口兼容性目錄
│ └── posix # posix相關接口
├── drivers # 內核驅動
│ └── char # 字符設備
│ ├── mem # 訪問物理IO設備驅動
│ ├── quickstart # 系統快速啟動接口目錄
│ ├── random # 隨機數設備驅動
│ └── video # framebuffer驅動框架
├── fs # 文件系統模塊,主要來源于NuttX開源項目
│ ├── fat # fat文件系統
│ ├── jffs2 # jffs2文件系統
│ ├── include # 對外暴露頭文件存放目錄
│ ├── nfs # nfs文件系統
│ ├── proc # proc文件系統
│ ├── ramfs # ramfs文件系統
│ └── vfs # vfs層
├── kernel # 進程、內存、IPC等模塊
│ ├── base # 基礎內核,包括調度、內存等模塊
│ ├── common # 內核通用組件
│ ├── extended # 擴展內核,包括動態加載、vdso、liteipc等模塊
│ ├── include # 對外暴露頭文件存放目錄
│ └── user # 加載init進程
├── lib # 內核的lib庫
├── net # 網絡模塊,主要來源于lwip開源項目
├── platform # 支持不同的芯片平臺代碼,如Hi3516DV300等
│ ├── hw # 時鐘與中斷相關邏輯代碼
│ ├── include # 對外暴露頭文件存放目錄
│ └── uart # 串口相關邏輯代碼
├── platform # 支持不同的芯片平臺代碼,如Hi3516DV300等
├── security # 安全特性相關的代碼,包括進程權限管理和虛擬id映射管理
├── syscall # 系統調用
└── tools # 構建工具及相關配置和代碼
```
整合自:CSDN社區大大U、landaliming
編輯:jq
-
內核
+關注
關注
3文章
1372瀏覽量
40288 -
cpu
+關注
關注
68文章
10860瀏覽量
211715 -
C++
+關注
關注
22文章
2108瀏覽量
73639 -
OpenHarmony
+關注
關注
25文章
3721瀏覽量
16302
發布評論請先 登錄
相關推薦
評論