domingo, julio 31, 2005

Just In Time Compiler: En la programación y ambiente Java, JIT compiler es un programa trasforma bytecode de Java (un programa que contiene instrucciones que deben interpretarse) en instrucciones que pueden enviarse directamente al procesador. El bytecode es código plataforma-independiente que puede enviarse y correrse en cualquier plataforma. Además permite una mejor actuación de los programas

Links:
Compiler-Compilers: Es una herramienta de depuración que utilizan los escritores de compiladores (sistemas para ayudar en el proceso de escritura de compiladores), que como cualquier programador puede usar con provecho. Esta herramienta se orienta en torno a modelos particulares de lenguaje y son más adecuados para generar compiladores de lenguajes similares al de los modelos. En pocas palabras es un traductor que tiene como entrada la definición de un lenguaje y como salida el compilador para dicho lenguaje.

Links:


  1. http://www.monografias.com/trabajos11/compil/compil2.shtml
  2. http://algebra.iespana.es/compiladores.htm

Cross-Compiler: Compiladores que pueden ejecutarse en una máquina y produce código objeto para otra máquina.

Links:

  1. http://www.pc-actual.com/Pr%C3%A1ctico/Microconsultas/Inform%C3%A1tica_personal/Linux/20040730014
  2. http://compiler.area51.ipupdater.com/
Intérprete: Acepta programas escritos en un lenguaje de alto nivel, los analiza y los ejecuta bajo control del propio intérprete. En este caso, no se genera un programa equivalente en otro lenguaje, como ocurre con un compilador por lo que, si se desea repetir la ejecución del programa, es preciso volver a traducirlo.

Los programas interpretados suelen ser más lentos que los compilados, pero los intérpretes son más flexibles como entornos de programación y depuración.

¿No entendiste?...bueno ahí te va una Analogía: Comparando su actuación con la de una persona, un compilador equivale a un traductor profesional que, a partir de un texto, prepara otro independiente traducido a otra lengua, mientras que un intérprete corresponde al intérprete humano, que traduce de viva voz las palabras que oye, sin dejar constancia por escrito.
En la actualidad el entorno más común de uso de los intérpretes informáticos es Internet, debido a la posibilidad que éstos tienen de ejecutarse independientemente de la plataforma.

Ejemplos: PHP, Javascript, ASP (hasta la versión 3) y HTML son ejemplos de lenguajes interpretados.

Links:
Maquinas Virtuales: El concepto de máquinas virtuales consiste en la posibilidad de ejecutar simultáneamente varios sistemas operativos en una misma máquina, de modo que cada uno de ellos "crea" que tiene una máquina dedicada para si mismo.

Por Ejemplo: La máquina virtual "VMWare" debido a que permite aplicar este concepto sobre PC's (linux o windows). Un Poco de Historia: El concepto de virtualización lo introdujo IBM en sus sistemas operativos hace unos 20 años. También de esta misma compañía viene, a mi entender, el logro más espectacular con respecto a la virtualización del hardware. Lograron ejecutar más de 44.000 Sistemas Operativos Linux simultáneamente en la misma máquina real!!!

¿Has Escuchado el Termino...JAVA?: Cuando una persona desarrolla una aplicación en un lenguaje como C o C++, el archivo binario que genera el compilador y que contiene el código que implementa dicha aplicación, se puede ejecutar únicamente sobre la plataforma sobre la cual fue desarrollada, debido a que dicho código es especifico a esa plataforma.

La plataforma Java se encuentra por encima de otras plataformas. El código que generan sus compiladores no es específico de una maquina física en particular, sino de una máquina virtual. Aún cuando existen múltiples implantaciones de la Máquina Virtual Java, cada una específica de la plataforma sobre la cual subyace, existe una única especificación de la máquina virtual, que proporciona una vista independiente del hardware y del sistema operativo sobre el que se esté trabajando. De esta manera un programador en Java “escribe su programa una vez, y lo ejecuta donde sea”

Ventajas: La primera es que presentan un medio excelente para alcanzar la portabilidad y no cabe duda que introduce otro nivel de abstracción y de protección, entre la computadora y el software que ejecuta sobre ella. Esto cobra particular importancia en un ambiente donde el código que ejecutamos proviene de algún lugar del mundo y es escrito por alguna "buena" persona.

Desventaja: Los lenguajes basados en máquina virtual son más lentos que los lenguajes completamente compilados, debido a la sobrecarga que genera tener una capa de software intermedia entre la aplicación y el hardware de la computadora.


Links:

  1. http://labsopa.dis.ulpgc.es/so-itig/tema3/tsld027.htm
  2. http://www.enbytes.com/noticias/enbytesidf03.htm
  3. http://www.microsoft.com/spain/windowsxp/virtualpc/evaluation/overview2004.asp

miércoles, julio 20, 2005

¿Qué es un Ing. de Sistemas para Mí?

Es una leyenda Personal, un paso mas para finalizar un capitulo de la vida, con el cual me ayuda a iniciar otro. Es una clasificación eduacativa y social que inicia a la persona a desarrollarse como independiente e interactuar en un ambiente de resposanbilidad con el fin de ayudar a eliminar obstaculos que intervienen ha alcanzar nuestro proposito: "Satisfacer nuestras necesidades"