一,内核

一、Linux 内核(宏内核)
类型:宏内核(Monolithic)

  • 手机、服务器、PC 通用内核,鸿蒙“标准系统”(手机/平板/智慧屏)用它。

  • 所有核心功能都塞进内核:进程、内存、文件系统、网络、驱动都在内核态。
    特点

  • 性能高(不用频繁跨态)、生态极强、稳定成熟。

  • 体积大(MB 级,千万行代码)、耦合高、一个模块崩可能整个系统挂 。

  • 实时性一般,要打补丁才能硬实时 。
    一句话:全能但笨重,适合资源足、要兼容安卓的设备。

二、LiteOS 内核(鸿蒙轻量实时内核)
类型:轻量级实时内核(偏“宏”但极简)

  • 华为自研,鸿蒙“轻量系统”用在手表、手环、传感器等 IoT 设备。
  • 比 Linux 小很多,比纯微内核功能多一点,主打低功耗+硬实时 。
    特点
    体积小(几十~几百 KB)、启动快、功耗极低 。
  • 硬实时(微秒级调度),适合工业/传感器/穿戴设备 。
  • 功能精简,无完整 Linux 生态,主要跑鸿蒙原生应用。
    一句话:轻量省电、实时强,给小设备用的“精简版内核”。
    三、鸿蒙微内核(HarmonyOS Microkernel)
    类型:纯微内核(Microkernel)
  • 鸿蒙未来主力内核,目前在极简设备/安全场景推进。
  • 内核只留最核心:线程调度、IPC、基础内存管理;文件/驱动/网络全放到用户态服务。
    特点
    极小(KB 级,约万行代码)、攻击面极小、安全高 。
  • 故障隔离:一个服务崩只影响自己,不挂系统。
  • 硬实时(调度延迟 <20μs)、分布式友好(内核级支持软总线) 。
  • IPC 有少量开销,生态正在完善 。
    一句话:小、安全、稳、实时,面向未来全场景的“水密舱”内核。

四、
Linux:兼容安卓生态,手机/大屏先用着。

  • LiteOS:先覆盖海量轻量 IoT 设备,低功耗+实时。
  • 鸿蒙微内核:终极形态,统一全设备,安全+分布式+实时。

一句话总结:Linux 管生态,LiteOS 管轻量,微内核管未来。

二,鸿蒙硬件

一、鸿蒙整体架构
四层架构,自下而上:

  1. 内核层:多内核(Linux、LiteOS、微内核),KAL 屏蔽差异 。
  2. 驱动层(HDF):鸿蒙驱动框架,统一硬件接口 。
  3. 系统服务层:分布式软总线、设备管理、电源管理等 。
  4. 应用层:调用硬件能力(传感器、相机、外设) 。
    二、内核与芯片适配
    1)内核类型
  • Linux 内核:手机、平板、智慧屏(富设备) 。
  • LiteOS 内核:IoT、穿戴、智能家居(轻量,KB~MB 级) 。
  • 鸿蒙微内核:极简设备、实时性要求高的场景 。
    2)主流芯片/开发板
  • Hi3861:Wi‑Fi IoT,LiteOS,开发板便宜、入门首选 。
  • Hi3516/3518:IPC、摄像头、多媒体 。
  • RK2206(小凌派):轻量AI、语音、IoT 。
  • RK3399:开源适配,平板/盒子 。
  • 麒麟990A:车规级,智能座舱 。
    3)指令集
  • ARMv8‑A/ARMv9:手机/平板主流 。
  • RISC‑V:Hi3861等IoT芯片(64GC) 。
  • x86_64:PC 兼容 。
    三、HDF 驱动框架(硬件开发核心)
    1)HDF 作用
    统一驱动接口:不管什么芯片,上层调用接口一致 。
  • 支持动态加载、热插拔、电源管理 。
  • 分层:核心层 → 适配层 → 硬件接口层 。
    2)HDF 驱动开发流程(面试常问)
  1. 定义设备节点(设备树/配置)
  2. 实现 DriverEntry(绑定、初始化、释放)
  3. 实现 硬件操作接口(read/write/ioctl)
  4. 注册到 HDF 框架
  5. 上层通过 DevMgr 或 统一接口调用
    3)HDF 核心概念
  • 设备对象(Device):代表一个硬件设备
  • 服务(Service):对外提供的能力
  • 配置(HCS):替代设备树,轻量、易读
  • 平台驱动、外设驱动、传感器驱动分类
    四、硬件抽象层 HAL
  • HAL:隔离内核驱动与系统服务/应用。
  • 提供 标准化 API(如传感器、GPIO、I2C、SPI、UART)。
  • 开发顺序:HDF → HAL → 系统服务 → 应用。

五、常用外设与总线
1)基础外设
GPIO:输入输出、按键、LED

  • UART:串口、调试、蓝牙模块
  • I2C:传感器(温湿度、加速度)、OLED
  • SPI:高速、LCD、Flash
  • PWM:调光、电机
  • ADC/DAC:模拟量采集/输出
    2)传感器(鸿蒙重点)
  • 运动:加速度、陀螺仪、地磁
  • 环境:温湿度、气压、光感
  • 生物:心率、指纹
  • 调用方式:SensorManager → 订阅事件 → 回调 。
    六、分布式硬件能力
    1)分布式软总线
  • 设备自动发现、自组网、低时延 。
  • 多协议融合:Wi‑Fi、BLE、NFC、以太网 。
  • 虚拟成超级终端,硬件能力共享(如调用手机摄像头) 。
    2)分布式设备虚拟化
    跨设备调用硬件:A设备用B设备的传感器/屏幕/音箱 。
    七、开发环境与工具
    DevEco Device Tool:硬件开发、编译、烧录、调试(VS Code 插件) 。
  • 编译构建:hb build(鸿蒙构建工具)
  • 调试:J‑Link、OpenOCD、串口日志
    八、常见硬件开发场景
  1. IoT 设备:Hi3861 + GPIO/传感器 + Wi‑Fi + 软总线
  2. 智能摄像头:Hi3516 + 视频编解码 + 网口
  3. 穿戴设备:LiteOS + 低功耗 + 传感器 + 蓝牙
  4. 外设驱动移植:基于 HDF 适配新芯片/模组
Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