当前位置: 首页 > news >正文

HCIA-HarmonyOS设备开发认证-2.设备开发入门

在这里插入图片描述

目录

  • HarmonyOS设备开发学习路径
  • 一、开发项目与工具介绍
    • 1.1、设备开发环境准备
    • 1.2、设备开发流程
    • 1.3、Huawei DevEco Device Tool
  • 二、OpenHarmony介绍
    • OpenHarmony目录结构详细介绍
      • applications目录详解
      • base目录详解
      • foundation目录详解
    • OpenHarmony接口分层介绍
      • CMSIS 和 POSIX 整体架构
      • CMSIS 架构
      • POSIX 架构
    • 组件开发介绍
    • HPM
  • 三、思考题
  • 坚持就有收获

HarmonyOS设备开发学习路径

请添加图片描述

一、开发项目与工具介绍

1.1、设备开发环境准备

  • Window、Linux开发环境
    请添加图片描述

  • 软件安装列表

windows提供代码编辑和程序烧录环境,Ubuntu提供编译环境

安装环境安装内容作用版本说明
Ubuntu20.04Pyton编译构建工具3.8.5的64位版本
Ubuntu20.04Pyton编译构建工具3.8.5的64位版本
Ubuntu20.04Pyton编译构建工具3.8.5的64位版本
Ubuntu20.04Pyton编译构建工具3.8.5的64位版本
Window10Vscode代码编辑工具64位最新版本
Window10Python编译构建工具≥3.7.3的64位版本
Window10Node.js提供npm环境64位最新版本
Window10hpm包管理工具64位最新版本
Window10DevEco Device Tool源码的编辑,烧录,调试64位最新版本
Window10(可选安装)Hiburn烧录工具64位最新版本

1.2、设备开发流程

请添加图片描述

1.3、Huawei DevEco Device Tool

  • 支持HarmonyOS的组件按需定制
  • 支持代码编辑,编译,烧录和调试
  • 支持C/C++语言
  • 以插件的形式部署在Vscode上

二、OpenHarmony介绍

OpenHarmony目录结构详细介绍

  • OpenHarmony项目的目录结构中,共有16个1级目录文件夹。
    • applications目录中主要存放了用户的应用程序;
    • base目录识HarmonyOS Framework的基础能力集合,定位于大多数设备开发需要的能力模块;
    • untils目录作为公共基础库,存放通用的基础组件。
.
├── applications/sample         //应用程序样例
├── base                        //基础软件服务子系统
├── build                       //组件化编译和构建
├── developtools                //开发工具
├── device                      //设备相关文件
├── docs                        //说明文档
├── domains                     //增加软件服务子系统
├── drivers                     //驱动
├── foundation                  //系统基础能力
├── kernel                      //内核子系统
├── out                         //编译输出文件
├── prebuilts                   //编辑器及工具子系统
├── test                        //测试子系统
├── third_party                 //开源第三方组件
└── vendor                      //厂商提供的软件
...

applications目录详解

  • applications目录主要存放用户的应用程序,或是HarmonyOS预置的系统应用程序。
...

base目录详解

  • base目录识HarmonyOS Framework的基础能力集合,定位于大多数设备开发需要的能力模块。
.
├── global              //全球化模块,是设备的基础能力模块,可被裁剪
├── hiviewdfx           //DFX模块
├── iothardware         //IOT外设能力模块(GPIO/I2C/SPI/AD/DA等)
├── kits                //IOT外设控制模块接口,与frameworks/wifiiot_lite配合
├── security            //安全模块
├── syspara_lite        //系统属性模块文件
...

foundation目录详解

  • foundation提供了更为高级的系统基础能力模块,包含分布式调度与分布式通信等。
foundation/
├── aafwk                   //ability开发框架接口,ability的管理服务
├── ai                      //AI引擎框架
├── communication           //分布式通信
├── distributeddatamgr      //分布式任务调度
├── graphic                 //图像模块
├── multimedia              //多媒体
...

OpenHarmony接口分层介绍

CMSIS 和 POSIX 整体架构

  • CMSIS(Cortex Microcontroller Software Interface Standard, 微控制器软件接口标准)和POSIX(Portable Operating System Interface, 可移植操作系统接口)都是可移植操作接口的标准,属于应用接口层,可增强应用软件的可移植性,降低开发难度。
    请添加图片描述

CMSIS 架构

请添加图片描述

POSIX 架构

  • POSIX是API的一系列互相关联标准的总称。
  • 对于目前大多数的RTOS实时操作系统,不支持使用内存管理单元。
  • 文件系统包括虚拟文件系统,网络文件系统,文件配置表等内容。
  • 扩展内核:异常管理,动态加载等
  • 基础内核:时间管理,内存管理,IPC通信,任务同步,硬件管理,任务调度。
    请添加图片描述

