1. Um hipervisor Tipo 1 executa cada aplicativo em uma VM com seu sistema operacional convidado, sem exigir um sistema operacional host.

Qual é a diferença entre um hipervisor incorporado e um microkernel de separação com virtualização?

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br


Os hipervisores são amplamente utilizados em servidores corporativos, e o número de ofertas no espaço incorporado continua aumentando. Os hipervisores são usados ​​para virtualização e fornecem algum nível de isolamento, mas não são a única opção. Os microkernels originaram o mundo incorporado, e um microkernel de separação foi especialmente projetado para isolamento e segurança. A mesma tecnologia de máquina virtual usada em hipervisores pode ser adicionada a um microkernel para fornecer uma solução de virtualização quando necessário.

Ambas as soluções oferecem a capacidade de executar vários sistemas operacionais (SOs) em um ambiente virtualizado, incluindo a mistura de tipos de SO. Com o tempo, as duas tecnologias se aproximaram, mas ainda existem algumas diferenças significativas em termos de latência, determinismo e segurança.

Um hypervisor, também conhecido como monitor de máquina virtual, é um software projetado para criar e executar máquinas virtuais (VMs), cada uma das quais abstrai a plataforma de hardware e executa um sistema operacional convidado. O hipervisor é responsável por isolar cada VM para que as ações de uma VM não comprometam outra (Figura 1). De acordo com as origens dos servidores corporativos, os hipervisores e as VMs são construções pesadas que normalmente consomem uma grande quantidade de recursos em termos de base de código, espaço de memória e latência de execução.

1. Um hipervisor Tipo 1 executa cada aplicativo em uma VM com seu sistema operacional convidado, sem exigir um sistema operacional host. 1. Um hipervisor Tipo 1 executa cada aplicativo em uma VM com seu sistema operacional convidado, sem exigir um sistema operacional host.

Os hipervisores podem ser categorizados como Tipo 1 ou Tipo 2. Os hipervisores do Tipo 1 são executados nativamente no hardware do host (ou seja, “bare metal”), enquanto os hipervisores do Tipo 2 são executados no topo de um SO host. Os hipervisores do tipo 1 geralmente oferecem desempenho superior ao eliminar uma camada de software. Isso pressupõe, no entanto, que todos ou a maioria dos aplicativos exijam virtualização. Se apenas uma pequena porcentagem de aplicativos exigir virtualização, o desempenho geral do sistema poderá ser maior com um hipervisor Tipo 2.

Por exemplo, se a maioria dos aplicativos é executada em um sistema operacional de tempo real (RTOS) e apenas um ou dois aplicativos precisam ser executados no Linux ou Microsoft Windows, os aplicativos em tempo real podem ser executados no sistema operacional host e não são sobrecarregados por passando por um hypervisor. Somente os aplicativos que exigem virtualização precisam pagar a penalidade de desempenho da virtualização.

Um microkernel é um sistema operacional em que os únicos serviços essenciais são implementados no modo kernel e todos os outros serviços são implementados principalmente no espaço do usuário, incluindo drivers de dispositivo, sistemas de arquivos, pilhas de rede e virtualização. Isso resulta em maior modularidade, flexibilidade e robustez, além de uma menor base de computação confiável (TCB).

Leia Também  As 5 melhores revisões e guia de compra de fogueiras a gás

Um tipo específico de microkernel é um kernel de separação, que aloca todos os recursos exportados sob seu controle em partições, e essas partições são isoladas, exceto pelos fluxos de informações explicitamente permitidos. Os kernels de separação projetados para a mais alta segurança atendem ao SKPP (Separation Kernel Protection Profile) definido pela Agência de Segurança Nacional dos EUA (NSA), que foi criada para os ambientes de ameaças mais hostis.

Um microkernel de separação que inclui uma camada de virtualização tem algumas semelhanças com um hipervisor Tipo 2, na medida em que a camada de virtualização é executada no topo de um SO host e pode ser aplicada seletivamente apenas aos aplicativos que requerem virtualização. No entanto, difere no fato de a função de isolamento ser fornecida pelo microkernel de separação (nesse caso, o sistema operacional host), e o isolamento é imposto mesmo entre instâncias diferentes da camada de virtualização (Figura 2).

