韦东山HarmonyOS鸿蒙Next移植02_必备基础知识
韦东山HarmonyOS鸿蒙Next移植02_必备基础知识
- 基础知识
移植内核对技术的要求比较高、比较细。
1.1 单片机相关的知识
- 栈的作用
- 加载地址、链接地址
- 重定位
- 几个简单的硬件知识
- 串口
- 定时器
- 中断的概念
1.2 Linux操作相关的知识
- Linux常用命令
- 简单的脚本:脚本就是把命令写在一个文件里
- Makefile
- GCC编译命令
1.3 芯片相关知识
- 能阅读芯片手册(英文)
- 移植最小系统时,涉及的手册内容不多
- 能看懂硬件原理图
- 移植最小系统时,涉及的原理图内容不多
- 驱动程序知识
对于只有单片机知识的人来说,怎么去操作硬件?
- 直接读写寄存器
- 使用库函数
在RTOS中,本质也是去读写寄存器,但是需要有统一的驱动程序框架。
所以:RTOS驱动 = 驱动框架 + 硬件操作
2.1 以点灯为例
2.1.1 硬件原理
2.1.2 单片机点灯
- 方法1:直接读写寄存器
- 方法2:使用厂家的HAL库
2.1.3 FreeRTOS点灯
2.1.4 rt-thread点灯
- 方法1:直接操作寄存器
- 方法2:使用驱动程序
- 驱动模型如下
- 驱动示例如下
- 调用过程框架
- 调用过程示例
2.1.5 Liteos-a/Linux怎么点灯
使用MMU时,一般APP与内核是相互隔离的。APP通过标准的open/read/write等文件操作函数去调用驱动程序。
为何要多此一举?
- 它们支持MMU(内存管理单元)
- 用户程序跟内核是分隔开的,用户程序不能直接读写寄存器
- 用户程序通过标准接口访问驱动程序
- 基于这些内核的软件一般都比单片机软件复杂,术业有专攻
- 不应该让写APP的人去看原理图、写驱动、写寄存器
- 软件和硬件隔离,硬件再怎么变化,只需要改驱动,APP不需要改
2.1.6 Android怎么点灯
Android是Linux操作系统上的一套操作系统 Android通过Linux来访问硬件,本质还是Linux驱动 一般的C程序、C++程序,可以直接调用open/read/write等函数 使用java编写的程序要访问C函数需要通过JNI
更多关于韦东山HarmonyOS鸿蒙Next移植02_必备基础知识的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在韦东山的HarmonyOS鸿蒙Next移植系列中,第二篇《必备基础知识》主要介绍了进行鸿蒙Next移植所需的基础知识。鸿蒙Next是华为推出的新一代操作系统,其设计理念和架构与传统的操作系统有所不同,因此在进行移植时需要掌握一些特定的知识。
首先,了解鸿蒙Next的架构是基础。鸿蒙Next采用了微内核架构,这意味着系统核心功能被最小化,而其他功能则以服务的形式运行在用户空间。这种设计提高了系统的安全性和可扩展性。
其次,熟悉鸿蒙Next的分布式能力。鸿蒙Next支持设备间的无缝协同,能够实现跨设备的任务迁移和数据共享。这要求开发者在移植过程中考虑到设备间的通信和数据同步机制。
再者,掌握鸿蒙Next的应用程序框架。鸿蒙Next提供了丰富的API和开发工具,支持多种编程语言和开发环境。开发者需要熟悉这些工具和API,以便在移植过程中能够高效地开发和调试应用程序。
最后,了解鸿蒙Next的安全机制。鸿蒙Next在系统设计上注重安全性,提供了多层次的安全保护措施。开发者在移植过程中需要遵循这些安全规范,确保系统的安全性。
总之,进行鸿蒙Next移植需要掌握其架构、分布式能力、应用程序框架和安全机制等基础知识。这些知识将帮助开发者更好地理解和操作鸿蒙Next系统,顺利完成移植工作。
更多关于韦东山HarmonyOS鸿蒙Next移植02_必备基础知识的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在移植HarmonyOS鸿蒙Next时,需掌握以下基础知识:
-
系统架构:了解鸿蒙的微内核架构,包括内核、系统服务、框架层和应用层。
-
开发环境:熟悉DevEco Studio开发工具,掌握HDF(硬件抽象层)和HAP(鸿蒙应用包)的配置与编译。
-
驱动开发:掌握HDF驱动框架,能够编写和调试设备驱动。
-
移植流程:熟悉从硬件适配到系统启动的完整移植流程,包括Bootloader、内核和文件系统的配置。
-
调试技巧:掌握日志分析、断点调试等调试方法,确保系统稳定运行。