组件开发介绍

  • HarmonyOS组件开发遵从模块化开发思想:独立的小组件拼接成为一组组件,再次编译打包构成带有完整系统镜像的发行版。
    请添加图片描述

  • 一个组件(bundle)通常和一个代码仓库对应,在代码的基础上增加bundle.json、README、LICENSE描述文件。

  • 一个发行版(distribution)是由多个组件构成的。发行版中集合了一个完整系统的各个组件(驱动、内核、框架、应用),可以用于设备的烧录。

异同点组件发行版
应用场景面向功能特性开发面向系统开发
内容功能或特性的实现代码或二进制库依赖的组件清单及编译构建脚本
完整程度操作系统的一部分一个完整操作系统版本
编译后结果组件包系统镜像

HPM

  • HarmonyOS Package Manager是HarmonyOS的包管理工具。
  • HPM主要功能:获取源码,执行安装、编译、打包、升级操作。

三、思考题

5. (判断题)对于当前版本,在HarmonyOS设备开发中,代码编译需要使用的操作系统是Linux。()A. 正确B. 错误6. (判断题)HarmonyOS设备开发需要使用到DevEco Studio。()A. 正确B. 错误7. (单选题)HarmonyOS设备开发主要使用的开发语言是什么?()A. 汇编B. C/C++C. JavaD. Python8.(判断题)CMSIS是ARM公司为Cortex芯片设计的一种标准。()A. 正确B. 错误9. (判断题)CMSIS和POSIX都是可以增强软件的可移植性,降低开发难度。()A. 正确B. 错误10.(多选题)在CMSIS架构中,MCU层包含哪些组成部分?()A. Cortex(ARM处理器)B. 系统定时器C. 外设寄存器D, 调试与追踪接口

坚持就有收获

在这里插入图片描述

相关文章:

HCIA-HarmonyOS设备开发认证-2.设备开发入门

目录 HarmonyOS设备开发学习路径一、开发项目与工具介绍1.1、设备开发环境准备1.2、设备开发流程1.3、Huawei DevEco Device Tool 二、OpenHarmony介绍OpenHarmony目录结构详细介绍applications目录详解base目录详解foundation目录详解 OpenHarmony接口分层介绍CMSIS 和 POSIX …...

2. HarmonyOS 应用开发 DevEco Studio 准备-2

2. HarmonyOS 应用开发 DevEco Studio 准备-2 首选项设置 中文设置 主题 字体 插件安装和使用 保存时操作 编辑器 工程树管理 代码树管理 标记 字符串可视化编辑 参考文档 常用快捷键 编辑 查找或替换 编译与运行 调试 其他 预览 页面预览 自定义组件预览 预览…...

【K8S 云原生】K8S的图形化工具——Rancher

目录 一、rancher概述 1、rancher概念 2、rancher和K8S的区别: 二、实验 1、安装部署 2、给集群添加监控: 3、创建命名空间: 4、创建deployment: 5、创建service: 6、创建ingress: 7、创建hpa 8…...

3. SQL 语言

重点: MySQL 的 三种安装方式:包安装,二进制安装,源码编译安装。 MySQL 的 基本使用 MySQL 多实例 DDLcreate alter drop DML insert update delete DQL select 3)SQL 语言 3.1)关系型数据库的常见…...

Android音量调节修改

前言 今日公司,安卓设备的音量显示不正常,让我来修复这个bug,现在已修复,做个博客,记录一下,以后碰到类似一下子就好解决。 Android音量调节相关 路径 frameworks\base\services\core\java\com\android…...

九州金榜|为什么鼓励式家庭教育?

鼓励式教育是一种积极的教育方式,它强调通过鼓励和肯定来激发孩子的积极性和自信心,帮助孩子更好地成长和发展。在家庭教育中,鼓励式教育同样具有重要意义。九州金榜家庭教育和大家一起探讨关于鼓励式教育的好处以及意义: 一.有助…...

Java复习系列之阶段二:数据库

1. 基础语法 1.1 DQL(数据查询语句) 执行顺序: from、join 、on、where、group by、having、select、distinct、order by、limit 1.2 DML(数据修改语言) 对数据表的增删改 insert into update set delete form 1.…...

TCP 异常断开连接【重点】

参考链接 https://xiaolincoding.com/network/3_tcp/tcp_down_and_crash.html https://xiaolincoding.com/network/3_tcp/tcp_unplug_the_network_cable.html#%E6%8B%94%E6%8E%89%E7%BD%91%E7%BA%BF%E5%90%8E-%E6%9C%89%E6%95%B0%E6%8D%AE%E4%BC%A0%E8%BE%93 关键词&#xff1a…...

