En savoir plus sur HarmonyOS

introduction

Avant de commencer le développement d'HarmonyOS, il est très important de comprendre son contexte, ses fonctionnalités et son architecture. Ce chapitre vous fournira un aperçu complet d’HarmonyOS.

Table des matières

    1. Qu'est-ce qu'HarmonyOS
    1. L’historique du développement d’HarmonyOS
    1. Caractéristiques d'HarmonyOS
    1. Architecture HarmonyOS
    1. HarmonyOS comparé à d'autres systèmes d'exploitation

1. Qu'est-ce qu'HarmonyOS

HarmonyOS est un système d'exploitation distribué à scénario complet, multi-appareils et multicœur lancé par Huawei.
HarmonyOS (HarmonyOS, nom de code de développement Ark, officiellement nommé Huawei Terminal Harmony Smart Device Operating System Software) est un système d'exploitation compatible AOSP développé par Huawei depuis 2012. Les performances du système incluent l'utilisation d'une technologie « distribuée » pour intégrer divers appareils dans un « super terminal » afin de faciliter le fonctionnement et le partage de diverses ressources d'appareils.

L'architecture du système prend en charge plusieurs cœurs, dont le noyau Linux, LiteOS et le micro-noyau Hongmeng. Le noyau requis peut être sélectionné en fonction de divers appareils intelligents, comme l'utilisation du noyau LiteOS sur des appareils à faible consommation.

Huawei a officiellement lancé HarmonyOS en juin 2021.

définition

Tous les scénarios : HarmonyOS vise à fournir un système d'exploitation unifié adapté à plusieurs types d'appareils, tels que les smartphones, les tablettes, les téléviseurs, les appareils portables intelligents, les systèmes automobiles, les maisons intelligentes, etc. Cela signifie que les développeurs peuvent utiliser un seul ensemble de codes pour développer des applications pour plusieurs appareils, réduisant ainsi considérablement la complexité et les coûts de développement.

Plusieurs types d'appareils : HarmonyOS ne se limite pas aux appareils mobiles, mais inclut également les appareils IoT, les systèmes embarqués, les équipements industriels, etc. Cela signifie qu'HarmonyOS peut être utilisé dans une variété de scénarios pour répondre aux besoins de différents types d'appareils.

Multicœur : HarmonyOS prend en charge plusieurs architectures de processeur, notamment ARM, x86, RISC-V, etc. Cela signifie qu'HarmonyOS peut fonctionner sur différentes plates-formes matérielles.

2. Historique de développement d'HarmonyOS

2019 : Huawei lance HarmonyOS pour la première fois, un tout nouveau système d'exploitation conçu pour fournir un système d'exploitation unifié et distribué.

2020 : Huawei lance HarmonyOS version 2.0, qui prend en charge davantage de types d'appareils, notamment les smartphones, les tablettes, les téléviseurs, les appareils portables intelligents, etc.

2021 : Huawei lance HarmonyOS version 3.0, qui ajoute des fonctionnalités plus avancées, telles que des capacités d'IA, la gestion de données distribuées, un bus logiciel distribué, etc.

3. Caractéristiques d'HarmonyOS

Architecture distribuée : La plus grande fonctionnalité d'HarmonyOS est l'architecture distribuée, qui permet à plusieurs appareils de travailler ensemble et de partager des ressources. Cela signifie que les développeurs peuvent développer plus facilement des applications pour la collaboration multi-appareils et offrir une meilleure expérience utilisateur.

Sécurité : HarmonyOS dispose de mécanismes de sécurité intégrés à plusieurs niveaux, notamment un démarrage sécurisé, un fonctionnement sécurisé, des données sécurisées, une communication sécurisée, etc. Cela signifie qu'HarmonyOS peut offrir une sécurité plus élevée et protéger les données et la confidentialité des utilisateurs.

Faible latence : HarmonyOS optimise la planification des tâches, la gestion de la mémoire, le traitement des E/S, etc., réduisant ainsi la latence du système. Cela signifie qu'HarmonyOS peut offrir une expérience utilisateur plus fluide.

4. Architecture d'HarmonyOS

L'architecture d'HarmonyOS est divisée en quatre couches :

couche du noyau

  • Sous-système de noyau : HarmonyOS adopte une conception multicœur pour prendre en charge la sélection de noyaux de système d'exploitation appropriés pour différents appareils aux ressources limitées. Kernel Abstract Layer (KAL, Kernel Abstract Layer) fournit des fonctionnalités de base du noyau à la couche supérieure en protégeant les différences multicœurs, notamment la gestion des processus/threads, la gestion de la mémoire, le système de fichiers, la gestion du réseau et la gestion des périphériques, etc.
  • Sous-système de pilotes : Hardware Driver Framework (HDF) constitue la base de l'ouverture de l'écosystème matériel HarmonyOS, fournissant des capacités d'accès aux périphériques unifiées et des cadres de développement et de gestion de pilotes.

Couche de service système

