
鸿蒙
鸿蒙
四季帆
汽车电子、bsp
展开
-
根文件系统制作过程
1. 顶层Makefile中有根文件系统目标$(ROOTFS): $(ROOTFSDIR) #生成ROOTFS之前需要生成依赖ROOTFSDIR #使用脚本rootfsimg.sh来生成根文件系统的image $(HIDE)$(shell $(LITEOSTOPDIR)/tools/scripts/make_rootfs/rootfsimg.sh $(ROOTFS_DIR) $(FSTYPE) ${ROOTFS_SIZE}) $(HIDE)cd $(ROOTFS_DIR)/.原创 2021-07-30 22:52:59 · 495 阅读 · 0 评论 -
串口的使用
0. 前言本篇文章是通过学习韦东山老师的免费教程整理和总结的,声明一下来源,支持韦东山老师的成果。1. 内核里打印main()函数中就有打印语句,那就从这里开始分析PRINT_RELEASE("\nmain core booting up...\n");//OpenHarmony/kernel/liteos_a/kernel/include/los_printf.h#define PRINT_RELEASE(fmt, args...) ...原创 2021-07-21 22:51:57 · 715 阅读 · 0 评论 -
init进程
1. 测试版本OpenHarmony/kernel/liteos_a/apps/init/src/init.c#include <stdio.h>#include <stdlib.h>#include <errno.h>#include <unistd.h>#include <sys/wait.h>int main(int argc, char * const *argv){ int ret; ...原创 2021-07-20 22:30:15 · 291 阅读 · 0 评论 -
内核启动流程
1. 链接脚本liteos_a的链接脚本路径如下:OpenHarmony/kernel/liteos_a/tools/build/liteos_llvm.ld链接脚本的内容如下:ENTRY(reset_vector)INCLUDE board.ldINPUT(libuserinit.O)SECTIONS{ #各种段定义,此处全部省略}链接脚本中指定了kernel的入口为reset_vector。2. 入口函数(res...原创 2021-07-15 22:26:22 · 614 阅读 · 0 评论 -
顶层Makefile分析
1. 顶层目录下的MakefileOpenHarmony/kernel/liteos_a/Makefile-include $(LITEOSTOPDIR)/tools/build/config.mk #包含 kernel/liteos_a/tools/build/config.mkLITEOS_TARGET = liteosLITEOS_PLATFORM_BASE = $(LITEOSTOPDIR)/platformall: $(OUT) $(...原创 2021-07-14 22:21:36 · 504 阅读 · 0 评论 -
子目录Makefile分析
1. 前言鸿蒙暂时支持以下几种文件系统,以fat 文件系统为例,看看fat 文件系统是如何被编译到鸿蒙系统中,进而支持fat 文件系统的。2. fat目录下的Makfile文件include $(LITEOSTOPDIR)/config.mk #包含顶层目录下的config.mk,即liteos_a/config.mkMODULE_NAME := $(notdir $(shell pwd)) #打印当前路径然后去掉目录信息,即剩下fatL...原创 2021-07-10 22:54:10 · 646 阅读 · 0 评论 -
获取OpenHarmony源码
0. 前言本篇文章是通过学习韦东山老师的免费教程整理和总结的,声明一下来源,支持韦东山老师的成果。1. 安装git工具sudo apt-get install git2. 配置git配置git 客户端的用户信息(用户名、邮箱都可以随便填)git config --global user.name "sijifan"git config --global user.email "sijifan@qq.com"git config --global...原创 2021-07-10 17:00:04 · 4707 阅读 · 2 评论 -
初识鸿蒙(Harmony)
0. 前言本篇文章是通过学习韦东山老师的免费教程整理和总结的,声明一下来源,支持韦东山老师的成果。1. 鸿蒙和Linux的区别鸿蒙对标的是Windows、安卓、IOS这类完整系统,而Linux只是鸿蒙支持的内核之一,鸿蒙支持多种内核,有Linux,也有Liteos-a,所以Liteos-a和Linux kernel才是同一级别的东西!鸿蒙的体系很庞大,如图2. Liteos-aLiteos-a是一个内核(也常常被...原创 2021-07-10 16:25:29 · 941 阅读 · 0 评论 -
宏内核与微内核
宏内核微内核原创 2021-07-09 22:50:07 · 909 阅读 · 0 评论 -
OpenHarmony、HMS和HarmonyOS的区别
1. OpenHarmony华为开源的是OpenHarmony,OpenHarmony相当于Android的AOSP(Android Open Source Project),即Android开源项目。所以OpenHarmony是一个开源项目,具有最基础的操作系统能力,任何组织机构和个人都可以下载使用,也可以贡献代码。2. HMSHMS相当于谷歌的GMS(移动服务Google Mobile Services),这里面有两部分,一部分是包括谷歌地图,谷歌...原创 2021-07-02 22:58:54 · 5855 阅读 · 0 评论