OpenHarmony Application Launch Mechanism and Runtime Initialization
This article examines the application launch sequence in OpenHarmony based on its source code, detailing the initialization procedures of key components such as process_spawner/ability_runtime/ui_engine/ets_runtime and their interconnections.
While different types of HAP applications may have specific variations, the overall launch flow remai ...
Posted on Fri, 22 May 2026 22:27:00 +0000 by anwoke8204
Implementing OpenHarmony HDF Platform Drivers for SoC Porting
Drivers in OpenHarmony are categorized into platform drivers and device drivers. Platform drivers handle on-SoC peripherals such as GPIO, I2C, and SPI controllers. Device drivers manage external components like LCD displays, touch panels, and WLAN modules connected to the SoC.The HDF (Hardware Driver Foundation) framework enables cross-operatin ...
Posted on Mon, 18 May 2026 23:35:21 +0000 by alwaysinit
Porting the OpenHarmony Kernel to a New Hardware Architecture
Porting the Processor Architecture
The foundation of kernel porting lies in adapting the processor architecture. In OpenHarmony, this step is optional—only required if the target architecture is not already supported. The list of currrently supported architectures can be found under liteos_m/arch. Refer to Table 1 for an overview.
Table 1: Supp ...
Posted on Thu, 14 May 2026 06:44:51 +0000 by jokerofsouls
Implementing Worker Threads in HarmonyOS ArkTS
Worker Thread InitializationImport the worker module and instantiate a thread. For API version 9 and later, utilize ThreadWorker. Earlier versions rely on the deprecated Worker class.import worker from '@ohos.worker';
// API 9+ instantiation
const backgroundTask: worker.ThreadWorker = new worker.ThreadWorker('entry/ets/workers/TaskProcessor.et ...
Posted on Thu, 07 May 2026 23:03:35 +0000 by freewholly
Exporting NAPI Class Objects and Their Lifecycle Management (Part 1)
1. Exporting NAPI Class Objects
OpenHarmony NAPI provides a way to "wrap" C++ classes and instances sothat JS applications can call constructors, methods, and access properties of those classes.
Node.js Node-API also supports exporting class objects.
1.1. Flow of Exporting Class Objects via NAPI
Define a JS class using napi_define_cl ...
Posted on Thu, 07 May 2026 14:48:49 +0000 by bubblocity
Device Driver Porting in OpenHarmony
LCD Driver Porting
The primary task for porting an LCD driver involves creating a driver that instantiates a panel model and completes the registration process.
LCD drivers reside in the source directory //drivers/hdf_core/framework/model/display/driver/panel.
Creating a Panel Driver
Implement an HDF driver and invoke the RegisterPanel interfac ...
Posted on Thu, 07 May 2026 08:35:56 +0000 by slapdashgrim