Versão do hipervisor Bareflank 2.0

aconteceu lançamento do hipervisor Flanco nu 2.0, que fornece ferramentas para o rápido desenvolvimento de hipervisores especializados. Bareflank é escrito em C++ e oferece suporte a C++ STL. A arquitetura modular do Bareflank permitirá que você expanda facilmente os recursos existentes do hipervisor e crie suas próprias versões de hipervisores, ambos rodando em hardware (como Xen) e em um ambiente de software existente (como VirtualBox). É possível executar o sistema operacional do ambiente host em uma máquina virtual separada. Código do projeto distribuído por licenciado sob LGPL 2.1.

Bareflank oferece suporte a Linux, Windows e UEFI em CPUs Intel de 64 bits. A tecnologia Intel VT-x é usada para compartilhamento de hardware de recursos de máquinas virtuais. O suporte para sistemas macOS e BSD está planejado para o futuro, bem como a capacidade de funcionar em plataformas ARM64 e AMD. Além disso, o projeto está desenvolvendo seu próprio driver para carregar VMM (Virtual Machine Manager), um carregador ELF para carregar módulos VVM e uma aplicação bfm para controlar o hipervisor a partir do espaço do usuário. Ele fornece ferramentas para escrever extensões usando elementos definidos nas especificações C++11/14, uma biblioteca para desenrolar a pilha de exceções (desenrolar), bem como sua própria biblioteca de tempo de execução para suportar o uso de construtores/destruidores e registrar manipuladores de exceções.

Um sistema de virtualização está sendo desenvolvido baseado em Bareflank Quadradão, que oferece suporte à execução de sistemas convidados e permite o uso de máquinas virtuais leves com Linux e Unikernel para executar serviços ou aplicativos especializados. Na forma de serviços isolados, você pode executar serviços web regulares e aplicativos que possuem requisitos especiais de confiabilidade e segurança, livres da influência do ambiente host (o ambiente host é isolado em uma máquina virtual separada).

As principais inovações do Bareflank 2.0:

  • Adicionado suporte para lançamento do Bareflank diretamente da UEFI para posterior execução do sistema operacional em uma máquina virtual;
  • Um novo gerenciador de memória foi implementado, projetado de forma semelhante aos gerenciadores de memória SLAB/Buddy no Linux. O novo gerenciador de memória demonstra fragmentação reduzida, permite maior desempenho e suporta alocação dinâmica de memória para o hipervisor por meio de bfdriver, que permite reduzir o tamanho inicial do hipervisor e dimensioná-lo de maneira ideal dependendo do número de núcleos da CPU;
  • Um novo sistema de compilação baseado em CMake, independente do interpretador de comandos, permite uma aceleração significativa da compilação do hipervisor e simplifica o suporte futuro para arquiteturas adicionais, como ARM;
  • O código foi reorganizado e a estrutura dos textos fonte foi simplificada. Suporte aprimorado para projetos relacionados, como hyperkernel, sem necessidade de duplicação de código. Código separado mais explicitamente hipervisor, biblioteca de desenrolamento, tempo de execução, ferramentas de controle, bootloader e SDK;
  • A maior parte da API, em vez dos mecanismos de herança usados ​​anteriormente em C++, passou a usar delegação, que simplificou a API, aumentou o desempenho e reduziu o consumo de recursos.

Fonte: opennet.ru

Adicionar um comentário