- Utils子系统是OpenHarmony的公共基础库,存放OpenHarmony通用的基础组件。这些基础组件可被OpenHarmony各业务子系统及上层应用所使用。公共基础库在不同平台上提供的能力:LiteOS-M内核:KV(key value)存储、文件操作、定时器、Dump系统属性。LiteOS-A内核:KV(key value)存储、定时器、JS API(设备查询,数据存储)、Dump... Utils子系统是OpenHarmony的公共基础库,存放OpenHarmony通用的基础组件。这些基础组件可被OpenHarmony各业务子系统及上层应用所使用。公共基础库在不同平台上提供的能力:LiteOS-M内核:KV(key value)存储、文件操作、定时器、Dump系统属性。LiteOS-A内核:KV(key value)存储、定时器、JS API(设备查询,数据存储)、Dump...
- 移植案例与原理 - utils子系统之file文件操作部件Utils子系统是OpenHarmony的公共基础库,存放OpenHarmony通用的基础组件。这些基础组件可被OpenHarmony各业务子系统及上层应用所使用。公共基础库在不同平台上提供的能力:LiteOS-M内核:KV(key value)存储、文件操作、定时器、Dump系统属性。LiteOS-A内核:KV(key value... 移植案例与原理 - utils子系统之file文件操作部件Utils子系统是OpenHarmony的公共基础库,存放OpenHarmony通用的基础组件。这些基础组件可被OpenHarmony各业务子系统及上层应用所使用。公共基础库在不同平台上提供的能力:LiteOS-M内核:KV(key value)存储、文件操作、定时器、Dump系统属性。LiteOS-A内核:KV(key value...
- 移植案例与原理 - startup子系统之bootstrap_lite服务启动引导部件bootstrap_lite服务启动引导组件提供了各服务和功能的启动入口标识。在SAMGR(System ability manager,系统服务管理)启动时,会调用bootstrap_lite标识的入口函数,并启动系统服务。本文介绍下移植开发板时如何适配服务启动引导部件bootstrap_lite,并介... 移植案例与原理 - startup子系统之bootstrap_lite服务启动引导部件bootstrap_lite服务启动引导组件提供了各服务和功能的启动入口标识。在SAMGR(System ability manager,系统服务管理)启动时,会调用bootstrap_lite标识的入口函数,并启动系统服务。本文介绍下移植开发板时如何适配服务启动引导部件bootstrap_lite,并介...
- 鸿蒙轻内核M核源码分析系列二一 03 文件系统FatFSFAT文件系统是File Allocation Table(文件配置表)的简称,主要包括DBR区、FAT区、DATA区三个区域。其中,FAT区各个表项记录存储设备中对应簇的信息,包括簇是否被使用、文件下一个簇的编号、是否文件结尾等。FAT文件系统有FAT12、FAT16、FAT32等多种格式,其中,12、16、32表示对应格式中FAT... 鸿蒙轻内核M核源码分析系列二一 03 文件系统FatFSFAT文件系统是File Allocation Table(文件配置表)的简称,主要包括DBR区、FAT区、DATA区三个区域。其中,FAT区各个表项记录存储设备中对应簇的信息,包括簇是否被使用、文件下一个簇的编号、是否文件结尾等。FAT文件系统有FAT12、FAT16、FAT32等多种格式,其中,12、16、32表示对应格式中FAT...
- 移植 LiteOS 到小熊派上 移植 LiteOS 到小熊派上
- 鸿蒙轻内核Kconfig使用笔记-进阶在《鸿蒙轻内核Kconfig使用笔记》一文介绍了Kconfig的基础知识,和鸿蒙轻内核的图形化配置。本文继续介绍些进阶的使用方法。本文中所涉及的源码,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_m 获取,涉及开发板时以fnlink v200zr为例, 芯片开发板相关工程路径如下:https:/... 鸿蒙轻内核Kconfig使用笔记-进阶在《鸿蒙轻内核Kconfig使用笔记》一文介绍了Kconfig的基础知识,和鸿蒙轻内核的图形化配置。本文继续介绍些进阶的使用方法。本文中所涉及的源码,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_m 获取,涉及开发板时以fnlink v200zr为例, 芯片开发板相关工程路径如下:https:/...
- 鸿蒙轻内核Kconfig使用笔记鸿蒙轻内核使用Kconfig进行图形化配置,本文专门讲解下鸿蒙轻内核LiteOS-M和LiteOS-A的图形化配置方法。本文中所涉及的源码,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_a、https://gitee.com/openharmony/kernel_liteos_m 获取。本文首先简单介... 鸿蒙轻内核Kconfig使用笔记鸿蒙轻内核使用Kconfig进行图形化配置,本文专门讲解下鸿蒙轻内核LiteOS-M和LiteOS-A的图形化配置方法。本文中所涉及的源码,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_a、https://gitee.com/openharmony/kernel_liteos_m 获取。本文首先简单介...
- 鸿蒙轻内核A核源码分析系列五 虚实映射(4) 7、Flag标签属性在学习函数LOS_ArchMmuMap()代码时,我们已经了解了虚拟内存如何映射到物理内存,在映射的时候,可以通过UINT 32 flags参数定一些标签属性信息。本节,我们具体了解下内存标签属性信息。先了解下MMU标签属性,然后看看映射内存区间时的映射虚实信息,最后了解下属性信息转换函数。 7.1 MMU标签属性在映射的时... 鸿蒙轻内核A核源码分析系列五 虚实映射(4) 7、Flag标签属性在学习函数LOS_ArchMmuMap()代码时,我们已经了解了虚拟内存如何映射到物理内存,在映射的时候,可以通过UINT 32 flags参数定一些标签属性信息。本节,我们具体了解下内存标签属性信息。先了解下MMU标签属性,然后看看映射内存区间时的映射虚实信息,最后了解下属性信息转换函数。 7.1 MMU标签属性在映射的时...
- 鸿蒙轻内核A核源码分析系列四 虚拟内存进程空间编号在熟悉下OpenHarmony鸿蒙轻内核提供的虚拟内存(Virtual memory)管理模块之前,作为预备基础知识,我们先了解下虚拟内存进程空间编号,进程空间编号功能相对独立,源代码文件单独维护。涉及的头文件和C源代码文件分别为arch/arm/arm/include/los_asid.h和arch/arm/arm/src/los_asi... 鸿蒙轻内核A核源码分析系列四 虚拟内存进程空间编号在熟悉下OpenHarmony鸿蒙轻内核提供的虚拟内存(Virtual memory)管理模块之前,作为预备基础知识,我们先了解下虚拟内存进程空间编号,进程空间编号功能相对独立,源代码文件单独维护。涉及的头文件和C源代码文件分别为arch/arm/arm/include/los_asid.h和arch/arm/arm/src/los_asi...
- 鸿蒙轻内核A核源码分析系列三 物理内存(2) 3.1.2.3 函数OsVmPhysLargeAlloc当执行到这个函数时,说明空闲链表上的单个内存页节点的大小已经不能满足要求,超过了第9个链表上的内存页节点的大小了。⑴处计算需要申请的内存大小。⑵从最大的链表上进行遍历每一个内存页节点。⑶根据每个内存页的开始内存地址,计算需要的内存的结束地址,如果超过内存段的大小,则继续遍历下一个内存页节点... 鸿蒙轻内核A核源码分析系列三 物理内存(2) 3.1.2.3 函数OsVmPhysLargeAlloc当执行到这个函数时,说明空闲链表上的单个内存页节点的大小已经不能满足要求,超过了第9个链表上的内存页节点的大小了。⑴处计算需要申请的内存大小。⑵从最大的链表上进行遍历每一个内存页节点。⑶根据每个内存页的开始内存地址,计算需要的内存的结束地址,如果超过内存段的大小,则继续遍历下一个内存页节点...
- 鸿蒙轻内核A核源码分析系列三 物理内存(1)从本篇开始,我们分析下鸿蒙轻内核A核的内存管理部分,包括物理内存、虚拟内存、虚拟映射等部分。物理内存(Physical memory)是指通过物理内存条而获得的内存空间,相对应的概念是虚拟内存(Virtual memory)。虚拟内存使得应用进程认为它拥有一个连续完整的内存地址空间,而通常是通过虚拟内存和物理内存的映射对应着多个物理内存页。本文我... 鸿蒙轻内核A核源码分析系列三 物理内存(1)从本篇开始,我们分析下鸿蒙轻内核A核的内存管理部分,包括物理内存、虚拟内存、虚拟映射等部分。物理内存(Physical memory)是指通过物理内存条而获得的内存空间,相对应的概念是虚拟内存(Virtual memory)。虚拟内存使得应用进程认为它拥有一个连续完整的内存地址空间,而通常是通过虚拟内存和物理内存的映射对应着多个物理内存页。本文我...
- 鸿蒙轻内核M核源码分析系列十七(3) 异常信息ExcInfoExcHook异常钩子模块是OpenHarmony LiteOS-M内核的一个可选组件,提供注册钩子函数LOS_RegExcHook、解除注册钩子函数LOS_UnRegExcHook等操作接口。发生系统时,支持保存异常上下文、任务信息、队列信息、中断寄存器状态、任务切换信息、内存分配等信息。由于异常钩子模块内容较多,我们分为几篇进... 鸿蒙轻内核M核源码分析系列十七(3) 异常信息ExcInfoExcHook异常钩子模块是OpenHarmony LiteOS-M内核的一个可选组件,提供注册钩子函数LOS_RegExcHook、解除注册钩子函数LOS_UnRegExcHook等操作接口。发生系统时,支持保存异常上下文、任务信息、队列信息、中断寄存器状态、任务切换信息、内存分配等信息。由于异常钩子模块内容较多,我们分为几篇进...
- 鸿蒙轻内核M核源码分析系列十七(2) 异常钩子函数的注册操作ExcHook异常钩子模块是OpenHarmony LiteOS-M内核的一个可选组件,提供注册钩子函数、解除注册钩子函数的核心API,支持保存异常上下文、任务信息、队列信息、中断寄存器状态、任务切换信息、内存分配信息等。由于异常钩子模块内容较多,我们分为几篇进行分析源码,包含如何调用钩子函数、如何注册如何调用,如何收集异常信息等... 鸿蒙轻内核M核源码分析系列十七(2) 异常钩子函数的注册操作ExcHook异常钩子模块是OpenHarmony LiteOS-M内核的一个可选组件,提供注册钩子函数、解除注册钩子函数的核心API,支持保存异常上下文、任务信息、队列信息、中断寄存器状态、任务切换信息、内存分配信息等。由于异常钩子模块内容较多,我们分为几篇进行分析源码,包含如何调用钩子函数、如何注册如何调用,如何收集异常信息等...
- 本期精彩看点:华为云社区首页新版全新亮相;从这的路灯说起,看华为云IoT设备接入管理服务如何用“点石成金”的技术能力,实现万物互联;时序图一种用来表示实体间交互关系的图,有的人画的清晰明了,有的确实云里雾里… 本期精彩看点:华为云社区首页新版全新亮相;从这的路灯说起,看华为云IoT设备接入管理服务如何用“点石成金”的技术能力,实现万物互联;时序图一种用来表示实体间交互关系的图,有的人画的清晰明了,有的确实云里雾里…
- 鸿蒙轻内核M核源码分析系列十七(1) 异常钩子函数类型介绍ExcHook异常钩子模块是OpenHarmony LiteOS-M内核的一个可选组件,提供注册钩子函数LOS_RegExcHook、解除注册钩子函数LOS_UnRegExcHook等操作接口。发生系统时,支持保存异常上下文、任务信息、队列信息、中断寄存器状态、任务切换信息、内存分配等信息。由于异常钩子模块内容较多,我们分为几篇进行... 鸿蒙轻内核M核源码分析系列十七(1) 异常钩子函数类型介绍ExcHook异常钩子模块是OpenHarmony LiteOS-M内核的一个可选组件,提供注册钩子函数LOS_RegExcHook、解除注册钩子函数LOS_UnRegExcHook等操作接口。发生系统时,支持保存异常上下文、任务信息、队列信息、中断寄存器状态、任务切换信息、内存分配等信息。由于异常钩子模块内容较多,我们分为几篇进行...
上滑加载中
推荐直播
-
鸿蒙应用实战:带你掌握UIAbility使用
2024/12/12 周四 16:00-18:00
Cindy 华为云学堂技术讲师
本期直播带你了解Stage应用模型和UIAbility应用组件的核心概念、掌握在Stage模型下,使用UIAbility组件进行应用开发的基本流程,直播中会讲解场景化的代码示例,助力开发者深度理解开发内容。
回顾中 -
基于ArkTS卡片开发的鸿蒙应用趣味案例
2024/12/13 周五 16:00-18:00
Skye 华为云学堂技术讲师
服务卡片是HarmonyOS应用开发的一大重要亮点。如何创建ArkTS服务卡片,以及如何运用卡片事件的能力呢?本期直播我们将深入剖析其理论要点,并结合实验案例,带大家一起深入体验HarmonyOS服务卡片的开发过程。
去报名 -
OpenSpeech
2024/12/14 周六 10:30-15:30
华为讲师团
我们希望能够更接地气、更懂开发者,展示开发者不一样的多维面。不管是中国还是海外,学生还是企业, 每一个开发者的故事都值得被聆听。
即将直播
热门标签