Consulta Traduccion Binaria

Consulta Traduccion Binaria

de Guzman Pieroni Amondaray -
Número de respuestas: 1

Buenas, lo unico que se me viene a la mente en este caso es la traduccion binaria. Sera correcto que es un tipo de tecnica? Cual seria la otra?


En respuesta a Guzman Pieroni Amondaray

Re: Consulta Traduccion Binaria

de Federico Rivero -
Hola Guzmán!

La segunda técnica es lo que en el libro se presenta como 'trap-and-emulate', que si bien no está con ese nombre en las diapositivas, sí está explicada en la nro 10:



La idea de la técnica es lo que dice abajo: cuando el SO invitado ejecuta una instrucción sensible, como la CPU real está en modo usuario (toda la VM ejecuta en modo usuario siempre), se genera una excepción (trap). La rutina que atiende la excepción la maneja el hipervisor y toma las acciones que dice ahí arriba.

Esto aplica fundamentalmente a los supervisores de tipo 1, donde el hipervisor ES parte del sistama operativo nativo y entonces el hipervisor tiene acceso a la rutina que atiende la excepción. En un SO normal, sin soporte de virtualización, esa rutina simplemente abortaría el programa de modo usuario que intentó ejecutar la instrucción privilegiada (como se vió al principio del curso). Ahora debería ser un poco más compleja: si el proceso que ejecutó la instrucción es uno de los procesos de la VM, entonces ahí hay que ver, si la instrucción la ejecutó el SO invitado (modo kernel virtual), entonces hay que emular la instrucción privilegiada que se ejecutó. Si la instrucción la ejecutó un proceso de usuario en la máquina virtual (virtual user mode), entonces ese proceso virtual se debe abortar.

Avisame si algo no queda claro por favor.

Saludos,
Federico