Com o lançamento de KVM para Power se aproximando no horizonte, tem se falado muito sobre rodar o Microsoft Windows em Power.
Só uma rápida retrospectiva, KVM é a tecnologia do Kernel do Linux que permite rodar máquinas virtuais de forma muito eficiente. E o QEMU é o software que emula diversos aspectos de um computador (portas serias, rede, BIOS/firmware, disco etc). O QEMU existia antes do projeto KVM e possibilita rodar, de forma razoavelmente lenta devido a emulação de todos os aspectos do hardware, outro sistema operacional completo dentro dele.
Posteriormente o QEMU foi modificado para se integrar ao KVM e usufruir das facilidades de virtualização da CPU. Isso faz com que VMs rodem com performance nativa porque o código executável da VM deixa de ser emulado pelo QEMU e passa a rodar diretamente na CPU via o KVM. Outras acelerações de hardware que o QEMU+KVM repassam para a VM é acesso a RAM e IO, graças ao suporte a esses aspectos das novas CPUs da Intel e AMD. Significa que um SO x86 virtualizado roda muitíssimo bem sobre uma máquina real x86. Exemplos disso é tomar um equipamento Intel, instalar nele Linux com KVM e QEMU e aí rodar nele VMs Windows (um SO feito para Intel) e/ou uma versão Intel de Linux (o Linux mais comum).
O QEMU emula hoje o instruction set de diversas CPUs: PA-RISC, Power, s390 (o mainframe), x86, x86_64, ARM, Sparc e outros. Mas isso não é suficiente para rodar, por exemplo, Sparc Solaris ou PA-RISC HP-UX dentro do QEMU porque também é necessário o firmware/BIOS desses equipamentos originais livremente disponível e isso não se encontra na Internet. Além de que há questões de licença de uso desses firmwares. Mesmo que se consiga extrair os firmwares de uma antiga máquina PA-RISC, duvido que a HP permita seu uso fora de seu controle. Os firmwares são importantes porque quando qualquer SO boota ele espera encontrar certos aspectos da máquina, das placas, das portas de IO etc, e isso é provido exatamente pelo firmware.
Mas isso não é problema para a plataforma PC que é aberta e extremamente popular e bem suportada (estou falando da plataforma como um todo, não só da CPU Intel). Projetos como o SeaBIOS implementaram de forma aberta e livre o firmware/BIOS desses equipamentos, bem como de diversos periféricos: VGA, placas de rede etc. Sem isso, o SO que espera encontrar uma completa máquina tipo PC simplesmente não vai rodar.
As BIOS de projetos como o SeaBIOS somados a capacidade de emulação de hardware do QEMU são os ingredientes necessários para rodar MS Windows em qualquer lugar onde o QEMU rode, por exemplo Power, por exemplo s390 (mainframe).
Mas cuidado, isso não é necessáriamente suportado oficialmente pela Microsoft. E o problema maior é que o Windows é compilado para Intel, sua linguagem de máquina é de Intel e nem a CPU Power ou a CPU s390 entendem essa linguagem nativamente. Aí o QEMU tem que entrar em modo emulação total o que faz tudo ficar lento. O resumo da ópera, e a má notícia, é que rodar Windows em Power pode ser extremamente ineficiente a ponto de não ser usável (isso teoricamente já é possivel hoje mas gastei dois minutos procurando o SeaBIOS no Fedora Power Linux e não o encontrei). Não tenho notícias se alguém já rodou. Se algum leitor já ouviu falar, por favor me avise.
Mas há um outro aspecto extremamente interessante em tudo isso e que só eu aqui vou lhes contar. Com virtualização aberta e performática chegando em Power, com o tempo, provavelmente a IBM vai criar suporte para rodar AIX virtualizado em QEMU+KVM+Linux em Power. Significa que a IBM provavelmente liberará os firmwares da plataforma Power (BIOS e periféricos populares suportados pelo AIX como placas de rede, video, portas de IO etc), da mesma forma que o projeto SeaBIOS faz hoje com a plataforma PC.
E isso permitirá rodar o inabalável AIX em qualquer plataforma física onde o QEMU rode, por exemplo Intel. Então, meus caros UNIX lovers, respirem fundo e preparem seus laptops para rodar AIX. Não necessariamente com performance, mas será tecnicamente viável.