Kategoriak: All - paralelismo - memoria - arquitecturas - traducción

arabera jony lozano 7 years ago

2191

Aplicaciones de la tecnología de compiladores

En el ámbito de la informática y la ingeniería, los microprocesadores modernos aprovechan el paralelismo a nivel de instrucción, aunque este paralelismo puede no ser evidente para los programadores.

Aplicaciones de la tecnología de compiladores

Herramientas de produc tiv idad de software

Comprobación de límite s

Es más fácil cometer errores cuando se programa en un lenguaje de bajo nivel que en uno de alto nivel. Por ejemplo, muchas brechas d e seguridad en los sistemas se producen debido a los desbordamientos en las entradas y salidas de de los programas escritos en C.

Herramientas de administración de memoria

La recolección de basura es otro excelente ejemplo de la concesión entre la eficiencia y una com binación de la facilidad de uso y la confiabilidad del software.

La simulación es una técnica general que se utiliza en muchas disciplinas científicas y de ingeniería para comprender un fenómeno, o para validar un diseño.

Simulación compilada

Además de especificar el software y el hardware, los lenguajes son útiles en muchas otras aplicaciones. Por ejemplo, los lenguajes de consulta, en especial SQL (Structured Query Lenguage, Lenguaje d e consulta estructurado), se utilizan para realizar búsquedas en bases de datos.

In térpretes de consultas de bases de datos

No sólo la mayoría del software está escrito en lenguajes de alto nivel; incluso hasta la mayoría de los diseños d e hardware se describen en lenguajes de descripción de hardware de alto nivel, como Verilog y VHDL (Very H igh-Speed Integrated Circuit Hardware Description Lenguaje,Lenguaje de descripción de hardware de circuitos integrados de muy alta velocidad).

Síntesis de hardware

La tecnología de com piladores puede utilizarse para traducir el código binario para una máquina al código binario para otra m áquina d istinta, con lo cual se perm ite a una m áquina ejecutar los program as que originalm ente eran com pilados para otro conjunto de instrucciones.

Un lenguaje d e programación de alto nivel define una abstracción de programación: el programador expresa un algoritmo usando el lenguaje, y e l compilador debe traducir el programa enel lenguaje de destino.

Implementación de lenguajes de programa ción de alto nivel

Traducciones de programas

Uno de los mejores ejemplos conocidos sobre cómo los compiladores influenciaron el diseño de la arquitectura d e computadoras fue la invención de la arquitectura RISC (Reduced Instruction-Set Computer, Computadora conconjunto reducido d e instrucciones).

Arquitecturas especializadas

En las últimas tres décadas se han propuesto muchos conceptos sobre la arquitectura, entre los cuales se incluyen las máquinas de flujo de datos, las máquinas VLIW (Very Long Instruction Word, Palabra de instrucción muy larga), los arreglos SIM D (Single Instruction, Múltiple Data, Un a sola instrucción, varios datos) de procesadores, los arreglos sistólicos, los multiprocesadores con memoria compartida y los multiprocesadores con memoria distribuida.

RISC

Jerarquías de memoria

Una jerarquía de memoria consiste en varios niveles de almacenamiento con distintas velocidades y tamaños, en donde el nivel más cercano al procesador es el más rápido, pero también el más pequeño.

Paralelismo

T odos los m icroprocesadores m odernos explotan el paralelism o a nivel de instrucción. Sin embargo, este paralelism o puede ocultarse al programador.

Traducción binaria

Aplicaciones de la tecnología de compiladores

Diseño de nuevas arquitecturas de computadoras

Optimizacion espara las arquitecturas de computadoras

La rápida evolución de las arquitecturas de computadoras también nos ha llevado a una insaciable demanda de nueva tecnología de compiladores.