quarta-feira, 11 de junho de 2008

E Máquina Virtual?

Máquina Virtual, como foi dito na nossa última apresentação, é um tipo de tradutor auxiliar que fica entre o Compilador e o Interpretador.
No caso, o programador escreve o códiogo fonte, numa linguagem de alto nível, e executa um programa (compilador) que irá traduzir o texto para um código binário, de baixo nível. A diferença, nesse caso, está no fato de que esse código binário gerado ainda não é um código que pode ser entendido pela máquina, ele é um código intermediário, e para que o computador possa executá-lo é necessário uma
Máquina Virtual. É a Máquina Virtual que vai traduzir esse código intermediário para um código que o computador consegue entender.
Pra quem está começando agora na área de programação,a utilização de Máquinas Virtuais pode parecer estranho, mas essa técnica trouxe grandes avanços e é cada vez mais comum a sua utilização. A principal vantagem é que com a utilização da Máquina Virtual fica muito fácil executar um mesmo aplicativo em sistemas diferentes. Um código binário criado pelo método tradicional da compilação só pode ser executado no Sistema Operacional onde foi criado. Já um código gerado por uma Máquina Virtual pode ser executado em diversos Sistemas Operacionais diferentes. Java é um bom exemplo: mesmo que um programa em Java seja criado no Windows, ele pode ser rodado também no Linux, Solaris, MacOSX, FreeBSD, sem fazer nenhuma alteração no seu programa. Por outro lado, como já dá pra imaginar, esta outra camada de tradução da Máquina Virtual acaba tornando a execução do programa mais lenta, se comparada com o método tradicional de compilação.

Nenhum comentário: