Home Empirical Findings of RQ1 (Issue Types and Root Causes)
Post

Empirical Findings of RQ1 (Issue Types and Root Causes)

This table presents the empirical findings of RQ1. Among the 92 C/C++ projects identified with patches, each *.patch file may contain multiple code segments. Each segment specifies modified source file paths and corresponding line numbers to address a CPI issue. From this, we summarized that discrepancies between OpenHarmony and Linux across three core aspects:
(1) system libraries/runtime environments,
(2) build systems, and
(3) third-party library version requirements. These issues typically manifest through eight dimensions.
Issue TypeDescriptionRoot Causes#issues#RatioExample Link
Type ACPI issues caused by system library and runtime environment discrepancies between OpenHarmony and LinuxInconsistent Native API Availability5125.4% OpenLDAP
Divergent Logical Path Encapsulation Conventions199.4% Chipmunk2D
Non-aligned Filesystem Hierarchy Structures3818.9% pulseaudio
Type BOpenHarmony and Linux have discrepant build systemCompiler-dependent Default Type Signedness Variations136.5% json-schema-validator
ISA-specific Compilation Configuration Mismatches105% cpp-httplib
Conditional Compilation Branch Inconsistencies6029.8% chrono
Differing C/C++ Standard Version Support Thresholds42% protobuf
Type CAPI breaking changes of third-party libraries pre-installed in OpenHarmony and Linux-42% zbar
Others- Discrepant warning messages thrown by the compiler toolchains21% tinyexr
Figure: Compilation Error Messages Triggered by CPI Issues

Figure: Compilation Error Messages Triggered by CPI Issues