[OT] Una pregunta sobre .NET

26/10/2004 - 15:45 por tracert | Informe spam
Es .NET un simple interprete?

Según he leido en varios documentos de Microsoft y otros autores, para
ASP.NET, en el cual dicen que hacen una CJI (Compiled Just In-time) en
tiempo de ejecución, y eso creo que es lo de nunca un interprete.

Ademas cuando compilas cualquier programa lo pasa a un segundo lenguaje de
programación codificado, que creo que se llama algo así como "Microsoft
Tags" (no me hagais mucho caso que estoy usando la memoria) y que es
descompilable y se obtiene un programa con sus funciones (viene en el .NET
SDK 1.x gratuito)

Por ejemplo perl, php y los archivos batch hacen compilaciones CJI o no?

Solo veo que no codifican los ficheros fuentes, bueno PHP puedes
codificarlos y luego ejecutarles solo si tienes Zend optimizer o el Turck
MMCache y existia hace algún tiempo un programita llamado algo así como
bat2exe que convertia los ficheros batch en ejecutables.

Es por eso que tengo un poco de lio, entre lo que es un lenguaje
Interpretado (ej: perl, batch o php(codificado o no)) y uno compilado (c,
c++, Pascal, etc..) y este compilado en tiempo de ejecución (.NET y Mono).

Un saludo
 

Leer las respuestas

#1 A.Poblacion
26/10/2004 - 16:12 | Informe spam
Digamos que es un lenguaje compilado en dos pasos:
1) El código fuente se compila para generar un fichero ejecutable en disco
que en realidad lo que contiene es un código intermedio denominado MSIL
(Microsoft Intermediate Languaje).
2) En el momento de invocar el ejecutable, se dispara el compilador
just-in-time (JIT) que convierte el MSIL en código máquina optimizado para
la CPU en la que se esté ejecutando en ese momento.

Si se desea dejar el código permanentemente compilado a código máquina para
que no tenga que actuar el compilador JIT, se puede utilizar para ello una
herramienta que viene con .Net denominada NGEN (Native code Generator).
Además de esto, si no me equivoco, también cuando se instala un ejecutable
en el GAC (Global Assembly Cache), .Net lo compila en ese momento y se
almacena ya compilado.


"tracert" wrote in message
news:bysfd.3289174$
Es .NET un simple interprete?

Según he leido en varios documentos de Microsoft y otros autores, para
ASP.NET, en el cual dicen que hacen una CJI (Compiled Just In-time) en
tiempo de ejecución, y eso creo que es lo de nunca un interprete.

Ademas cuando compilas cualquier programa lo pasa a un segundo lenguaje de
programación codificado, que creo que se llama algo así como "Microsoft
Tags" (no me hagais mucho caso que estoy usando la memoria) y que es
descompilable y se obtiene un programa con sus funciones (viene en el .NET
SDK 1.x gratuito)

Por ejemplo perl, php y los archivos batch hacen compilaciones CJI o no?

Solo veo que no codifican los ficheros fuentes, bueno PHP puedes
codificarlos y luego ejecutarles solo si tienes Zend optimizer o el Turck
MMCache y existia hace algún tiempo un programita llamado algo así como
bat2exe que convertia los ficheros batch en ejecutables.

Es por eso que tengo un poco de lio, entre lo que es un lenguaje
Interpretado (ej: perl, batch o php(codificado o no)) y uno compilado (c,
c++, Pascal, etc..) y este compilado en tiempo de ejecución (.NET y Mono).

Un saludo


Preguntas similares