Skip to main content

¿Qué es un código administrado?

  • Herman

"Código administrado" es un término creado por Microsoft® Coproration. Este término se refiere al código de programa que requiere el uso de la máquina virtual Common Language Runtime (CLR) para poder usarse. El término "código no administrado" se utiliza para referirse al código de programa que no requiere esta máquina virtual.

Common Language Runtime se desarrolló en un intento de permitir que los programas se ejecuten en una variedad de computadoras y sistemas operativos sin requerir ningún cambio en el código del programa. Para hacer esto, el código del programa de computadora se convierte en bytecode de máquina virtual. Este bytecode es interpretado por la máquina virtual CLR y convertido en bytecode para la computadora específica en la que se está ejecutando.

Un código administrado puede ejecutarse en cualquier computadora que esté equipada con la máquina virtual CLR. Este alto grado de portabilidad le da una ventaja definitiva sobre el código no administrado. El código no administrado requiere que los programadores alteren el código del programa para usarlo en diferentes máquinas. Este proceso no solo puede ser lento, sino que también puede generar muchos errores de aplicación.

Otra ventaja que tiene un código administrado es su seguridad mejorada. La seguridad de un programa hecho con un código no administrado depende en gran medida de la implementación que hicieron los programadores. El uso de la máquina virtual CLR ayuda a quitar una gran parte de los problemas de seguridad de los programadores. La mayoría de los problemas de seguridad que pueden surgir se centran directamente en la máquina virtual. Esto en sí mismo ayuda a centralizar los problemas, lo que hace que sea mucho más rápido implementar parches de seguridad.

La cuestión de si un conjunto particular de código es código administrado o código no administrado es extremadamente importante para los programadores de computadoras. El código administrado tiene un mayor grado de portabilidad, pero esta portabilidad requiere que Common Language Runtime esté instalado en la computadora de destino. El código no administrado, por otro lado, puede ejecutarse sin la adición del CLR.

El uso del código administrado tiene muchas ventajas, pero también hay varias desventajas. La desventaja principal es la sobrecarga que requiere el uso de la máquina virtual CLR. La diferencia entre la velocidad a la que se ejecuta el código administrado y la velocidad del código no administrado a menudo es insignificante, pero en algunos casos, crea una diferencia muy notable en el tiempo de respuesta de la aplicación. Como resultado, el código no administrado juega un papel crucial en la mayoría de las aplicaciones que requieren un alto grado de velocidad sobre la portabilidad.