
OpenHarmony
文章平均质量分 87
普通网友
这个作者很懒,什么都没留下…
展开
-
POSIX和CMSIS接口适配层解读adapter(2):thread/memory/time
本文针对thread_adapter、memory_adapter、time_adapter部分进行解读,也是samgr/adapter下关于POSIX和CMSIS的最后一部分代码。在adapter部分对POSIX和CMSIS在队列、线程、内存、时间方面进行统一的接口声明,并进行不同环境下的具体实现,保障OpenHarmony移植性。原创 2024-08-29 16:07:53 · 829 阅读 · 0 评论 -
OpenHarmony POSIX和CMSIS接口适配层解读(1):queue_adapter
POSIX和CMSIS接口适配层,用于协调M核和A核API之间的差异。本文针对queue_adapter部分进行解读。统一队列操作的接口,如QUEUE_Create、QUEUE_Put、QUEUE_Pop、QUEUE_Destroy,屏蔽了底层POSIX和CMSIS的差异性。原创 2024-08-29 15:21:52 · 533 阅读 · 0 评论 -
OpenHarmony轻量系统服务管理|消息广播功能实例操作详解(二)
//遍历消费者结点链表,向订阅了指定topic的所有消费者发送消息。 //若消费者绑定了身份标识则调用SAMGR_SendSharedDirectRequest()发送 //若消费者未绑定身份标识,则通过SAMGR_SendSharedRequest()发送原创 2024-08-29 14:14:00 · 431 阅读 · 0 评论 -
OpenHarmony轻量系统服务管理|消息广播功能实例操作详解(一)
本文分析的相关代码实现位于distributedschedule_samgr_lite\interfaces\kits\communication\broadcast\broadcast_interface.h和distributedschedule_samgr_lite\communication\broadcast\source\pub_sub_implement.c。 在本系列中将对以下数据结构及函数进行详解。原创 2024-08-29 13:49:44 · 426 阅读 · 0 评论 -
OpenHarmony轻量系统服务管理|消息广播服务及其子功能详解
本文相关代码实现位于distributedschedule_samgr_lite\communication\broadcast\source\目录下的broadcast_service.c和pub_sub_feature.c。 本文将对以下数据结构及函数进行详解。原创 2024-08-28 22:24:46 · 790 阅读 · 0 评论 -
OpenHarmony轻量系统服务管理|系统服务管理之系统功能管理器详解
在分布式调度框架中,关于轻量级服务管理的代码总体上可以分为四部分,分别是Samgr、Samgr_client、Samgr_endpoint及Samgr_server。本文是对Samgr部分的总体概述,相关代码文件位于distributedschedule_samgr_lite\samgr。对于Samgr的分析思路是采用总体代码分析+系统功能管理器(Samgr_lite)的机制分析+子主题分析+n篇代码标注的方式进行技术分享。在本文中提到的数据结构或函数的详细分析可以在文末的附录中找到,其中也包含了许多优秀代原创 2024-08-28 22:02:28 · 836 阅读 · 0 评论 -
OpenHarmony轻量系统服务管理|系统服务管理之基础框架及功能详解
鸿蒙操作系统的设计初衷是实现万物互联,使用同一套系统能力即可适配多种终端形态。由于平台资源有限且终端底层硬件的多样化,因此需要屏蔽不同硬件架构和资源的差异,提供统一化的系统服务开发框架。鸿蒙系统的设计将种硬件平台划分为两类,简称为M核、A核。M核:处理器架构为Cortex-M或同等处理能力的硬件平台,系统内存一般低于512KB,无文件系统或者仅提供一个可有限使用的轻量级文件系统,遵循CMSIS接口规范。A核:处理器架构为Cortex-A。原创 2024-08-28 21:22:02 · 1052 阅读 · 0 评论 -
OpenHarmony轻量系统服务管理|系统服务间调用之对外接口详解
IUnknown是鸿蒙系统中非常重要的一个概念,作为服务或功能间交互的对外接口。当创建一个服务或功能时,需要为其绑定一个对外接口。其他的服务可以通过这个接口和它交互。下面给出IUnknown的基本结构,在开发新的对外接口时都必须继承这个基类,它包含三个基本的函数指针,分别是查询接口()、增加引用(AddRef)、减少引用(Release//查询IUnknown接口//添加引用计数//释放对IUnknown接口的引用通过调用。原创 2024-08-28 20:51:24 · 820 阅读 · 0 评论 -
OpenHarmony轻量系统服务管理|系统服务间调用之对外接口详解
IUnknown是鸿蒙系统中非常重要的一个概念,作为服务或功能间交互的对外接口。当创建一个服务或功能时,需要为其绑定一个对外接口。其他的服务可以通过这个接口和它交互。下面给出IUnknown的基本结构,在开发新的对外接口时都必须继承这个基类,它包含三个基本的函数指针,分别是查询接口()、增加引用(AddRef)、减少引用(Release//查询IUnknown接口//添加引用计数//释放对IUnknown接口的引用通过调用。原创 2024-08-28 17:39:28 · 759 阅读 · 0 评论 -
OpenHarmony轻量系统服务管理|鸿蒙业务模型重要概念详解
在针对鸿蒙模块二的源代码分析中,发现它业务逻辑的实现围绕着三大概念展开,分别是服务()、功能()和功能接口API(所以理解并掌握这三个概念对于我们深入学习鸿蒙底层代码的业务逻辑有极大的帮助。下面我将结合前期分析鸿蒙代码的经验,通过图文并茂的方式为读者讲解它们的基类和实例对象以及相应的作用。原创 2024-08-28 15:36:55 · 1199 阅读 · 0 评论 -
HarmonyOS 应用开发之UIAbility组件启动模式
UIAbility的启动模式是指UIAbility实例在启动时的不同呈现状态。针对不同的业务场景,系统提供了三种启动模式:原创 2024-08-26 14:12:34 · 758 阅读 · 0 评论 -
HarmonyOS 应用开发之UIAbility组件生命周期
当用户打开、切换和返回到对应应用时,应用中的UIAbility实例会在其生命周期的不同状态之间转换。UIAbility类提供了一系列回调,通过这些回调可以知道当前UIAbility实例的某个状态发生改变,会经过UIAbility实例的创建和销毁,或者UIAbility实例发生了前后台的状态切换。UIAbility的生命周期包括Create、Foreground、Background、Destroy四个状态,如下图所示。图1UIAbility生命周期状态。原创 2024-08-26 13:44:34 · 1021 阅读 · 0 评论 -
OpenHarmony开发知识点记录之ABI
OpenHarmony系统支持丰富的设备形态,支持多种架构指令集,支持多种操作系统内核;为了应用在各种OpenHarmony设备上的兼容性,本文定义了"OHOS" ABI(Application Binary Interface)的基础标准,包含如下方面。原创 2024-08-25 22:10:01 · 908 阅读 · 0 评论