JPC: Un Emulador de Computadoras x86 en Java Puro

Páginas: 19 (4643 palabras) Publicado: 10 de diciembre de 2013
JPC: Un Emulador de Computadoras x86 en Java Puro

1. Introducción
Como las computadoras ejecutan casi cualquier programa sin problemas, pareciera incorrecto ralentizarlas agregando una capa de virtualización, y si se necesita más potencia, se pueden comprar más máquinas.
Mientras que una máquina virtual depende en arte del hardware, un emulador está construido completamente en software, yestá limitado a los problemas que tendría un programa cualquiera.
Las técnicas de emulación se centran en compensar la falta significativa de velocidad, porque ya brindan gran robustez, seguridad y flexibilidad.
Muchos usuarios están dispuestos a aceptar la penalización de velocidad porque se les asegura completamente la seguridad.
Por esto se creó un emulador en la máquina virtual más segura yutilizada, Java VM, ya que se encarga de evitar errores fundamentales por sí misma.

JPC
Es un emulador escrito completamente en Java, y emula todos los componentes de hardware estándar de una computadora x86 permaneciendo siempre dentro de los límites de una aplicación Java.
Para atacar a JPC, hay que pasar por tres niveles independientes de seguridad: encontrar código con errores en JPC,encontrar errores en JVM, y pasar las limitaciones del usuario utilizando JPC.

2. Prueba de Concepto
La arquitectura x86 siempre ha mantenido una compatibilidad con versiones anteriores, y, aunque esto ha creado nuevos retos para no malograr el código ya existente, también ha permitido hacerla la más exitosa.
Existe dificultad al emular componentes como los discos duros, los controladores delteclado y ratón, la tarjeta gráfica, etc., ya que cada dispositivo debe traducirse a software por separado.
La emulación del procesador es el punto más importante, después de conseguirlo no serán necesarias emulaciones muy complejas de las demás características.
El mayor reto es la velocidad de emulación, y se puede mejorar utilizando conversiones a binario dinámicas antes de que el procesador lashaga, acelerando los procesos dramáticamente.

Pruebas Potenciales de Desempeño del Procesador:
Para mejorar la arquitectura construida, se necesitan hacer diversas pruebas, como correr programas secuenciales y tener una base de velocidad, luego tratar de mejorarla con estrategias manuales que ayuden al traductor a código intermedio a conseguir mayor velocidad, igualando incluso al códigonativo.
Con esto se vence al escepticismo inicial hacia el concepto de un emulador completamente escrito en Java, demostrando que la arquitectura a construir es viable.

3. La Arquitectura de la Computadora
Las computadoras modernas son bastante complicadas, ya que su hardware ha sido optimizado muchas veces para lograr producir una plataforma de computación efectiva y generalizada, pero siemprepermitiendo la compatibilidad con versiones anteriores.

Diagrama básico de una computadora moderna:


El diseño de JPC fue crear un análisis simple de los sistemas y un mapeo del sistema original en una correspondencia de 1 a 1.
Se utiliza una clase bien identificada para cada tarea, por ejemplo la clase SerialPort para los puertos seriales.
Se sigue esta idea para los casos donde lamodularidad compite con el desempeño: En la concentración de computación (procesador) y en la concentración del ancho de banda (memoria).
El procesador tiene una gran cantidad de código que se representa por 8 paquetes distintos y alrededor de 50 clases.
Si se trabaja en una emulación de hardware fuera de la memoria de los sistemas de procesadores, el objetivo es conseguir claridad y diseño modulardel código definitivas; si la emulación está dentro de la memoria, se busca el rendimiento definitivo.
Para ganar el mayor desempeño posible, hay que experimentar constantemente; y cada modificación al código, por pequeña que sea, debe verse con sospecha hasta que se gane completa seguridad de que no tiene efectos negativos en el rendimiento.
El requerimiento de máximo rendimiento en los cuellos...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Emuladores
  • Emulador
  • emular
  • jpc vmt
  • instalacion de emulador
  • Caso jpc
  • Ejerciocio o programa java sobre inventario a empresa que vende computadores
  • EMULANDO UNA TRAYECTORIA

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS