OpenHarmony开发者论坛

标题: LTS3.0 XTS 证书获取以及源码问题(来自企业开发者提问) [打印本页]

作者: SiXiangZei    时间: 2024-1-26 10:59
标题: LTS3.0 XTS 证书获取以及源码问题(来自企业开发者提问)
[md]各位好,我是一名来自企业的开发者,未来我们需要获取轻量系统LiteOS_M,源码OpenHarmony LTS3.0版本下的XTS设备认证证书(我不使用任何开发板,只基于官方源码进行STM32主芯片开发),目前我有如下疑问,希望得到解答(更希望有来自XTS认证小组及OpenHarmony社区成员答疑):

根据Gitee社区OpenHarmony兼容性认证小组上传的资料《OpenHarmony设备兼容性规范3.0自检表_轻量系统》以及《OpenHarmony3.0产品兼容性规范》轻量系统章节中说明,轻量系统必须集成11个最小子系统集合。我目前集成了9个子系统,包括资料提及的:LiteOS_M内核、驱动框架、公共基础库、流水日志DFX、启动恢复Startup、电源管理、分布式软总线、分布式数据管理、分布式任务调度,但有两个资料提及的子系统目前未集成:语言编译器运行时、账号服务。以下是所有问题描述:

* 驱动框架HDF:该子系统在//build/lite/components目录下有json配置,但是全隶属于A核、linux,但又有属于轻量系统的BUILD目录,所以只能手动添加。
* 流水日志DFX与驱动框架HDF:
  轻量内核hilog_lite无法进行HDF打印适配,HDF默认使用hilog依赖(a核以上),这里很抽象,我将HDF接口切换到了hilog_lite并使用hilog_lite打印,否则根本编译都无法通过。从我修改的位置也可以看出来,M核dfx依赖的是hilog_lite,但是M核HDF又为什么include属于A核的hilog?编译直接报错!

  `轻量M内核DFX接口:HiLogPrintf  /OpenHarmony_LTS_3.0/base/hiviewdfx/hilog_lite/interfaces/native/kits/hilog_lite/hiview_log.h`

  `驱动框架HDF接口:HiLogPrint  /OpenHarmony_LTS_3.0/base/hiviewdfx/hilog_lite/interfaces/native/kits/hilog/log.h`

  `修改位置:#include "hilog_lite/log.h"  //原include "hilog/log.h",这明显是a核的头,但出现在M核目录下。并且该目录下README_zh.md文件中介绍的目录结构也是错的` `OpenHarmony_LTS_3.0/drivers/adapter/khdf/liteos_m/osal/include/hdf_log_adapter.h`
* 文件系统:

  在《OpenHarmony设备兼容性规范3.0自检表_轻量系统》-“必选子系统”-“公共基础库栏”有以下说明字样:“如果使用了文件系统”;但实际上在“必选子系统”-“公共基础库”以及“启动恢复”子系统的官方XTS测试用例中,直接就有FS文件操作(我目前8项测试全部集成,我也提供了文件接口,但没有挂载SD卡,所以在KvStoreFuncTestSuite、ParameterFuncTestSuite、UtilsFileFuncTestSuite中文件相关测试用例全部失败,目前所有要求的8项测试全部通过,除了文件相关操作);以上为什么一边又说“如果使用了文件系统”,一边测试用例里全是文件操作,那么开发者是否可以根据实际情况裁剪剔除测试用例?
* 账号服务:

  根据查阅资料及BUILD.gn配置,account子系统实际属于标准系统,并且依赖项包含ipc、标准hilog等轻量系统无法进行集成的组件,那为何在《OpenHarmony3.0产品兼容性规范》轻量系统章节中说明“必须集成”账号服务?

  ` /OpenHarmony_LTS_3.0/base/account/os_account/README_zh.md 第13行说明:在标准系统上,系统帐号组件...`
* 语言编译器运行时:

  这个子系统是最没有头绪的,它指的是//ark方舟,还是//base/compileruntime。并且在M核里怎么添加?
* 分布式软总线:

  根据《OpenHarmony3.0产品兼容性规范》说明,设备必须具有Wifi、蓝牙或有线以太网能力中的一种,并且在《兼容性测试套件名称》列表下,说明的是ActsWifiServiceTest测试套件,意思设备必须有Wifi?那么是否不具备网络功能的设备就无法获取XTS 认证证书。(PS:我们的设备没有Wifi,所以我目前选择的是 `LwipFuncTestSuite`并且全部通过,不过我修改了 `#define BUF_SIZE 512 //原1024*8`,官方直接1024*8的大小,确定M核能用吗?407反正直接炸了)
* XTS 认证证书

  根据《OpenHarmony设备兼容性规范3.0自检表_轻量系统》、《OpenHarmony3.0产品兼容性规范》以及OpenHarmony-SIG《兼容性达标等级释义》,得分项中确实必须要有以上子系统集合,但是相关子系统又存在我上述的问题,这是否自相矛盾。
