Skip to main content

O que é código nativo?

Código nativo é uma forma de código de programação de computador configurado para funcionar com o uso de um processador especificado. A estrutura exata do código é configurada para responder às instruções emitidas pelo processador. Todos os tipos de software funcionam com código nativo e são gravados para funcionar com eficiência ideal com um tipo de processador selecionado ou com processadores fabricados para espelhar a configuração do processador especificado.

Como o código nativo é gravado para permitir funcionalidade total quando executado em um sistema usando componentes de processamento específicos, a opção de executar o software em um sistema sem o processador necessário resultará em acesso limitado às funções do pacote. Em alguns casos, o software pode não funcionar.

Uma maneira de executar um software usando um código nativo incompatível é fazer uso de um pacote intermediário de software chamado emulador que essencialmente converte os sinais do processador em dados que o código pode ler. Mesmo com os pacotes de software de código de emulação mais avançados, no entanto, a resposta e o grau de eficiência alcançados tendem a ser menores do que executar o programa em um sistema equipado com o processador correto. Freqüentemente, a melhor opção é reescrever o código para se adaptar ao processador atualmente em uso.

É importante observar que o código nativo é diferente do que é conhecido como bytecode. O Bytecode é compilado para ser executado em um modo de máquina virtual capaz de converter os componentes gerais do bytecode em um código nativo mais focado que funcionará com o processador em uso. Embora o bytecode possa ser convertido, não é possível executar a ação ao contrário e usar essa abordagem para aprimorar o nível de compatibilidade com um processador externo.

O código nativo é encontrado em todos os tipos de ambientes de programação. Com o tempo, a incidência de não funcionar bem com vários processadores começou a diminuir. Isso geralmente se deve ao fato de diferentes processadores estarem cada vez mais configurados para funcionar com os mesmos tipos de protocolos e seqüências lógicas.