Virtualização de Máquinas Uma experiência baseada em ferramentas livres



Documentos relacionados
Virtualização de Máquinas Uma experiência baseada em ferramentas livres

Aplicações. Sistema Operacional Hardware. Os sistemas de computadores são projetados com basicamente 3 componentes: Máquinas Virtuais e Emuladores

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

Sistemas Operacionais 1/66

Sistemas Operacionais. Roteiro. Sistemas de Computadores. Os sistemas de computadores são projetados com basicamente 3 componentes: Marcos Laureano

Agenda. Histórico Máquinas virtuais X Emuladores Vantagens & Desvantagens Vmware Quemu Xen UML Comparação entre VM's Conclusão

Virtualização Gerencia de Redes Redes de Computadores II

Introdução a Virtualização. Sergio Roberto Charpinel Junior Profa. Roberta Lima Gomes

Hypervisor. Diego Souza Gomes 3 de maio de 2007

Prof. Luiz Fernando Bittencourt MO809L. Tópicos em Sistemas Distribuídos 1 semestre, 2015

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V

Professor Esp.: Douglas Diego de Paiva

Virtualização: VMWare e Xen

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

Gabriel Oliveira do Nascimento Rogério Libarino Aguilar. UFF - Universidade Federal Fluminense

ATIVIDADE 1 MÁQUINAS VIRTUAIS. 1.1 Arquiteturas não virtualizadas

4 Estrutura do Sistema Operacional Kernel

Computação na Nuvem: Virtualização e Migração de VM. André Meireles Estêvão Monteiro Monique Soares

Virtualização - VMWare e Xen

INE Sistemas Operacionais I

Virtualização na arquitetura x86

ANDRE KUSUMOTO VIRTUALIZAÇÃO

Introdução. Sistemas Operacionais. Introdução. Roteiro (1 / 2) Por que Máquinas Virtuais Existem? Roteiro (2 / 2)

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

ETEC RAPOSO TAVARES GESTÃO DE SISTEMAS OPERACIONAIS I. Máquina Virtual. Instalação de S.O. em dual boot. 1º Semestre 2010 PROF.

Estudo dos Principais Conceitos de Virtualização

Virtualização e kernel, vistos por dentro

Capítulo 8. Software de Sistema

Prof. José Maurício S. Pinheiro UniFOA

A SALA DE AULA é meu paraíso. Nela me realizo, nela exercito minha cidadania e nela me sinto útil.

Capítulo 1. Introdução

Infra-Estrutura de Software. Introdução. (cont.)

Máquinas Virtuais. Virtualização Tornar virtual. Exemplo comum de Virtualização PORTABILIDADE

40 ERAD 2009 Caxias do Sul, 17 a 20 de março de 2009

Xen Básico sobre Plano de Fundo e Virtualização

Figura 01 Kernel de um Sistema Operacional

Máquinas Virtuais E eu com isso???

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Introdução. Sistemas Operacionais

VirtualBox Mario Hato Instituto de Computação UNICAMP VirtualBox

Material 5 Administração de Recursos de HW e SW. Prof. Edson Ceroni

A Academia Brasileira de Letras diz que este verbete não existe.

Virtualização e Criação de uma rede Virtual utilizando Virtual Box Professor: João Paulo de Brito Gonçalves

Sistemas Operacionais. Conceitos de um Sistema Operacional

Sistemas Operacionais

Sistemas Operacionais: Conceitos e Mecanismos. IX - Virtualização

Xen e a Arte da Virtualização

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Introdução. O que vimos. Infraestrutura de Software. (cont.) História dos Sistemas Operacionais. O que vimos 12/03/2012. Primeira geração:

Introdução Âmbito do Documento

Visão do Sistema Operacional

Unidade III FUNDAMENTOS DE SISTEMAS. Prof. Victor Halla

Prof. Ms. José Eduardo Santarem Segundo Demonstrar o impacto que o tema virtualização tem representado no mercado

TECNOLOGIA DE INFORMAÇÃO : HARDWARE

