Durante meses hemos conocido que Huawei estaba desarrollando su propio sistema operativo, el cual conocíamos como HongmengOS. La compañía ha aprovechado su conferencia para desarrolladores para presentar Harmony OS, el nombre oficial de su sistema operativo propio.
Resumen sobre Harmony OS: Huawei indica que Harmony OS es un sistema de gran rendimiento, compatible con múltiples dispositivos como TV, móviles, ordenadores o wearables, diseñado para la interconexión entre dispositivos del Internet de las cosas. Es Open Source y Huawei afirma que está listo para sustituir a Android en caso de ser necesario (aunque prefieren seguir colaborando con Google).
¿Pero qué hace que Harmony OS sea especial?
Por qué Harmony OS es genial para cualquier dispositivo
Para entender la elección de Huawei a la hora de diseñar Harmony tenemos que ir un paso atrás. La compañía ha decidido apostar por una estructura de microkernel, una decisión muy acertada para construir un sistema desde 0.
En términos de informática, el kernel es el núcleo del sistema, donde están todos los elementos que hace que todo funcione. Uno de los núcleos más conocidos es el de Linux, desde el cual Android está basado.
Un problema de Linux es que es de tipo monolítico, por lo que toda la estructura se encuentra en un único bloque. Esto hace que sea un núcleo muy completo, quizás demasiado completo para dispositivos que deberían tener una naturaleza más sencilla.
Tal y como podemos ver en la imagen comparativa, Linux es una arquitectura que por su naturaleza es muy difícil integrar el sistema con un ecosistema de dispositivos. Por otro lado, también han hecho referencia a la arquitectura híbrida de Apple, mucho mejor pensada pero que a la larga termina siendo un entorno controlado, el cual ofrece una experiencia únicamente con las aplicaciones de fábrica.
La elección del microkernel, según Huawei, es que al ser un tipo de núcleo más modular, es posible crear un sistema operativo multidispositivo, con un rendimiento bestial.
Además de Harmony, Fuchsia OS de Google también apuesta por la arquitectura de microkernel. No obstante, Huawei afirma que Harmony está a un nivel superior en términos de rendimiento, algo que tendremos que tomar con pinzas.
Seguridad y conectividad
Al estar basado en una arquitectura pensada para varios dispositivos, Huawei ha querido asegurar que Harmony sea un sistema operativo diseñado para la interconexión de dispositivos de forma segura. La clave para Huawei en su desarrollo está pensada en que «la persona adecuada, con el dispositivo adecuado, acceda al dato adecuado».
Harmony OS utiliza un entorno de ejecución seguro (TEE: Trusted Execution Environment). Este tipo de especificación permite operaciones que son ejecutadas en una zona del procesador que está mucho más controlada, y que permite que dichas operaciones críticas sean ejecutadas con total seguridad.
Centrado en tecnologías y lenguajes de programación conocidos
Una duda importante sobre las posibilidades de Harmony estaba en la relación que tendría con los desarrolladores. Por muy buen sistema que sea, de nada sirve si nadie es capaz de hacer aplicaciones para estos dispositivos.
La elección de lenguajes de programación y tecnologías son cruciales para que la experiencia multidispositivo de la que habla Huawei realmente sea funcional. Inicialmente, estos son los lenguajes escogidos por Huawei como compatibles con Harmony a través del compilador ARK.
- Java: a día de hoy, Java sigue siendo uno de los lenguajes más populares, siendo el lenguaje que durante años ha abanderado el desarrollo de apps Android.
- Kotlin: este lenguaje está creciendo en popularidad, y la razón de ello es que se ha convertido en un lenguaje de primer nivel para crear apps para Android. Fácil de aprender y con mejor futuro que java.
- Javascript: para cualquiera que decida aprender a programar aplicaciones multiplataforma, Javascript es un lenguaje obligatorio. Cada vez existen más entornos de trabajo que usan Javascript como lenguaje principal. Imprescindible para aplicaciones web.
- C y C++: cuando hablamos de rendimiento y optimización, no hay nada como C y C++, posiblemente los dos lenguajes más importantes de toda la historia de la informática. Aunque aprender a controlar el acceso a memoria es complicado, si buscas rendimiento es la mejor opción.
En términos de compatibilidad, Huawei afirma que Harmony soportará eventualmente aplicaciones Linux, HTML5 y Android.
Actualizaciones periódicas y de código abierto
Huawei ha hecho hincapié en que el desarrollo de Harmony OS es constante. La versión 1.0 del sistema operativo será lanzada este mismo año, con un entorno de desarrollo de aplicaciones en fase beta.
Para 2020 tendremos la versión 2.0, y para 2021 la versión 3.0. Poco a poco, Harmony OS se irá expandiendo a más y más dispositivos, por lo que tendremos que estar atentos a las futuras novedades del sistema.
La última novedad sobre Harmony OS es quizás la más importante, y es que Huawei construirá todo este proyecto del sistema operativo como open source. Esto quiere decir que el acceso al código con el que construyen la plataforma será de libre acceso para tomarlo, estudiarlo y modificarlo.