Apresentação sobre Virtualização em Sistemas Embarcados apresentado no dia 04/08/2015 na Semana de Sistemas de Informação da universidade Univás em Pouso Alegre.
5. Virtualização
Abstração que permite executar múltiplos
sistemas operacionais em apenas um único
sistema, utilizando de implementações de
software e hardware.
5
6. Conceitos Básicos: Hypervisor
Virtual Machine (VM): Instância de um OS
que é executada em um sistema virtualizado.
Também conhecido por Guest OS.
Hypervisor: Componente de software que
cria e gerencia máquinas virtuais que podem
executar os sistemas operacionais (Guest
OS).
6
8. Conceitos Básicos: Multicore
SMP – Symmetrical Multi Processing
− Permite dois ou mais processadores conectados ao
mesmo barramento de I/O ou memória compartilhada
− Cada processador pode executar processos e threads
independentemente.
− Um único OS gerencia todos recursos de memória, I/O e
interrupções
AMP – Asymmetrical Multi Processing
− CPUs dedicadas a tarefas particulares.
− Diferente instâncias de softwares sendo executadas em
processadores separados.
8
9. Tipos de Virtualização
Full Virtualization:
− Máquina virtual possui o comportamento idêntico ao hardware real
− Vantagem: O Guest OS não possui alterações
− Desvantagem: Maior Overhead, queda de performance
− Exemplos: VirtualBox, KVM, Vmware
Para-Virtualization:
− O Guest OS deve ser modificado: Hypervisor disponibiliza APIs para
acesso aos serviços
− Vantagem: Melhor performance
− Desvantagem: Alteração no Guest OS(drivers)
− Exemplos: Xen
OS Level
− O OS Level não utiliza hypervisor, os servidores são isolados entre sí
mas dependem do Host OS (compartilham o mesmo Kernel).
− Vantagem: Menor Overhead
− Desvantagem: Baixa Isolação (Segurança) e dependência do OS Host
− Exemplos: Docker
9
11. Virtualização - TI
Reduz custo de operação e aquisição de hardware
Maximização de recursos
Múltiplos Sistemas
Alta disponilidade de serviços
Independência de Hardware
Migração para novo Hardware de forma transparente
Facilidade e rapidez para disponibilizar ou restabelecer
um novo recurso ou serviço
Flexibilidade e Escalabilidade
Segurança
Gerência Centralizada
11
14. Sistemas Embarcados
14
“Um sistema embarcado é um sistema
microprocessado dedicado ao dispositivo ou
sistema que ele controla . Diferentemente de
computadores de propósito geral, como o
computador pessoal, um sistema embarcado
realiza um conjunto de tarefas predefinidas,
geralmente com requisitos específicos” -
Wikipedia
17. RTOS
Real Time Operational System
− Sistemas operacionais destinado à execução de
tarefas no qual o tempo de resposta a um
evento ou interação é pré-definido.
− Código de 10 a 30 KLOCs
− Certicados (DO-178B/C , ISO26262, IEC 61508,
IEC 62304 | FDA, EN 5012).
− Os RTOS são classificados em:
− Soft Real Time
− Hard Real Time
17
18. Virtualização - Motivação
18
Segurança
Garantia de tempo de execução (Hard Real Time)
Redução de Peso, Tamanho e Consumo
Isolamento entre aplicações
Possibilidade de reutilizar sistemas legados
Facilidade de manutenção e atualização do sistema
Reduzir o custo de certificação de software
19. 19
Hypervisor – Sistemas Embarcados
Hypervisor com “Foot-print” reduzido
Foco em segurança e confiabilidade
Restrições de tempo
Suporte a diversas arquiteturas de Hardware (ARM,
PPC, MIPS, x86)
Suporte a AMP (Asymmetric Multiprocessing)
Isolação em memória e tempo de execução
Monitor do sistema “Health Monitor”
Atender aos Padrões e Certificações (DO-178B/C ,
ISO26262, IEC 61508, IEC 62304 | FDA, EN 50128...)