universidad carlos iii de madrid rea de arquitectura y tecnolog­a de computadores sistemas...

Download UNIVERSIDAD CARLOS III DE MADRID rea de Arquitectura y Tecnolog­a de Computadores Sistemas Operativos Avanzados Mquinas virtuales

Post on 12-Mar-2015

5 views

Category:

Documents

4 download

Embed Size (px)

TRANSCRIPT

  • Diapositiva 1
  • UNIVERSIDAD CARLOS III DE MADRID rea de Arquitectura y Tecnologa de Computadores Sistemas Operativos Avanzados Mquinas virtuales
  • Diapositiva 2
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 2 Mquina Virtual Una mquina virtual (MV) es un duplicado de una mquina real, eficiente y aislado. Gerald J. Popek and Robert P. Goldberg. Formal requirements for virtualizable third generation architectures. CACM, 17(7):413421, 1974.
  • Diapositiva 3
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 3 Caractersticas Duplicado: La MV se debera comportar de forma idntica a la mquina real, excepto por: La existencia de menos recursos disponibles (incluso diferentes entre ejecuciones). Diferencias de temporizacin al tratar con dispositivos. Aislado: Se pueden ejecutar varias MV sin interferencias. Eficiente: La MV debera ejecutarse a una velocidad cercana a la del HW real. Requiere que la mayora de las instrucciones se ejecuten directamente por el HW.
  • Diapositiva 4
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 4 Tipos de mquinas virtuales Mquinas virtuales por proceso Ejemplos: Java,.NET Framework Mquina virtual instanciada para un proceso. Cuando termina el proceso, termina la instancia de mquina virtual. Mquina virtual por sistema Virtualizacin ISA (Instruction Set Architecture). Ofrecen un entorno de ejecucin completo.
  • Diapositiva 5
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 5 Algo de historia Idea bastante utilizada hasta los 70-80 en mainframes. Cae en desuso con el paso a computadores ms pequeos. Renace en esta dcada Seguridad. Vista uniforme de Hardware. Encapsulacin. Replicacin, checkpointing y reinicio, depuracin,... Esto se parece mucho a lo que hace el SO.
  • Diapositiva 6
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 6 Monitor de Mquina Virtual (MMV) Programa que corre sobre el hardware real para implementar la mquina virtual. Control de recursos y planificacin de huespedes. Implicaciones: MMV necesita ejecutarse en modo supervisor. Software husped en modo usuario. Instrucciones privilegiadas de huespedes implican traps. MMV intrerpreta/emula instrucciones priviletiadas
  • Diapositiva 7
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 7 MMV: Aplicacin MMV Capa de software de sistema Permite que se ejecuten varias MV sobre plataforma HW nica Permite ejecutar aplicaciones sin modificar... Virtual Machine Monitor (VMM) VM n VM 0 VM 1 Platform HW I/O DevicesProcessor/CSMemory Virtual Machines (VMs) App n App 0 Guest OS 0 App 1 Guest OS 1 Guest OS n
  • Diapositiva 8
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 8 Tipos de MMV Clsico: El monitor se ejecuta directamente sobre el hardware y los huspedes sobre el monitor. Indirecto: El monitor se ejecuta sobre un sistema operativo y los huspedes sobre el monitor. VMware, Virtual PC,... Ejecucin de sistemas operativos en instancias de la mquina virtual. Menos eficiente.
  • Diapositiva 9
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 9 Requisitos Una arquitectura es virtualizable si todas las instrucciones sensibles son privilegiadas. Instruccin sensible Cambia el estado privilegiado o lo expone. Esto permite que: Las instrucciones no sensibles del huesped se ejecuten directamente. Las instrucciones sensibles del huesped sean capturadas y emuladas/simuladas por el MMV. Ejecucin eficiente.
  • Diapositiva 10
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 10 Sobrecargas VMM necesita mantener el estado privilegiado de la mquina virtual. Puede ser distinto del estado privilegiado de hardware real. VMM necesita simular instrucciones privilegiadas Sincronizacin de estados privilegiados de mquina virtual y real. Tablas de pginas ocultas para virtualizacin de Hardware.
  • Diapositiva 11
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 11 Problemas x86: Muchsimos problemas PUSH y PSW sensibles y no privilegiadas. Tablas de descriptores de segmento y de interrupciones en memoria virtual. Descriptores de segmento exponen el nivel privilegiado. Itanium: Casi virtualizable Tabla de interrupciones en memoria virtual. Instruccin THASH expone la direccin de tabla de pginas. MIPS: Casi virtualizable Registros de nucleo k0 y k1 accesibles en modo usuario. Problemas de rendimiento al virtualizar direcciones KSEG
  • Diapositiva 12
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 12 Virtualizacin impura Solucin para arquitecturas no virtualizables y para reducir los problemas de rendimiento. Enfoques: Paravirtualizacin. Traduccin binaria.
  • Diapositiva 13
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 13 Paravirtualizacin Portar el cdigo de SO huesped al ISA modificado. ISA Aumentado con llamadas explcitas al MMV. Eliminacin de instrucciones no virtualizables. Inconvenientes Esfuerzo de desarrollo. Necesario repetir para cada combinacin de huesped, ISA, MMV. Hace falta cdigo fuente.
  • Diapositiva 14
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 14 Traduccin binaria Localizar instrucciones no virtualizables en el binario ejecutable y cambiarlas por cdigo de emularcin o llamada a MMV. Puede detectar combinaciones de instrucciones sensibles y sustituir por una nica emulacin. No requiere cdigo fuente. Permite que algunas emulaciones puedan hacerse en espacio de usuario.
  • Diapositiva 15
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 15 Memoria Tablas de pginas en la sombra: Huesped accede a tabla de pgina en la sombra. MMV detecta cambios en tabla de pginas en la sombra y sincroniza tabla de pginas real. Reclamacin de memoria Carga de un pseudo-driver en el huesped. Peticin de memoria al huesped. MMV puede reusar esa memoria. Comparticin de pginas MMV detecta pginas con contenido indtico. Pgina nica con COW (Copy On Write). Mucho ahorro se se ejecutan varias instancias del mismo SO.
  • Diapositiva 16
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 16 Aislamiento Ventajas de la virtualizacin Consolidacin Migracin HW App 2 App 1 OS HW 1 HW 2 App 2 App 1 OS 1 OS 2 VMM HW App 2 App 1 OS 1 OS 2 VMM HW 1 App HW 2 VMM OS VMM HW 1 App HW 2 VMM OS VMM HW App 1 App 2 OS
  • Diapositiva 17
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 17 Usos de la virtualizacin Legacy SW Support Training/QA Activity Partitioning Manageability Server Consolidation Failover infrastructure Flexible Datacenter Manageability CLIENTES SERVIDORES
  • Diapositiva 18
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 18 Intel Virtualization Technology Conjunto de mejoras hardware a las plataformas Intel. Diseado para simplificar el software de virtualizacin. Dos tecnologas: VT-x IA-32 CPU. VT-i Itanium
  • Diapositiva 19
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 19 Platform Hardware VM 1 VM Monitor VM 0 Guest OS 0 App... Guest OS 1 App... SO y Apps no saben que el MMV existe o que comparten CPU con otras MV MMV se ejecuta protegida de las MV Desafos de MMV MMV debe aislar las MV entre si MMV debe presentar una interfaz a las MV
  • Diapositiva 20
  • rea de Arquitectura y Tecnologa de Computadores UNIVERSIDAD CARLOS III DE MADRID Doctorado en Ingeniera Informtica Sistemas Operativos Avanzados Curso 2005/2006 Pgina 20 Modos de operacin VMX root: Totalmente privilegiado. Pensado para MMV. VMX non-root: No privilegiado

Recommended

View more >