物联网嵌入式操作系统RTOS研发工作,学习与分享
私信
主帖 89
回帖 148
视频
提问 4
回答 10
资源 14
专栏 2
之前在OpenHarmony社区我一直对物联网轻设备开发板关注比较多,一方面是,OpenHarmony的开源是从轻设备开始的,接触较早;另外就是,OpenHarmony富设备特性持续演进,关注不多,而我手头也没有比较好富设备开发板。得益于[【大奖活动】“润和DAYU200体验官”征集令!!!](https:ost.51cto.composts10934),也得到了一块Dayu200开发板的体验试用机会。在使用Dayu200开发板进行北向应用开发体验的过程中,还发现了一些社区代码仓...
2022-05-07 10:59:38 2333浏览 5点赞 2回复 1收藏
1、封面:如何成为开始社区贡献达人时间到了,我们按时开始。非常荣幸有机会参与知识赋能第五期的活动,给大家做一些分享。我今天分享的题目是,如何成为OpenHarmony开源社区贡献达人。我会重点给大家介绍下什么是开源社区贡献,如何进行社区开源贡献。希望通过这样的分享,大家以后都能成为社区开源贡献达人。2、目录:了解下议题内容先看一下目录,了解下今天分享的内容。今天分享的内容如下:首先,什么是社区贡献?在社区参...
2022-05-05 14:06:04 2163浏览 4点赞 6回复 2收藏
非原创,以下信息来自:https:mp.weixin.qq.comsDCdzkftyOlTOGq0u2bGTXQOpenAtomOpenHarmony(以下简称“OpenHarmony”)工作委员会首度发起「OpenHarmony开源贡献者计划」,旨在鼓励开发者参与OpenHarmony开源建设、贡献代码或者帮助社区提交和修复Bug,与OpenHarmony社区共同成长。本期「OpenHarmony开源贡献者计划」以“战码先锋,PR征集令”为主题,围绕OpenHarmony401个主干仓,发起奖励提交PR(PullRequest)的活动。您可...
2022-04-26 22:32:13 1389浏览 1点赞 1回复 0收藏
【本文正在参与优质创作者激励】鸿蒙轻内核A核源码分析系列八(2)信号量Semaphore本文继续分析OpenHarmonyLiteOSA内核的源代码,接下来会分析IPC的信号量。信号量(Semaphore)是一种实现任务间通信的机制,可以实现任务间同步或共享资源的互斥访问。一个信号量的数据结构中,通常有一个计数值,用于对有效资源数的计数,表示剩下的可被使用的共享资源数。以同步为目的的信号量和以互斥为目的的信号量在使用上存在差异。本文通...
2022-04-10 17:57:36 1779浏览 1点赞 0回复 2收藏
鸿蒙轻内核A核源码分析系列八(1)事件Event【本文正在参与优质创作者激励】本文继续分析OpenHarmonyLiteOSA内核的源代码,接下来会分析IPC事件Event。事件(Event)是一种任务间通信的机制,可用于任务间的同步。多任务环境下,任务之间往往需要同步操作,一个等待即是一个同步。事件可以提供一对多、多对多的同步操作。本文通过分析鸿蒙轻内核事件模块的源码,深入掌握事件的使用。本文中所涉及的源码,以OpenHarmonyLiteOSA...
2022-04-10 16:47:06 1753浏览 3点赞 0回复 2收藏
社区贡献如何解决合入冲突作为《2022年,继续做开源的朋友》的续篇,本文做些补充,专门来说说贡献代码时如何正确的同步最新代码。1、先看看问题是什么先看下XTSACTS代码仓的一次提交,显示这一次commit提交,修改了400多个文件,修改了27多万行,删除了4万行。OpenHarmony社区里一次性提交大量的代码,情况也比较常见,通常是新特性从内源转为开源,三方库初始化和版本升级等等。这次的提交又是什么情况呢?我们使用TortoiseGi...
2022-04-10 15:06:07 1254浏览 4点赞 1回复 2收藏
2022年,继续做开源的朋友续篇之稀疏检出【本文正在参与优质创作者激励】见社区上有些仓库特别大,下载起来特别花时间。本篇就专门讲述下稀疏检出,如何只检出我们关注的那些文件夹或文件,并整理在《2022年,继续做开源的朋友》系列中。1、什么是稀疏检出如果Git仓库特别大,每次执行Git命令,等待时间会特别长。为解决这些问题,从1.7.0开始,Git引入稀疏检出(sparsecheckout)特性,稀疏检出机制允许只检出指定目录或者文件...
2022-04-07 18:53:42 2605浏览 6点赞 1回复 2收藏
鸿蒙轻内核A核源码分析系列七进程管理(3)【本文正在参与优质创作者激励】本文会继续分析进程和任务管理模块。本文中所涉及的源码,以OpenHarmonyLiteOSA内核为例,均可以在开源站点[https:gitee.comopenharmonykernelliteosa](https:gitee.comopenharmonykernelliteosa)获取。如果涉及开发板,则默认以hisparktaurus为例。本文记录下进程相关的初始化函数,如OsSystemProcessCreate、OsProcessInit、OsProcessCreateInit、OsUse...
2022-03-30 22:55:03 2290浏览 2点赞 1回复 2收藏
鸿蒙轻内核A核源码分析系列七进程管理(2)【本文正在参与优质创作者激励】本文会继续分析进程和任务管理模块。本文中所涉及的源码,以OpenHarmonyLiteOSA内核为例,均可以在开源站点[https:gitee.comopenharmonykernelliteosa](https:gitee.comopenharmonykernelliteosa)获取。如果涉及开发板,则默认以hisparktaurus为例。本文先熟悉下进程管理的文件kernel\base\core\losprocess.c中的内部接口,读读代码,做些记录。1、LiteOS...
2022-03-09 21:40:44 3285浏览 4点赞 1回复 1收藏
[toc](目录)2022年,继续做开源的朋友续篇之参与贡献【本文正在参与优质创作者激励】随着OpenHarmony社区持续的发展,各种章程机制也都会完善。Linux社区有雇主和个人开发者的贡献排名,OpenHarmony社区度量评价也总有一天上线。在思考社区贡献时,形成了文字,快速记录一下。临时起意,就放在《2022年,继续做开源的朋友》系列中吧。《2020LinuxKernelHistoryReport》中贡献者排名表格,可以参考下图,展示各雇主信息,提交数...
2022-03-05 17:12:01 1996浏览 5点赞 5回复 1收藏
2022年,继续做开源的朋友续篇之邮箱【本文正在参与优质创作者激励】在《2022年,继续做开源的朋友》中,讲述了参与社区贡献的几点注意事项。本文做些补充,专门来说说开源贡献中的邮箱的那些事儿。1、Gitee账户邮箱管理注册Gitee账户后,进入个人信息设置页面(Gitee首页,左上角头像下拉设置,见下图⑴),在左侧导航,可以看到下图中⑵处的邮箱管理,点击进去。可以看到Gitee提供了丰富的邮箱管理的功能。⑶处列出了设置的全...
2022-03-04 12:00:38 9508浏览 9点赞 3回复 3收藏
移植案例与原理HPM包描述文件bundle.json【本文正在参与优质创作者激励】发现各个子系统、组件、三方库目录下都添加了bundle.json,了解下该文件的用途、用法并快速记录下。1、HPMBundle的基本概念Bundle是OpenHarmony中一个用来表示分发单元的术语,等同于包,一个Bundle中通常包含以下内容:被分发的二进制文件(二进制类型)被分发的源代码文件(源代码代码片段类型)编译脚本(发行版类型需要)自身的说明文件bundle.json:...
2022-03-03 21:43:02 4270浏览 2点赞 4回复 2收藏
鸿蒙轻内核A核源码分析系列七进程管理(1)【本文正在参与优质创作者激励】本文开始继续分析OpenHarmonyLiteOSA内核的源代码,接下来会分析进程和任务管理模块。本文中所涉及的源码,以OpenHarmonyLiteOSA内核为例,均可以在开源站点[https:gitee.comopenharmonykernelliteosa](https:gitee.comopenharmonykernelliteosa)获取。如果涉及开发板,则默认以hisparktaurus为例。本文先熟悉下进程管理的概念、运行机制和编程接口。1、L...
2022-03-01 21:50:50 4554浏览 4点赞 1回复 2收藏
当OpenHarmony遇上OpenEuler【本文正在参与优质创作者激励】openEuler是由开放原子开源基金会(OpenAtomFoundation)孵化及运营的另外一个的开源项目。2019年9月华为宣布开源服务器操作系统EulerOS,并命名为openEuler。openEuler愿景是:通过社区合作,打造创新平台,构建支持多处理器架构、统一和开放的操作系统,推动软硬件应用生态繁荣发展。openEuler是基于Linux稳定内核发展起来的。Linux常用发行版基本上可以分为三大系...
2022-02-24 00:29:02 6460浏览 4点赞 4回复 2收藏
移植案例与原理HDF驱动框架驱动配置接口【本文正在参与优质创作者激励】我们之前的系列中,已经了解如何使用HCS来定义设备资源配置中树(deviceresourceconfigurationtree)。那么,这些配置信息是怎么在驱动开发中获取的呢?本文专门分析查询和读取HCS配置树的常用接口。在文件include\utils\deviceresourceif.h中,定义了设备配置树的结构体和常用接口。1、HCS结构体⑴处定义了枚设备资源文件类型,当前HDF只支持HCS配置文件...
2022-02-17 23:51:36 4144浏览 4点赞 0回复 1收藏
移植案例与原理HDF驱动框架驱动配置(2)【本文正在参与优质创作者激励】1.2.7节点复制节点复制可以实现在节点定义时从另一个节点先复制内容,用于定义内容相似的节点。语法如下,表示在定义"node"节点时将另一个节点"sourcenode"的属性复制过来。node:sourcenode示例如下,编译后bar节点既包含attr0属性也包含attr1属性,在bar中对attr0的修改不会影响到foo。在foo和bar在同级node中可不指定foo的路径,否则需要使用绝对路径引...
2022-02-17 20:52:57 3302浏览 2点赞 1回复 1收藏
移植案例与原理HDF驱动框架驱动配置【本文正在参与优质创作者激励】HCS(HDFConfigurationSource)是HDF驱动框架的配置描述源码,内容以KeyValue为主要形式。它实现了配置代码与驱动代码解耦,便于开发者进行配置管理。应该,类似LinuxDTS(DeviceTreeSource)设备树。HCGEN(HDFConfigurationGenerator)是HCS配置转换工具,可以将HDF配置文件转换为软件可读取的文件格式。类似的,在Linux下,可以将DTS转换为DTB(DeviceTreeBlob,...
2022-02-17 20:52:33 3960浏览 2点赞 1回复 1收藏
【本文正在参与优质创作者激励】移植案例与原理XTS子系统之应用兼容性测试用例开发XTS(XTestSuite)子系统是OpenHarmony生态认证测试套件的集合,当前包括:acts(applicationcompatibilitytestsuite)应用兼容性测试套件,看护北向HAP兼容、OpenHarmony开发API兼容。hats(HardwareAbstractionTestSuite)硬件抽象测试套,看护HDI层接口。dcts(DistributedCompatibilityTestSuite)分布式兼容性测试套,看护分布式兼容(待上...
2022-02-10 21:48:35 3198浏览 4点赞 2回复 2收藏
移植案例与原理XTS子系统之应用兼容性测试套件(2)【本文正在参与优质创作者激励】1.2编译链接需要通过链接选项指定需要链接的ACTS的部件编译库文件,会使用到wholearchive和nowholearchive这2个ld链接选项。wholearchive可以把在其后面出现的静态库包含的函数和变量输出到动态库,nowholearchive则关掉这个特性。在文件vendor\goodix\gr5515skxtsdemo\BUILD.gn中,对ACTS的编译文件进行链接。其中⑴到⑵处的链接选项为编译出...
2022-02-10 17:26:02 3842浏览 3点赞 0回复 2收藏
移植案例与原理XTS子系统之应用兼容性测试套件【本文正在参与优质创作者激励】XTS(XTestSuite)子系统是OpenHarmony生态认证测试套件的集合,当前包括:acts(applicationcompatibilitytestsuite)应用兼容性测试套件,看护北向HAP兼容、OpenHarmony开发API兼容。hats(HardwareAbstractionTestSuite)硬件抽象测试套,看护HDI层接口。dcts(DistributedCompatibilityTestSuite)分布式兼容性测试套,看护分布式兼容(待上线)...
2022-02-10 17:24:44 4180浏览 3点赞 0回复 3收藏