30.01.2015 Views

Ensamblador Solaris sobre SPARC - Ladyada.usach.cl

Ensamblador Solaris sobre SPARC - Ladyada.usach.cl

Ensamblador Solaris sobre SPARC - Ladyada.usach.cl

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4<br />

B. Categorías de Instrucciones<br />

La arquitectura <strong>SPARC</strong> tiene cerca de 50 instrucciones<br />

enteras, unas pocas más que el anterior diseño RISC, pero<br />

menos de la mitad del número de instrucciones enteras del<br />

6800 de Motorola.<br />

Las instrucciones de <strong>SPARC</strong> se pueden <strong>cl</strong>asificar en cinco<br />

categorías:<br />

· LOAD y STORE (La única manera de acceder a la<br />

memoria). Estas instrucciones usan dos registros o un registro<br />

y una constante para calcular la dirección de memoria a<br />

direccionar.<br />

· Instrucciones Aritméticas/Lógicas/Shift. Ejecutan<br />

operaciones aritméticas, lógicas y de desplazamiento de bits.<br />

Estas instrucciones calculan el resultado si es una función de 2<br />

operándos y guardan el resultado en un registro.<br />

· Operaciones del Coprocesador. La IU extrae las<br />

operaciones de punto flotante desde las instrucciones del bus<br />

de datos y los coloca en la cola para la FPU. La FPU ejecuta<br />

los cálculos de punto flotante con un número fijo en unidad<br />

aritmética de punto flotante, (el número es dependiente de la<br />

aplicación). Las operaciones de punto flotante son ejecutadas<br />

concurrentemente con las instrucciones de la IU y con otras<br />

operaciones de punto flotante cuando es necesario. La<br />

arquitectura <strong>SPARC</strong> también especifica una interfaz para la<br />

conexión de un coprocesador adicional.<br />

· Instrucciones de Control de Transferencia. Estas in<strong>cl</strong>uyen<br />

jumps, calls, traps y branches. El control de transferencia es<br />

retardado usualmente hasta después de la ejecución de la<br />

próxima instrucción, así el pipeline no es vaciado porque<br />

ocurre un control de tiempo. De este modo, los compiladores<br />

pueden ser optimizados por ramas retardadas.<br />

· Instrucciones de control de registros Read/Write. Estas<br />

instrucciones se in<strong>cl</strong>uyen para leer y grabar el contenido de<br />

varios registros de control. Generalmente la fuente o destino<br />

está implícito en la instrucción.<br />

VII. <strong>SPARC</strong> VS X86<br />

Como comparativa entre estos 2 tipos de familias de<br />

procesadores podemos tener varias cosas en cuenta, apartando<br />

de lado su diferente arquitectura.<br />

Primeramente la similitud en ensamblar en ambos<br />

procesadores, a primera vista podemos ver que su forma de<br />

ensamblar y su línea de código es sumamente parecida a el<br />

tipo de código que corre <strong>sobre</strong> un x86, tan solo difiere en<br />

casos puntuales, pero en forma medular es prácticamente igual<br />

su código que un x86.<br />

Como Pro que tiene <strong>SPARC</strong> es su alta escalabilidad y su<br />

aprovechamiento de segmentación de datos que se reparten<br />

entre los sub-procesadores que se encuentran dentro de el<br />

(actualmente un ULTRA-<strong>SPARC</strong> contiene 4 procesadores con<br />

2 threads cada uno, eso da un total de 8 nú<strong>cl</strong>eos, 4 Físicos y 4<br />

virtuales). Optimizando la carga de trabajo, no por nada son<br />

los procesadores preferidos por empresas que necesita gastar<br />

poco dinero y tener potencia suficiente para mover gran<br />

cantidad de datos.<br />

Y su diferenciación mas notoria es el no pago de licencia<br />

<strong>sobre</strong> su arquitectura, ya que su ingeniería es totalmente<br />

abierta, esto quiere decir que cada empresa de<br />

semiconductores puede hacer su propia versión basándose en<br />

<strong>SPARC</strong>, dando una gran probabilidad de ir mejorando errores<br />

y mejorar cada vez más su capacidad, son los opensource de<br />

los procesadores.<br />

VIII. ENSAMBLADOR SOLARIS SOBRE <strong>SPARC</strong><br />

C. Roadmap <strong>SPARC</strong><br />

8.1 Logo NetBeans<br />

1.3 avance y futuras arquitecturas basadas en <strong>SPARC</strong><br />

NetBeans se refiere a una plataforma para el desarrollo de<br />

aplicaciones de escritorio usando Java y a un entorno de<br />

desarrollo integrado (IDE) desarrollado usando la Plataforma<br />

NetBeans.<br />

La plataforma NetBeans permite que las aplicaciones sean<br />

desarrolladas a partir de un conjunto de componentes de<br />

software llamados módulos. Un módulo es un archivo Java que<br />

contiene <strong>cl</strong>ases de java escritas para interactuar con las APIs<br />

de NetBeans y un archivo especial (manifest file) que lo<br />

identifica como módulo. Las aplicaciones construidas a partir<br />

de módulos pueden ser extendidas agregándole nuevos<br />

módulos. Debido a que los módulos pueden ser desarrollados<br />

independientemente, las aplicaciones basadas en la plataforma<br />

NetBeans pueden ser extendidas fácilmente por otros<br />

desarrolladores de software.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!