Ensamblador Solaris sobre SPARC - Ladyada.usach.cl
Ensamblador Solaris sobre SPARC - Ladyada.usach.cl
Ensamblador Solaris sobre SPARC - Ladyada.usach.cl
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.