введение
Прежде чем приступить к разработке HarmonyOS, очень важно понять ее историю, особенности и архитектуру. В этой главе вы найдете полный обзор HarmonyOS.
Оглавление
-
- Что такое HarmonyOS
-
- История развития HarmonyOS
-
- Особенности HarmonyOS
-
- Архитектура HarmonyOS
-
- HarmonyOS по сравнению с другими операционными системами
1. Что такое HarmonyOS
HarmonyOS — это полноценная многоядерная распределенная операционная система для нескольких устройств, выпущенная компанией Huawei.
HarmonyOS (HarmonyOS, кодовое название разработки Ark, официальное название Huawei Terminal Harmony Smart Device Operating System Software) — это AOSP-совместимая операционная система, разрабатываемая компанией Huawei с 2012 года. Производительность системы включает использование «распределенной» технологии для интеграции различных устройств в «супертерминал» для облегчения работы и совместного использования различных ресурсов устройств.
Архитектура системы поддерживает несколько ядер, включая ядро Linux, LiteOS и микроядро Hongmeng. Требуемое ядро может быть выбрано в соответствии с различными интеллектуальными устройствами, например, при использовании ядра LiteOS на устройствах с низким энергопотреблением.
Huawei официально выпустила HarmonyOS в июне 2021 года.
определение
Все сценарии: HarmonyOS стремится предоставить унифицированную операционную систему, подходящую для нескольких типов устройств, таких как смартфоны, планшеты, телевизоры, интеллектуальные носимые устройства, автомобильные системы, умные дома и т. д. Это означает, что разработчики могут использовать один набор кода для разработки приложений для нескольких устройств, что значительно снижает сложность и затраты на разработку.
Несколько типов устройств: HarmonyOS не ограничивается мобильными устройствами, но также включает устройства IoT, автомобильные системы, промышленное оборудование и т. д. Это означает, что HarmonyOS можно использовать в различных сценариях для удовлетворения потребностей разных типов устройств.
Многоядерность: HarmonyOS поддерживает несколько процессорных архитектур, включая ARM, x86, RISC-V и т. д. Это означает, что HarmonyOS может работать на разных аппаратных платформах.
2. История развития HarmonyOS
2019: Huawei впервые выпускает HarmonyOS, совершенно новую операционную систему, разработанную для обеспечения единой распределенной операционной системы.
2020: Huawei выпускает версию HarmonyOS 2.0, которая поддерживает больше типов устройств, включая смартфоны, планшеты, телевизоры, интеллектуальные носимые устройства и т. д.
2021: Huawei выпускает HarmonyOS версии 3.0, в которой добавлены более продвинутые функции, такие как возможности искусственного интеллекта, распределенное управление данными, распределенная программная шина и т. д.
3. Особенности HarmonyOS
Распределенная архитектура. Самая большая особенность HarmonyOS — это распределенная архитектура, которая позволяет нескольким устройствам работать вместе и совместно использовать ресурсы. Это означает, что разработчикам будет проще разрабатывать приложения для совместной работы на нескольких устройствах и обеспечивать лучший пользовательский опыт.
Безопасность: HarmonyOS имеет встроенные многоуровневые механизмы безопасности, включая безопасный запуск, безопасную работу, безопасность данных, безопасную связь и т. д. Это означает, что HarmonyOS может обеспечить более высокий уровень безопасности и защитить данные и конфиденциальность пользователей.
Низкая задержка: HarmonyOS оптимизирует планирование задач, управление памятью, обработку ввода-вывода и т. д., сокращая задержку системы. Это означает, что HarmonyOS может обеспечить более плавный пользовательский интерфейс.
4. Архитектура HarmonyOS
Архитектура HarmonyOS разделена на четыре уровня:
слой ядра
- Подсистема ядра: HarmonyOS использует многоядерную конструкцию для поддержки выбора подходящих ядер ОС для различных устройств с ограниченными ресурсами. Уровень абстрактного ядра (KAL, абстрактный уровень ядра) предоставляет базовые возможности ядра верхнему уровню, экранируя многоядерные различия, включая управление процессами/потоками, управление памятью, файловой системой, управлением сетью и управлением периферийными устройствами и т. д.
- Подсистема драйверов: Hardware Driver Framework (HDF) является основой открытости аппаратной экосистемы HarmonyOS, обеспечивая унифицированные возможности доступа к периферийным устройствам, а также платформы разработки и управления драйверами.
Уровень системного обслуживания
Уровень системных сервисов — это основной набор возможностей HarmonyOS, который предоставляет услуги приложениям через уровень инфраструктуры. Этот слой содержит следующие части:
- Набор подсистем базовых возможностей системы: Обеспечивает базовые возможности для работы, планирования, миграции и других операций распределенных приложений на нескольких устройствах HarmonyOS. Он состоит из распределенной программной шины, распределенного управления данными, распределенного планирования задач и многоязычной среды выполнения Ark. общедоступная базовая библиотека, многорежимный ввод, графика, безопасность, искусственный интеллект и другие подсистемы. Среди них среда выполнения Ark предоставляет многоязычную среду выполнения C/C++/JS и библиотеки базовых системных классов, а также предоставляет статические программы Java с использованием компилятора Ark (то есть части уровня приложения или платформы, разработанные с использованием языка Java). , Время выполнения.
- Базовый набор подсистем программных служб: предоставляет общедоступные и общие программные службы для HarmonyOS, включая уведомления о событиях, телефон, мультимедиа, DFX (Design For X), MSDP&DV и другие подсистемы.
- Набор подсистем расширенного программного обеспечения: предоставляет HarmonyOS дифференцированные программные сервисы с расширенными возможностями для различных устройств, состоящие из таких подсистем, как фирменные сервисы интеллектуальных экранов, фирменные сервисы носимых устройств и фирменные сервисы IoT.
- Набор подсистем аппаратных служб: предоставляет аппаратные службы для HarmonyOS, состоящие из таких подсистем, как службы определения местоположения, биометрическая идентификация, службы носимого оборудования и службы собственного оборудования IoT.
В соответствии со средой развертывания различных форм устройств базовый набор подсистем программных услуг, расширенный набор подсистем программных услуг и набор подсистем аппаратных услуг могут быть адаптированы в соответствии с детализацией подсистемы, и каждая подсистема может быть адаптирована в соответствии с детализацией функций.
Уровень платформы Уровень
платформы предоставляет многоязычные среды пользовательских программ, такие как ArkTS/JS/C/C++/Java для разработки приложений HarmonyOS. Две среды пользовательского интерфейса (включая среду разработки Ark для языка ArkTS/JS, а именно ArkUI, и языка Java). Java UI framework), а также общедоступные API-интерфейсы многоязычной платформы для различных программных и аппаратных сервисов. В зависимости от степени компонентизации системы API, поддерживаемые устройствами HarmonyOS, также будут различаться.
Прикладной уровень
Прикладной уровень включает в себя системные приложения и сторонние несистемные приложения. Приложения HarmonyOS состоят из одного или нескольких FA (функциональная способность) или PA (возможность частицы). Среди них FA имеет интерфейс пользовательского интерфейса и обеспечивает возможность взаимодействия с пользователями; в то время как PA не имеет интерфейса пользовательского интерфейса и обеспечивает возможность запуска задач в фоновом режиме и унифицированную абстракцию доступа к данным. Доступ к фоновым данным, требуемый FA во время взаимодействия с пользователем, также должен поддерживаться соответствующим PA. Приложения, разработанные на основе FA/PA, могут реализовывать определенные бизнес-функции, поддерживать планирование и распространение между устройствами, а также предоставлять пользователям согласованную и эффективную работу с приложениями.
5. Сравнение HarmonyOS с другими операционными системами
5.1 Сравнение с Android и iOS
- Архитектура:
- HarmonyOS использует микроядерную архитектуру, что означает, что ее ядро меньше и легче, обеспечивая более высокую стабильность и безопасность системы.
- Android использует ядро Linux, которое представляет собой архитектуру макроядра.
- iOS использует ядро XNU, которое представляет собой гибридную архитектуру ядра.
- Распределенные возможности:
- Самая большая особенность HarmonyOS — это распределенная архитектура, которая позволяет нескольким устройствам работать вместе и совместно использовать ресурсы. Это означает, что разработчикам будет проще разрабатывать приложения для совместной работы на нескольких устройствах и обеспечивать лучший пользовательский опыт.
- Android и iOS в основном предназначены для одного устройства, и хотя у них есть некоторые распределенные возможности, они не так хороши, как HarmonyOS.
- безопасность:
- HarmonyOS имеет встроенные многоуровневые механизмы безопасности, включая безопасный запуск, безопасную работу, безопасность данных, безопасную связь и т. д.
- Android и iOS также имеют высокий уровень безопасности, но HarmonyOS внесла больше оптимизаций в безопасность.
- Язык разработки:
- HarmonyOS поддерживает несколько языков программирования, включая Java, JavaScript, C++ и т. д.
- Android в основном использует Java и Kotlin.
- iOS в основном использует Objective-C и Swift.
5.2 Сравнение с Linux и Windows
- Архитектура:
- HarmonyOS использует микроядерную архитектуру.
- Linux использует архитектуру макроядра.
- Windows использует гибридную архитектуру ядра.
- Распределенные возможности:
- HarmonyOS обладает мощными распределенными возможностями.
- Linux и Windows в первую очередь предназначены для одного устройства.
- безопасность:
- HarmonyOS имеет встроенные механизмы многоуровневой безопасности.
- Linux и Windows также имеют высокий уровень безопасности, но HarmonyOS внесла больше оптимизаций в безопасность.
- Язык разработки:
- HarmonyOS поддерживает несколько языков программирования.
- Linux и Windows поддерживают множество языков программирования, однако выбор языков разработки может быть несколько ограничен.
В этой главе представлены базовые знания о HarmonyOS, включая определение, историю разработки, функции, архитектуру и сравнение с другими операционными системами. Это заложило прочную основу для последующих опытно-конструкторских работ.