* 总结:

  ①轻量级M核-LTS3.0-XTS设备证书是否“必须一定”要求以上及文件中所述“11种子系统”?是否能够对其进行裁剪,以及对测试用例进行裁剪。

  ②设备是否必须具备FS能力(没有FS接口根本无法编译),设备是否必须具备网络能力(分布式软总线的必要依赖)?

  ③账号服务、HDF与DFX抽象的编译构建疑问。
* 其他:

  站在三方开发者的角度下,说实话,OpenHarmony社区的成员,能不能把教程写好一点全面一点,能不能学学正点原子、野火、江科大之类的开发板企业,网页教程相当完善全面,做到了实际意义上的手把手玩转每个模块,而OpenHarmony的教程则是:下载开发板源码---把源码丢进去---输入hb build---编译通过---程序运行---哇,跑起来了。这是在干啥,这是在指导产线操作人员吗(PS:OpenHarmony全网都是卖课的,这就有点高下立判,到底OpenHarmony物联网生态是面向学生还是面向企业的)。另外OpenHarmony的《设备开发文档》跟实际操作出入相当大,基本上可以说是跟着教程走三天饿九顿,对开发者来说就是折磨,所以在文中我的语气有点重,我也去过成都站现场,真的是如同那位同学说的“从热情满满的入门到放弃”。

  我希望这个帖子不要冷贴,最好来点官方社区的人来看看,我们需要的是详细完善统一无异的开发过程资料,而不是买课才能获取资料然后玩开发板。另外OpenHarmony的项目文档、资料管理,站在三方开发者角度来看,说实话,很乱,人人都能往上发,人人都能改,那我们企业开发者参与OpenHarmony生态到底该怎么玩,给我整迷茫了都。希望有人回答我以上的开发疑问。
[/md]
作者: SiXiangZei    时间: 2024-1-29 17:23
1.HDF问题已解决,是LOSCFG_BASE_CORE_HILOG的问题,关了就好了。
2.官网发放的源码下载地址下载的全量LTS 3.0源码dsoftbus存在结构性问题,并且文档介绍目录结构也不一样,直接编译找不到softbus_adapter_kernel
"$dsoftbus_root_path/core/adapter/kernel:softbus_adapter_kernel",
3.根据https://ost.51cto.com/posts/7661说明,账号子系统属于标准系统,为什么兼容性测试表3.0中说轻量系统必须适配账号服务?

作者: 论坛小助手    时间: 2024-2-2 14:21
请问下编译命令是什么,执行出错的build日志或者截图有么有,可以发一下吗
作者: SiXiangZei    时间: 2024-2-4 08:42
回复 论坛小助手: 编译目前没有问题,我已经解决了。

现在让我觉得混乱的是获取证书要求的“必须子系统最小集”这个概念。

我目前源码版本是LTS 3.0.8,将《OpenHarmony3.0产品兼容性规范》中要求的必备子系统全部编入,《OpenHarmony设备兼容性规范3.0自检表_轻量系统》要求的XTS测试也全编入,除了FS文件其余自测全部PASS。

但是我无法在源码中找到《OpenHarmony3.0产品兼容性规范》---“账号服务”这个必备子系统,源码中唯一有一个account子系统,但是它属于标准系统。
《OpenHarmony3.0产品兼容性规范.pdf》最小系统集中对账号服务、分布式软总线有明确需求:
---如果我的设备不具备网络能力,是否无法获取兼容性证书。
---如果我的设备不具备文件系统能力,那么部分PCS最小需求的子系统将无法编译,这是否说明必须使用文件系统或适配相关接口(不使用),否则无法编译。

还请给我解释一下,因为单位是第一次接入OHOS项目,所以没有任何权威解释与专业培训。
作者: SiXiangZei    时间: 2024-2-4 08:45
回复 论坛小助手: 编译没有问题了,你可以看看我的另一个帖子,我现在被官方发布得资料搞的很混乱。
作者: SiXiangZei    时间: 2024-2-4 16:24
回复 论坛小助手: 能解答一下疑问吗,我非常得感谢
作者: 论坛小助手    时间: 2024-2-5 14:45
回复 SiXiangZei: 你好,能否提供一下你看的官方文档的链接?
作者: SiXiangZei    时间: 2024-2-6 09:41
回复 论坛小助手: 非常您的感谢回复。以下是我们找到的“轻量级系统”相关证书获取资料的需求等(我们是做工业控制设备类型的产品,准备移植的现有设备目前是没有SD卡、没有显示屏、没有wifi/蓝牙等功能,所以您不用站在应用软件开发的角度看我提出的问题,当然如果一些部件确实是必须的,我们可以重新设计产品结构)

1.
PCS官方获取地址
       这是PCS表获取地址,我目前分别看了LTS 3.0、Release 3.1、Release3.2版本,另外4.0跟3.2链接跳转到同一张表。
2.
兼容性等级达标释义
       这是SIG官方仓库展示的《兼容性等级达标释义》内容,是2022年的LTS 3.0老旧版本,其他版本没有找到。