Virtualização: Conceitos e Aplicações em Segurança

Sistemas Operacionais I Parte III Estrutura dos SOs. Prof. Gregorio Perez gregorio@uninove.br Roteiro. Componentes do Sistema

Benefícios da Virtualização as para empresas

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron

ESTUDO DE CASO WINDOWS VISTA

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação

Sistemas Operacionais II

Virtualização. O conceito de VIRTUALIZAÇÃO

Sistemas Operacionais

Senado Federal Questões 2012

Virtualização de Software

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

UNIVERSIDADE FEDERAL DE SANTA CATARINA UFSC DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA INE BACHARELADO EM CIÊNCIAS DA COMPUTAÇÃO.

Virtualização. Prof. Emiliano Monteiro

LINUX. Lapro I Profa. Fernanda Denardin Walker. - Aula 2 - Material adaptado de: Isabel Mansour, Marcia Moraes e Silvia Moraes SISTEMA OPERACIONAL

MÁQUINAS VIRTUAIS VIRTUALIZAÇÃO AULA 04 Sistemas Operacionais Gil Eduardo de Andrade

Programação Concorrente Processos e Threads

Prof. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS 2007

Virtualização de Sistemas Operacionais

Prof. Victor Halla. Unidade IV FUNDAMENTOS DE SISTEMAS

Agenda do Mini-Curso. Sérgio Yoshio Fujii. Ethan Boardman.

Marcos Vinicios Marques Professor Cidão. Professor Marcelo Neves

Consolidação de Servidores com VMware


Virtualização. P r e s e n t e e f u t u r o Andréa Garcia Trindade 2º. sem/2010. Virtualização Presente e Futuro

Introdução a Computação

Análise Comparativa entre Sistemas Operacionais Virtualizados

Virtualização. Presente e futuro

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas

Programação Palm OS. Roteiro da Apresentação. Motivação

ARQUITETURA DE COMPUTADORES E SISTEMAS OPERACIONAIS P/ CONCURSOS PÚBLICOS FOCO: ESAF/CESGRANRIO/FCC. Prof. Almeida Jr

Virtualização de Sistemas Operacionais

ESCOLA SUPERIOR ABERTA DO BRASIL ESAB CURSO DE REDES DE COMPUTADORES MÁRCIO DA SILVA KLAUCK

Programação de Computadores - I. Profª Beatriz Profº Israel

Sistemas Operacionais

Laudon & Laudon Essentials of MIS, 5th Edition. Pg. 6.1

Introdução à Ciência da Computação

Softwares de Sistemas e de Aplicação

Sistema Operacional Correção - Exercício de Revisão

Sistemas Operacionais IX-MáquinasVirtuais

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal

Transcrição:

Virtualização de Máquinas Uma experiência baseada em ferramentas livres Carlos A. M. dos Santos echo unixmania at gmail dot com sed 's/ at /@/;s/ dot /./g' 1º Seminário de Software Livre Tchelinux Porto Alegre, 19 de novembro de 2006

Sobre o Palestrante Engenheiro agrícola* (UFPel, 1988) Pesquisador bolsista (EMBRAPA, 1989-1993) Programador e gerente de redes (CPMet/UFPel, provedores de serviços Internet, 1993-1999) Mestre em Ciência da Computação, na área de Computação Gráfica (UFRGS, 1998-2000) Professor de CG, programação e redes (URI, Santo Ângelo, 2001-2005) Atualmente: HP Computadores (IPL) * Acredite se quiser!

Temas Abordados Teoria (não dói!) Instruction Set Architecture Definição formal de virtualização Tipos de virtualização Vantagens e desvantagens Exemplos práticos QEMU: simulação de uma rede com diversos SOs rodando simultaneamente Outros (Se houver tempo) POSE: Palm OS Emulator X Window System: ambiente distribuído

Instruction Set Architecture* Delimita a divisão entre hardware e software Hardware: dispositivo caracterizado por um conjunto finito de estados válidos (registradores, memória) um conjunto finito de instruções executáveis válidas Software: um conjunto cujos elementos são instruções válidas A execução das instruções provoca transições de estados * Doravante abreviada para ISA

