点击(此处)折叠或打开
-
参考
-
https://www.cnblogs.com/huaweicloud/p/11861249.html
-
LiteOS 开源代码路径:https://github.com/LiteOS/LiteOS
liteos_M是对标freeFTOS、rt-thread、UCOS,这些都属于实时操作系统(RTOS),MCU(单片机上),不支持MMU(内存管理单元),内核空间和APP空间不能隔离开,APP出错后整个系统就会崩溃;也不支持POSIX接口,这使得大量的开源软件无法直接在MCU上运行。
理论上, liteOS_m的用法和 freeRTOS, RTX等等用法和流程基本上没有什么差别. 其实openharmony的本质在于同步信息以及同步安全这些分布式协作的技术.
对于 openharmony 的 liteOS_a 系列可就需要有比较的改变了.
---------------------------------------------------------------------------------------------------------------
基于对 韦东山 大佬的学习笔记
1. 鸿蒙的IDE分为北向IDE/南向IDE. 北向IDE为APP开发, 南向IDE为内核开发.
南向IDE (
HUAWEI DevEco Device Tool). https://device.harmonyos.com/cn/ide 目前为(2.2 beta版)
目前只能在windows上jlink调试, linux上命令行编译.
2. 韦东山的资料下载 .
git clone
其中包括了板子(stm32mp157 / IMX6ull)的开发手册 供参考.
内核编译: 依然采用 .config 得到配置
make -> liteos_with_uboot_header.bin
make rootfs -> rootfs.jffs2.bin
3. 应用层编译是用 clang (LLVM的前端)
-
应用层编译. 在Liteos-a中,使用LLVM来编译程序。LLVM的本意是“Low
Level Virtual Machine”,一个底层的虚拟机. 使用前端(clagn) + 优化器 + 后端 --> 得到各种硬件平台的机器码
-
-
clang -target arm-liteos --sysroot=/home/book/openharmony/prebuilts/lite/sysroot/ \
-
-I /home/book/openharmony/third_party/freetype/include \
-
-L /home/book/openharmony/out/ipcamera_hi3518ev300/libs/usr \
-
-lfreetype \
-
-o show_line show_line.c
sysroot参数中,指定有标准头文件、库文件的目录
4. 打包和下载.
-
制作文件系统. (自定义文件后,重新打包)
-
mkfs.jffs2 --pad=0xa00000 -s 0x10000 -e 0x10000 -d rootfs -o rootfs.jffs2.bin
-
--pad=0xa00000含义为把文件扩充为10M
阅读(1214) | 评论(0) | 转发(0) |