En informática , el software nativo o los formatos de datos son aquellos que fueron diseñados para ejecutarse en un sistema operativo en particular . En un sentido más técnico, el código nativo es código escrito específicamente para un determinado procesador . [1] Por el contrario, el software multiplataforma se puede ejecutar en múltiples sistemas operativos y/o arquitecturas informáticas .
Por ejemplo, una Game Boy recibe su software a través de un cartucho , que contiene código que se ejecuta de forma nativa en la Game Boy. [2] La única forma de ejecutar este código en otro procesador es utilizar un emulador , que simula una Game Boy real. [3] Esto generalmente tiene como costo la velocidad. [4]
Algo que se ejecuta en una computadora de forma nativa significa que se ejecuta sin ninguna capa externa que requiera menos capas de software. Por ejemplo, en Microsoft Windows , la API nativa es una interfaz de programación de aplicaciones específica para el kernel de Windows NT , que se puede utilizar para dar acceso a algunas funciones del kernel, a las que no se puede acceder directamente a través de una API de Windows más universal .
Se utiliza para indicar la ausencia de virtualización o la virtualización en su nivel más bajo. Cuando tienen lugar varios niveles de virtualización, el sistema operativo de nivel más bajo (el que realmente mantiene el control directo del hardware) se denomina "VM nativa", por ejemplo.
El código de máquina , también conocido como código nativo, es un programa que está escrito en lenguaje de máquina. El código de máquina generalmente se considera el nivel más bajo de código para una computadora, que, en su forma de nivel más bajo, está escrito en binario (0 y 1), pero a menudo se escribe en hexadecimal u octal para hacerlo un poco más fácil de manejar. [5] Estos conjuntos de instrucciones son luego interpretados por la computadora. Con esto, no hay necesidad de traducción. El código de máquina es estrictamente numérico y generalmente no es lo que programan los programadores, debido a su naturaleza compleja. [6] El código de máquina también es lo más parecido al procesador , por lo que al utilizar este lenguaje, estás programando específicamente para ese procesador, ya que el código de máquina para cada procesador puede diferir. [7] Normalmente, los programadores codificarán en lenguajes de alto nivel como C , C++ , Pascal (u otros lenguajes compilados directamente) que se traducen a código ensamblador , que luego lo traduce a código de máquina (o en la mayoría de los casos, el compilador genera código de máquina). código directamente). Dado que cada CPU es diferente, los programas deben recompilarse o reescribirse para poder funcionar en esa CPU. [8]
Aplicados a los datos , los formatos de datos nativos o protocolos de comunicación son aquellos soportados por un determinado hardware o software de computadora, con máxima consistencia y mínima cantidad de componentes adicionales.
Por ejemplo, los adaptadores de vídeo EGA y VGA admiten de forma nativa la página de códigos 437 . Esto no impide admitir otras páginas de códigos , pero requiere cargar una fuente o utilizar modos gráficos .
En computación en la nube, "nativo de la nube" se refiere al enfoque de software para crear, implementar y administrar aplicaciones modernas en entornos de computación en la nube, para software optimizado para ejecutarse en una plataforma basada en la nube. Una aplicación nativa de la nube normalmente consta de microservicios modulares individuales.