2. Um microkernel de separação executa cada aplicativo em uma partição separada e somente aqueles que precisam de um sistema operacional diferente são executados dentro de uma VM com um sistema operacional convidado no topo de uma camada de virtualização.2. Um microkernel de separação executa cada aplicativo em uma partição separada e somente aqueles que precisam de um sistema operacional diferente são executados dentro de uma VM com um sistema operacional convidado no topo de uma camada de virtualização.

Recursos de virtualização

Os hipervisores e os microkernels com uma camada de virtualização usam a aceleração de hardware para virtualização completa. Nos processadores Intel, por exemplo, isso inclui Intel VT-x, EPT e Intel VT-d. O Intel VT-x fornece instruções de hardware para entrar e sair de um modo de execução virtual em que o sistema operacional convidado se vê executando com privilégios totais, enquanto o sistema operacional host permanece protegido. As tabelas de páginas estendidas (EPT) fornecem virtualização das tabelas de páginas que mantêm os mapeamentos da memória física para a memória virtual. O Intel VT-d fornece uma assistência de hardware para remapear transferências de acesso direto à memória (DMA) e interrupções geradas por dispositivos. Mesmo com essas tecnologias de aceleração de hardware e similares para outros processadores, uma boa quantidade de virtualização ainda é feita em software.

Devido ao seu patrimônio empresarial, os hipervisores às vezes fornecem um limite mais alto ao número de VMs por host e um suporte mais amplo aos recursos de gerenciamento de virtualização. Esses recursos avançados de gerenciamento podem incluir alocação dinâmica de recursos, failover e migração ao vivo. Esses recursos podem variar bastante de acordo com a implementação.

Latência e Determinismo

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br

Antes dos microprocessadores comuns oferecerem suporte à aceleração de hardware de algumas funcionalidades de virtualização, as soluções completas de virtualização apresentavam desempenho notavelmente baixo. Embora os microprocessadores modernos ofereçam uma variedade de suporte à virtualização, uma boa quantidade de virtualização de E / S ainda precisa ser tratada em software, como emulação de dispositivo, emulação de barramento e emulação e roteamento de interrupção.

Leia Também  7 Melhores Capacetes de Soldagem 2020 Avaliações

Em geral, a virtualização tem menor latência e maior desempenho com um hipervisor Tipo 1, porque não precisa também passar por um SO host. Com um hipervisor Tipo 1, no entanto, todo aplicativo deve pagar essa penalidade de virtualização. Isso inclui aplicativos críticos em tempo real e de segurança.

Por outro lado, um microkernel com uma camada de virtualização pode ter aplicativos em tempo real sendo executados diretamente no sistema operacional host, enquanto os aplicativos não em tempo real são executados sobre uma camada de virtualização. A penalidade no desempenho da virtualização é maior para essa abordagem, mas é paga apenas pelos aplicativos não em tempo real. Dessa maneira, todos os aplicativos críticos em tempo real e de segurança obtêm a baixa latência e determinismo inerentes ao RTOS do host.

Alguns hipervisores tentam reduzir ainda mais a latência, dando a um aplicativo a capacidade de executar sem um SO convidado no modo “bare-metal”, mas isso é um nome impróprio. Mesmo se o aplicativo não for executado em um sistema operacional convidado, ele ainda estará em execução no hipervisor. Se o objetivo é executar um aplicativo em tempo real, crítico para a segurança ou crítico para a segurança com menor latência, executar sem um SO não é o caminho para chegar lá. Quase todos esses tipos de aplicativos de destino exigem serviços de tarefas, semáforos ou passagem de mensagens – nenhum dos quais está disponível no modo bare-metal.

Segurança

A segurança pode ser a área da diferença mais significativa entre um hipervisor e um microkernel de separação com uma camada de virtualização. Embora a segurança possa ser o principal motivo para considerar um hipervisor, é um mito que os hipervisores são inerentemente seguros. Isso ocorre porque eles utilizam recursos de hardware para impor espaços de endereços virtuais e E / S virtuais para isolar VMs.

Seria mais preciso dizer que a principal proteção de segurança fornecida pela maioria dos hipervisores é simplesmente o que o hardware subjacente suporta por meio da MMU e da IOMMU. Primeiro, essa segurança de hardware cobre apenas parte do necessário para isolar VMs e, segundo, essa segurança de hardware ajuda a isolar VMs e não faz nada para tornar o hipervisor mais seguro. Como os hipervisores são executados abaixo do sistema operacional convidado, um hipervisor comprometido não é detectável pela VM. Essas façanhas ainda têm um nome cativante: hyperjacking.