La couche de services système constitue l'ensemble des fonctionnalités de base d'HarmonyOS, qui fournit des services aux applications via la couche framework. Cette couche contient les parties suivantes :

  • Ensemble de sous-systèmes de capacités de base du système : fournit des fonctionnalités de base pour le fonctionnement, la planification, la migration et d'autres opérations d'applications distribuées sur plusieurs appareils HarmonyOS. Il comprend un bus logiciel distribué, une gestion de données distribuée, une planification de tâches distribuées et un environnement d'exécution multilingue Ark. , bibliothèque de base publique, entrée multimode, graphiques, sécurité, IA et autres sous-systèmes. Parmi eux, le runtime Ark fournit un runtime multilingue C/C++/JS et des bibliothèques de classes système de base, ainsi que des programmes Java statiques utilisant le compilateur Ark (c'est-à-dire les parties de l'application ou de la couche framework développées à l'aide du langage Java). .Exécution.
  • Ensemble de sous-systèmes de services logiciels de base : fournit des services logiciels publics et généraux pour HarmonyOS, comprenant la notification d'événements, le téléphone, le multimédia, DFX (Design For X), MSDP&DV et d'autres sous-systèmes.
  • Ensemble de sous-systèmes de services logiciels améliorés : fournit à HarmonyOS des services logiciels différenciés aux capacités améliorées pour différents appareils, composés de sous-systèmes tels que des services propriétaires d'écran intelligent, des services propriétaires portables et des services propriétaires IoT.
  • Ensemble de sous-systèmes de services matériels : fournit des services matériels pour HarmonyOS, composés de sous-systèmes tels que les services de localisation, l'identification biométrique, les services matériels propriétaires portables et les services matériels propriétaires IoT.

Selon l'environnement de déploiement de différentes formes de dispositif, l'ensemble de sous-systèmes de services logiciels de base, l'ensemble de sous-systèmes de services logiciels améliorés et l'ensemble de sous-systèmes de services matériels peuvent être adaptés en fonction de la granularité du sous-système, et chaque sous-système peut être adapté en fonction de la granularité des fonctions.

Couche framework
La couche framework fournit des frameworks de programmes utilisateur multilingues tels que ArkTS/JS/C/C++/Java pour le développement d'applications HarmonyOS. Deux frameworks d'interface utilisateur (dont le framework de développement Ark pour le langage ArkTS/JS, à savoir ArkUI, et le langage Java Java UI framework), ainsi que des API de framework multilingues ouvertes au public pour divers services logiciels et matériels. En fonction du degré de composantisation du système, les API prises en charge par les appareils HarmonyOS varieront également.

Couche application
La couche application comprend les applications système et les applications tierces non système. Les applications HarmonyOS se composent d'un ou plusieurs FA (Feature Ability) ou PA (Particle Ability). Parmi eux, FA possède une interface utilisateur et offre la possibilité d'interagir avec les utilisateurs ; tandis que PA n'a pas d'interface utilisateur et offre la possibilité d'exécuter des tâches en arrière-plan et une abstraction d'accès aux données unifiée. L'accès aux données d'arrière-plan requis par FA lors de l'interaction de l'utilisateur doit également être pris en charge par le PA correspondant. Les applications développées sur la base de FA/PA peuvent mettre en œuvre des fonctions commerciales spécifiques, prendre en charge la planification et la distribution entre appareils et offrir aux utilisateurs une expérience d'application cohérente et efficace.

5. Comparaison entre HarmonyOS et d'autres systèmes d'exploitation

5.1 Comparaison avec Android et iOS

  • Architecture:
    • HarmonyOS utilise une architecture à micro-noyau, ce qui signifie que son noyau est plus petit et plus léger, offrant ainsi une stabilité et une sécurité accrues du système.
    • Android utilise le noyau Linux, qui est une architecture de noyau macro.
    • iOS utilise le noyau XNU, qui est une architecture de noyau hybride.
  • Capacités distribuées :
    • La plus grande caractéristique d'HarmonyOS est son architecture distribuée, qui permet à plusieurs appareils de travailler ensemble et de partager des ressources. Cela signifie que les développeurs peuvent développer plus facilement des applications pour la collaboration multi-appareils et offrir une meilleure expérience utilisateur.
    • Android et iOS sont principalement conçus pour un seul appareil et, bien qu'ils disposent de certaines capacités distribuées, ils ne sont pas aussi performants qu'HarmonyOS.
  • sécurité:
    • HarmonyOS dispose de mécanismes de sécurité intégrés à plusieurs niveaux, notamment un démarrage sécurisé, un fonctionnement sécurisé, des données sécurisées, une communication sécurisée, etc.
    • Android et iOS offrent également une sécurité élevée, mais HarmonyOS a apporté davantage d'optimisations en matière de sécurité.
  • Langage de développement :
    • HarmonyOS prend en charge plusieurs langages de programmation, notamment Java, JavaScript, C++, etc.
    • Android utilise principalement Java et Kotlin.
    • iOS utilise principalement Objective-C et Swift.

5.2 Comparaison avec Linux et Windows

  • Architecture:
    • HarmonyOS utilise une architecture micro-noyau.
    • Linux utilise une architecture macro-noyau.
    • Windows utilise une architecture de noyau hybride.
  • Capacités distribuées :
    • HarmonyOS possède de fortes capacités distribuées.
    • Linux et Windows sont principalement conçus pour un seul appareil.
  • sécurité:
    • HarmonyOS dispose de mécanismes de sécurité intégrés à plusieurs niveaux.
    • Linux et Windows offrent également une sécurité élevée, mais HarmonyOS a apporté davantage d'optimisations en matière de sécurité.
  • Langage de développement :
    • HarmonyOS prend en charge plusieurs langages de programmation.
    • Linux et Windows prennent en charge une variété de langages de programmation, mais le choix des langages de développement peut être quelque peu limité.

Ce chapitre fournit des connaissances de base sur HarmonyOS, y compris la définition, l'historique de développement, les fonctionnalités, l'architecture et la comparaison avec d'autres systèmes d'exploitation. Cela a posé une base solide pour les travaux de développement ultérieurs.

Je suppose que tu aimes

Origine blog.csdn.net/xudepeng0813/article/details/132579505
conseillé
Classement