Biotin-PEG4-TSA,生物素-PEG4-酪胺,用于标记蛋白质、核酸等生物分子

您好,欢迎来到新研之家 文章关键词:Biotin-PEG4-Tyramide,Biotin-PEG4-TSA,生物素-PEG4-酪胺,Biotin PEG4 Tyramide,Biotin PEG4 TSA 一、基本信息 产品简介:Biotin PEG4 Tyramide is compos…...

Python环境下基于机器学习的NASA涡轮风扇发动机剩余使用寿命RUL预测

本例所用的数据集为C-MAPSS数据集,C-MAPSS数据集是美国NASA发布的涡轮风扇发动机数据集,其中包含不同工作条件和故障模式下涡轮风扇发动机多源性能的退化数据,共有 4 个子数据集,每个子集又可分为训练集、 测试集和RUL标签。其中&…...

Vite学习指南

那本课程都适合哪些人群呢? 想要学习前端工程化,在新项目中投入使用 Vite 构建工具的朋友 Webpack 转战到 Vite 的小伙伴 前端架构师们,可以充实自己的工具箱 当然如果你没有项目相关开发经验,也可以从本课程中受益&#xff0…...

无人机在三维空间中的转动问题

前提 这篇博客是对最近一个有关无人机拍摄图像项目中所学到的新知识的一个总结,比较杂乱,没有固定的写作顺序。 无人机坐标系旋转问题 上图是无人机坐标系,绕x轴是翻滚(Roll),绕y轴是俯仰(Pitch),绕z轴是偏航(Yaw)。…...

鸿蒙开发初体验

文章目录 前言一、环境配置1.1 安装DevEco Studio1.2 安装相关环境 二、工程创建三、工程结构介绍四、代码实现4.1 初识ArkTs4.2 具体实现 参考资料 前言 HarmonyOS是华为公司推出的一种操作系统,旨在为不同设备提供统一的操作系统和开发平台。鸿蒙开发的出现为用户…...

【Axure教程0基础入门】02高保真基础

02高保真基础 1.高保真原型的要素 (1)静态高保真原型图 尺寸:严格按照截图比例,参考线 色彩:使用吸取颜色,注意渐变色 贴图:矢量图/位图,截取,覆盖等 (…...

【GitHub项目推荐--常见的国内镜像】【转载】

由于国内网络原因,下载依赖包或者软件,对于不少互联网从业者来说,都有不小的挑战,时间浪费在这上边,实在可惜。这个项目介绍了常见依赖,软件的国内镜像,助力大家畅爽编码。 这是一个归纳梳理类…...

实战 | OpenCV+OCR实现弧形文字识别实例(详细步骤 + 源码)

导 读 本文主要介绍基于OpenCV+OCR实现弧形文字识别实例,并给详细步骤和代码。源码在文末。 背景介绍 测试图如下,目标是正确识别图中的字符。图片来源: https://www.51halcon.com/forum.php?mod=viewthread&tid=6712 同样,论坛中已经给出了Halcon实现代码,…...

哪些 3D 建模软件值得推荐?

云端地球是一款免费的在线实景三维建模软件,不需要复杂的技巧,只要需要手机,多拍几张照片,就可以得到完整的三维模型! 无论是大场景倾斜摄影测量还是小场景、小物体建模,都可以通过云端地球将二维数据向三…...

AI论文指南|人大教授教你如何利用ChatGPT革新内容分析!【建议收藏】

点击下方▼▼▼▼链接直达AIPaperPass ! AIPaperPass - AI论文写作指导平台 公众号原文▼▼▼▼: AI论文指南|人大教授教你如何利用ChatGPT革新内容分析!【建议收藏】 目录 1.ChatGPT内容分析 2.书籍介绍 3.AIPaperPass智能论文写作平…...

leetcode 字符串相关题目

344. 反转字符串 - 力扣(LeetCode) 题解:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 541. 反转字符串 II - 力扣(LeetCode) 题解:https://leetcode.cn/problems/reverse-s…...

第二百九十一回

文章目录 1. 概念介绍2. 方法与细节2.1 实现方法2.2 具体细节 3. 示例代码4. 内容总结 我们在上一章回中介绍了"如何混合选择图片和视频文件"相关的内容,本章回中将介绍如何混合选择多个图片和视频文件.闲话休提,让我们一起Talk Flutter吧。 1…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

高危文件识别的常用算法:原理、应用与企业场景

高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...

12.找到字符串中所有字母异位词

🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

在Ubuntu24上采用Wine打开SourceInsight

1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 :主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 :确保数据的完整性,便于数据的查询和管理。 示例 :在学生信息表中,学号可以作为主键&#xff…...