LTS 3.0版本:
       我实在是找不到3.0版本需求的“账号服务”子系统,唯一一个有相关性的account子系统属于标准系统。但是Niobe407 LTS 3.0并没有进行“3.0账号服务”的子系统适配,但是它获取了证书,如果按照《兼容性等级达标释义》它没有上述“账号服务”是无法通过的。

Release 3.2版本:
       其中《3.2 PCS自检表》跟《3.2 产品兼容性规范》里证书要求的最小系统集合不统一,举例:3.2版本的OTA子系统,《3.2 产品兼容性规范》对ota_lite组件有需求,但《3.2 PCS自检表》component页面中,mini系统没有对ota_lite的需求,只有对sys_install_lite组件的需求;《3.2 产品兼容性规范》对三方库freeBSD、OPENSSL、boringSSL等有mini最小需求,但在《3.2 PCS自检表》component中显示为N/A不涉及。
       另外官方展览的USBKey存储器也获取了3.2证书,它至少肯定没有“分布式软总线”吧,我目前就很疑惑到底是参照什么标准去选择证书最小子系统集的?

子系统的必选/可选问题:
       文件系统不是必选的,但是必选的最小子系统集的一些组件功能调用又必须要文件系统(比如《产品兼容性规范》里说的init_lite组件,否则OHOS_SystemInit系统初始化LiteParamService都直接报错)
       还有最小集是否如《PCS表格/产品兼容性规范》所述必须集成“分布式软总线”并提供网络能力,那如果我们的设备没有网络功能,那证书获取是否直接宣告破产?

       我们非常需要一个没有歧义的认证标准资料,这样接下来才能更好的接入OpenHarmony生态(我们也参加过OH成都站的会议,对一起促进OpenHarmony生态的发展,我们还是很有热情的)
       非常非常感谢您的回复!
作者: SiXiangZei    时间: 2024-2-7 19:45
回复 论坛小助手: 能给予一下回复吗,非常感谢。
作者: SiXiangZei    时间: 2024-2-18 19:14
回复 论坛小助手: 请问能给予一下回复吗,非常感谢。
作者: SiXiangZei    时间: 2024-2-19 11:01
回复 论坛小助手: 能给予一下回复吗,非常感谢。
作者: 论坛小助手    时间: 2024-2-19 16:41
回复 SiXiangZei: 在找相应领域的技术专家求助答疑了,请耐心等候
作者: 论坛小助手    时间: 2024-2-19 17:00
回复 SiXiangZei: https://www.openharmony.cn/certification/document/guid
兼容性测评版本要求
兼容性测评套件版本说明:

合作伙伴提交的兼容性测评申请需要选择OpenHarmony已发布LTS(Long Term Support)或Release分支的V版本进行测试。推荐使用最新发布LTS 或 Release分支的V版本。

规则如下:

1、新的LTS或 Release分支发布6个月后,不支持基于新产品老分支版本测评。

2、老产品(已测评过产品),在LTS或 Release分支维护周期内支持升级测评。
作者: SiXiangZei    时间: 2024-2-19 17:52
回复 论坛小助手: 非常感谢您的耐心解答,那我们以后就只参考这个PCS表格了。

不过这里还有一些之前提到的问题您没有说明,非常感谢您的解答!:

比如我们现在使用Release 3.2、轻量级系统进行产品开发,我们是不是必须要适配PCS表格里的OTA远程升级模块?在PCS自检表里有如下说明:【G-UPDATE-0100】设备必须支持提供对整个系统软件升级的机制,其中升级机制可以包括:在线OTA升级,外接USB线或者移动存储卡的本地升级等,意思是可以不用OTA吗?但是在《OpenHarmony3.2 产品兼容性规范》中又要求必须适配OTA子系统。(目前我们的设备是串口升级,公司也有自己的boot)

另外目前准备移植的产品也没有SD卡与文件系统,文件存储也是必须的吗?
作者: SiXiangZei    时间: 2024-2-19 17:59
回复 论坛小助手: 非常感谢!全网只有您在回复我们的问题
作者: 论坛小助手    时间: 2024-2-20 10:19
回复 SiXiangZei: 不会呀,很多开发者都在帮助大家解答,我们统计的时候都有看到大家的付出

少数疑难问题就只能求助OpenHarmony的专家进行解答了,答疑周期会稍微长一点
大家在OpenHarmony开发者提的问题和回答,我们都有关注到哈,感谢大家对OpenHarmony的付出!
作者: SiXiangZei    时间: 2024-2-20 10:54
回复 论坛小助手: 还请麻烦解答一下最新提出的那系列问题
作者: 论坛小助手    时间: 2024-2-20 15:05
回复 SiXiangZei: 新提的问题已经求助相关的技术专家了,有进展的会尽快回复你
作者: SiXiangZei    时间: 2024-2-20 15:18
回复 论坛小助手: 非常感谢!
作者: SiXiangZei    时间: 2024-2-22 10:34
回复 论坛小助手: 你好,请问专家有回复了吗?
作者: SiXiangZei    时间: 2024-2-26 11:33
回复 论坛小助手: 有 了吗




欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/) Powered by Discuz! X3.5