O QEMU é um emulador e virtualizador de máquinas de código aberto e de código aberto.
O Qemu é capaz de imitar uma máquina completa em software sem a necessidade de suporte à virtualização de hardware. Ao usar a tradução dinâmica, ele atinge um desempenho muito bom. O QEMU também pode se integrar aos hipervisores Xen e KVM para fornecer hardware emulado, permitindo que o hipervisor gerencie a CPU. Com o suporte ao hipervisor, o Qemu pode atingir o desempenho quase nativo para as CPUs. Quando o Qemu emula diretamente as CPUs, é capaz de executar sistemas operacionais fabricados para uma máquina (por exemplo, uma placa ARMV7) em uma máquina diferente (por exemplo, uma placa PC x86_64).
O QEMU também é capaz de fornecer a virtualização da API de espaço de usuários para interfaces Linux e BSD Kernel. Isso permite que os binários compilados contra uma arquitetura ABI (por exemplo, o Linux PPC64 ABI) sejam executados em um host usando uma arquitetura diferente ABI (por exemplo, o Linux x86_64 ABI). Isso não envolve nenhuma emulação de hardware, simplesmente a emulação da CPU e Syscall.
Qemu pretende se encaixar em uma variedade de casos de uso. Ele pode ser chamado diretamente pelos usuários que desejam ter controle total sobre seu comportamento e configurações. Ele também visa facilitar a integração em camadas de gerenciamento de nível superior, fornecendo uma interface estável na linha de comando e monitorando a API. É comumente chamado indiretamente pela biblioteca LibVirt ao usar aplicativos de código aberto, como ovirt, openstack e virt-manager.
O Qemu como um todo é divulgado sob a licença pública geral da GNU, versão 2. Para obter detalhes completos de licenciamento, consulte o arquivo de licença.
A documentação pode ser encontrada hospedada on -line em https://www.qemu.org/documentation/. A documentação para a versão atual de desenvolvimento que está disponível em https://www.qemu.org/docs/master/ é gerada a partir do docs/
pasta na árvore de origem e é construída pela Sphinx.
O QEMU é um software multi-plataforma destinado a ser construído em todas as plataformas Linux modernas, OS-X, Win32 (através da cadeia de ferramentas Mingw64) e uma variedade de outros alvos do UNIX. As etapas simples para construir qemu são:
mkdir build
cd build
../configure
make
Informações adicionais também podem ser encontradas on -line no site QEMU:
O código -fonte QEMU é mantido no sistema de controle de versão Git.
git clone https://gitlab.com/qemu-project/qemu.git
Ao enviar patches, uma abordagem comum é usar 'Git Format-Patch' e/ou 'Git Send-email' para formatar e enviar o e-mail para a lista de discussão [email protected]. Todos os patches enviados devem conter uma linha 'assinada por' do autor. Os patches devem seguir as diretrizes estabelecidas na seção de estilo do Guia de desenvolvedores.
Informações adicionais sobre o envio de patches podem ser encontradas on -line no site QEMU:
O site da QEMU também é mantido sob controle de origem.
git clone https://gitlab.com/qemu-project/qemu-web.git
Uma utilidade 'Git-Publish' foi criada para tornar acima do processo menos pesado e é altamente recomendado para fazer contribuições regulares ou mesmo apenas para enviar revisões consecutivas da série de patches. Ele também requer uma configuração de trabalho 'Git Send-E-Eail' e, por padrão, não automatiza tudo, então você pode passar pelas etapas acima manualmente pela primeira vez.
Para instruções de instalação, vá para:
O fluxo de trabalho com 'Git-Publish' é:
$ git checkout master -b my-feature
$ # work on new commits, add your 'Signed-off-by' lines to each
$ git publish
Sua série de patches será enviada e marcada como My-Rumate-V1 se você precisar se referir a ele no futuro.
Enviando V2:
$ git checkout my-feature # same topic branch
$ # making changes to the commits (using 'git rebase', for example)
$ git publish
Sua série de patches será enviada com a tag 'V2' no assunto e a ponta do Git será marcada como meu recurso-V2.
O projeto QEMU usa problemas do GitLab para rastrear bugs. Os bugs encontrados ao executar o código construído a partir do Qemu Git ou as fontes lançadas a montante devem ser relatadas via:
Se estiver usando o QEMU por meio de um pacote binário pré-construído do fornecedor do sistema operacional, é preferível relatar bugs ao próprio rastreador de bugs do fornecedor primeiro. Se também se sabe que o bug afeta o código a montante mais recente, ele também poderá ser relatado via GitLab.
Para obter informações adicionais sobre consulta de relatórios de bug:
Para o histórico da versão e as notas de lançamento, visite https://wiki.qemu.org/changelog/ ou veja o histórico do Git para obter informações mais detalhadas.
A comunidade QEMU pode ser contatada de várias maneiras, com os dois principais métodos sendo email e IRC:
Informações sobre métodos adicionais para entrar em contato com a comunidade podem ser encontrados on -line no site da QEMU: