前言
我国信息科技的发展曾面临着“缺芯少魂”的不利局面,“芯”是指国产芯片,“魂”是指以操作系统为代表的核心基础软件。操作系统是支持芯片应用、系统软件和应用软件生态的基础。我国在操作系统领域的起步较晚,由于Linux、Windows和Android分别在服务器、个人计算机和智能手机领域处于垄断地位,而且其生态系统具有显著优势,因此以前的操作系统学习和底层开发均以这些操作系统为基础。鸿蒙操作系统及其开源版本OpenHarmony为操作系统生态带来了中国方案。OpenHarmony是一个面向全场景、全连接、全智能时代、全智能终端设备的开源操作系统,它的设计目标是为各种设备提供一个统一的软件平台,支持多种设备之间的无缝互连,以构建一个开放、分布式、全场景的智能操作系统生态。
OpenHarmony的开发特别是南向开发是一个较为复杂且具有挑战性的任务,南向开发涉及硬件多样性、驱动开发、性能优化和兼容性等多方面难点,学习的门槛较高,学习者往往出现“未入门即放弃”的现象。
本书力求将操作系统理论与开源鸿蒙(OpenHarmony)编程实践有机结合,大大降低学习门槛,从而为学习者进一步学习鸿蒙或开源鸿蒙的南向和北向开发打下良好的基础。
开源鸿蒙(OpenHarmony)的学习者面临的另外一个困难是底层的硬件架构、开发板等选择和组合甚多,开发者需要购买、组装和调试相关硬件,往往过早陷入硬件细节之中而不得要领,因此本书以RISCV虚拟平台为硬件基础,避免了上述问题,使学习者聚焦其原理和编程实践。
此外,为了降低学习门槛,本书前10章对OpenHarmony的源码进行了极致简化,提取了内核、虚拟系统相关的源码,读者只需要使用该部分源码即可进行学习。
本书的主要内容如下:
第一篇为基本原理,主要对OpenHarmony进行概述,并简要介绍其硬件与仿真。
第二篇介绍OpenHarmony的启动、任务管理与进程间通信。
第三篇介绍OpenHarmony的内存、中断与文件系统管理。
第四篇介绍OpenHarmony轻量系统的环境与编译构建。
本书可作为开源鸿蒙、鸿蒙操作系统南向开发者或较底层的北向开发者的参考书,也可作为以开源鸿蒙或鸿蒙平台开展操作系统实验或嵌入式开发实验的教材。每一章可作为一个独立的实验,每一章的最后一节编程实践可作为实验内容,其余作为实验原理。
本书作者单位为昆明学院信息工程学院、云南省智能物流装备与系统重点实验室、云南省跨境数字经济重点实验室,本书的出版得到了以下项目支持:
1. 昆明学院人才引进项目“生成式人工智能影响研究”,项目编号: XJ20230066。
2. 云南省科技创新基地建设项目,项目编号: 202407AB110006。
3. 教育部华为产学合作协同育人项目“‘OpenHarmony操作系统实验’教材建设”,项目编号: 240700007274631。
4. 教育部华为产学合作协同育人项目“应用型本科HarmonyOS移动应用开发课程建设”,项目编号: 250600007171424。
5. 云南省专业学位研究生教学案例库“电子信息工程实践教学案例库”。
在此一并表示感谢。
由于OpenHarmony技术及生态发展迅速,作者虽然近年来一直跟踪相关技术的发展,但由于水平有限,书中难免有不足之处,恳请广大读者批评指正。
高联雄
2026年5月