A probabilidade de vulnerabilidades geralmente é proporcional ao tamanho da superfície de ataque. Os hypervisores têm o software de virtualização em execução no modo kernel, tornando-o parte da base de computação confiável (TCB), e esse código de virtualização pode ser enorme. Quase todas as chamadas do sistema operacional convidado para o kernel precisam ser interceptadas, examinadas e determinadas se o sistema operacional convidado tem acesso permitido.

Leia Também  Blocos de mudança de forma de rolamentos de carga controlados pela placa Arduino

Para que uma solução de virtualização seja eficiente, ela precisa virtualizar seqüências de instruções em vez de instruções únicas. Esse recurso antecipado é apenas um exemplo de aumento da já grande base de códigos de um hipervisor, buscando minimizar a penalidade no desempenho da virtualização.

Por definição, um microkernel é construído com o mínimo possível de execução no modo kernel, para que a camada de virtualização não faça parte do TCB. Isso não significa que as VMs estejam desprotegidas. Em vez disso, o microkernel de separação fornece o isolamento para todas as partições, virtualizadas ou não. Mesmo que ocorra uma vulnerabilidade na camada de virtualização, essa vulnerabilidade não pode se espalhar para outra instância da camada de virtualização para outra VM. Dessa forma, um microkernel de separação evita o hiperjacking.

Os microkernels que usam a tecnologia de kernel de separação podem ter os mais altos níveis de segurança e isolamento. A prova desse nível de segurança é a certificação do SKPP publicada pela NSA ou padrões de segurança semelhantes, como o Common Criteria EAL6. Alguns hipervisores incluem alguns princípios do kernel de separação para melhorar a segurança, mas nenhum hipervisor comercial foi certificado no SKPP ou no Common Criteria EAL6.

Um exemplo de um microkernel de separação com uma camada de virtualização opcional é o tuMP INTEGRITY-178 RTOS da Green Hills Software. O INTEGRITY-178 é um sistema operacional crítico e protegido que foi certificado pela NIAP (National Information Assurance Partnership) para atender ao SKPP, alta robustez e critérios comuns EAL6 +. O INTEGRITY-178 tuMP RTOS estende essa linhagem para processadores multicore.

Sua camada de virtualização opcional é executada em partições isoladas pelo kernel de separação e permite que um ou mais sistemas operacionais convidados sejam executados simultaneamente, juntamente com funções críticas de proteção e segurança no mesmo microprocessador. O resultado é um sistema que otimiza a segurança, a segurança e o desempenho em tempo real, enquanto habilita aplicativos que exigem suporte de SO de uso geral ou legado adicional.

Richard Jaenicke é o diretor de marketing de produtos essenciais para a segurança da Green Hills Software.

Referências

John Rushby, “O Projeto e Verificação de Sistemas Seguros”, Oitavo Simpósio da ACM sobre Princípios do Sistema Operacional, pp. 12-21, Asilomar, CA, dezembro de 1981.

Direcção de Garantia de Informação, Agência de Segurança Nacional “Perfil de proteção do governo dos EUA para núcleos de separação em ambientes que exigem alta robustez “, versão 1.03, junho de 2007.

Sites que podem interessar:

https://holidayservice-tn.com/faca-o-bem-e-fale-sobre-isso-o-porque-onde-e-como-da-filantropia/

https://draincleaningdenverco.com/como-se-tornar-uma-referencia-no-mercado-de-fotografo-de-casamento/

https://clipstudio.com.br/obsessao-vs-equilibrio-o-que-voce-deve-perseguir/

https://proverasfestas.com.br/brigadeiro-gourmet/

https://coniferinc.com/definicao-de-mix-de-marketing-produto-preco-local-e-promocao/

https://weeventos.com.br/expor-externo-ips-lan-sob-osx-com-pptp-vpn/

https://testmygeekstuff.com/5-dias-40-especialistas-e-1-segredo-que-finalmente-posso-compartilhar-aqui-esta-o-congresso-on-line-de-lancamento-de-infoproducts-2017/

https://responsibleradio.com/melhores-planos-de-pensoes-e-planos-para-uma-vida-de-aposentadoria-melhor/