e(s i ) S i S j Exemplo: a execução da intrução e muda o estado do hardware de S i para S j Referência: Smith, James E. & Nair, Ravi. Virtual Machines. San Francisco: Morgan Kaufmann, 2005.

Virtualização É a construção de um isomorfismo entre um sistema hóspede e um sistema hospedeiro* e(s i ) S i S j V(S i ) hóspede e'(s' i ) V(S j ) S' i hóspede S' j * Popek & Goldberg, 1974

Tipos de Virtualização Em nível de processo O hóspede é um único processo de usuário A máquina virtual provê uma ABI* para o processo Em nível de sistema Muitos processos de usuário podem coexistir A máquina virtual provê um ambiente completo * Application Binary Interface

Virtualização em nível de processo Hóspede Processo Aplicativo Processo Aplicativo Runtime Hospedeiro Software de Virtualização Sistema Operacional Hardware Máquina Virtual

Virtualização em nível de sistema Hóspede Processo Aplicativo Sistema Operacional Processo Aplicativo Sistema Operacional VMM Software de Virtualização Máquina Virtual Hospedeiro Hardware

Virtualização em Nível de Processo Multiprogramação: SO roda processos concorrentes Emulador/tradutor binário dinâmico: simula uma ISA (FX!32, Wine, PACE, QuickTransit/Rosetta) Otimizador binário dinâmico: modifica código para melhor desempenho (HP Dynamo) VM de linguagem de alto nível (p-machine, Java) Exceções/mistos FX32: recompilador dinâmico para a mesma ISA Jalapeño: VM Java que faz otimização binária FreeBSD Linux mode: vetor de serviços de sistema FreeBSD Jails: contexto isolado restrito (Verio VPS)

Exemplos de virtualização em nível de processo Aplicação Windows (IA32) Windows NT (Alpha) ISA Alpha (RISC, 64 Bits) Aplicação Windows (IA32) Runtime Unix FX!32 ISA IA32 Runtime Wine: Windows Emulator Aplicação M68k (Palm OS 4) PACE (runtime) Bibliotecas Palm OS 5 ISA ARM32 Aplicação ARM32 (Palm OS 5) DAL: Device Abstraction Layer HAL: Hardware Abstraction Layer Palm OS Application Compatibility Environment Palm OS 5

Virtualização em Nível de Sistema VM clássica: hypervisor (VMM) gerencia o hardware e suporta múltiplos SOs (VM/370, VM/CMS, z/vm) VM hóspede: roda em um SO (VMware, Virtual PC for Windows, QEMU Accelerator) Sistema completo: emula um computador (QEMU, Virtual PC for Mac, POSE, dúzias!) Codesign: semelhante a microcódigo, processador expõe uma ISA virtual (Crusoe, IBM AS/400) Exceções/mistos Virtualização auxilida por hardware (VT-x, AMD-V) Xen: Paravirtualization (SO hóspede modificado)

Exemplos de virtualização em nível de sistema Aplicação Linux (SPARC32) SPARC Linux QEMU (runtime) FreeBSD ISA IA32 Aplicação Windows (IA32) Windows XP (IA32) QEMU (runtime) VM 1 VM 1 Aplicação Linux z/linux z/architecture Aplicação z/os z/os Hypervisor (runtime) FreeBSD ISA IA32 QEMU Kqemu z/vm

Vantages e Desvantagens Vantagens Desvantagens Redução de custos Desempenho limitado Segurança Emulação incompleta Flexibilidade Necessidade de alterar o hóspede (às vezes) Vantages e desvantagens sempre são relativas!

Exemplos Práticos QEMU: simulação de uma rede com diversos SOs rodando simultaneamente Outros (se houver tempo) POSE: Palm OS Emulator X Window System: ambiente distribuído

Dúvidas?

Obrigado por sua atenção! Contato echo unixmania at gmail dot com sed 's/ at /@/;s/ dot /./g'