Eu gostaria do melhor desempenho em ambos os sistemas operacionais e da capacidade de alternar entre eles sem uma reinicialização. Tenho bastante memória (32 GB) e espaço em disco.
As duas opções fáceis são:
- Inicialização dupla - isso não permite uma troca instantânea ou quase instantânea entre sistemas operacionais
- Use uma VM (por exemplo, VirtualBox) - isso prejudica significativamente o desempenho do sistema operacional hospedado, especialmente para gráficos
Seria ótimo (digamos, através de um atalho de teclado ou outro método semelhante) alternar entre os dois sistemas operacionais, um dos quais está quente e o outro "quente no modo de espera".
Respostas:
Existem duas maneiras adicionais de executar o Windows e o Linux lado a lado que você não mencionou na sua pergunta:
fonte
Acredito que a solução com o mínimo de sobrecarga seria usar o Linux como seu sistema operacional principal e usar o KVM (máquina virtual baseada em kernel, não um comutador KVM que também poderia ser usado) para virtualizar o Windows. Hoje em dia, você pode obter desempenho que está quase rodando com o bare metal e pode até passar por uma GPU secundária para a VM ou ter uma única GPU dedicada e usar uma GPU integrada para o host. Você também pode usar o Looking Glass para obter uma solução muito mais ágil do que usar tempero (que é o que o virt manager usa por padrão e é essencialmente o mesmo que usar a área de trabalho remota.) Https://forum.level1techs.com/t/looking-glass -guides-help-and-support / 122387
A única parte complicada é a compatibilidade de hardware. Existem muitas peculiaridades, como precisar de uma CPU e placa-mãe compatíveis com o Intel VT-D ou o equivalente da AMD, precisar de uma GPU nova o suficiente que possua um UEFI VBIOS (ou obter o VBIOS do fabricante) pelos quais chips seu IO passa o que ajuda a dedicar periféricos à VM etc.
Eu recomendaria a leitura desta postagem no blog para ter uma idéia do que você teria que fazer para configurá-la. Definitivamente, não é tão simples como usar o virtualbox ou o VMWare, mas se você o configurar através do virt virt manager, poderá pular muitas das etapas manuais que esse cara passou. Também há muito mais informações sobre tudo isso no wiki do Arch, sob KVM, QEMU e VFIO. https://heiko-sieger.info/running-windows-10-on-linux-using-kvm-with-vga-passthrough/
Com um 2600k, você precisaria fazer o downgrade para a versão não-K e verificar se sua placa-mãe também suporta VT-D. Eu tive esse mesmo problema com uma 3700k e uma placa-mãe incompatível e tive que trocar as duas, mas acabei ganhando um pouco de dinheiro com as compras e vendas do ebay.
Para elaborar um pouco da terminologia que usei, aqui estão algumas breves descrições.
O Virt-manager (ou Virtual Machine Manager) é um aplicativo GUI para gerenciar suas máquinas virtuais usando o KVM. Você pode pensar nisso como tornar sua experiência muito mais próxima de como seria se você estivesse usando o VMWare ou o VirtualBox. Ele fornece um assistente para configurar a VM, permite alterar o hardware que está sendo passado, mostra gráficos de uso de recursos e permite gerenciar a energia. Mais informações e capturas de tela estão disponíveis no site aqui: https://virt-manager.org/
O Spice fornece acesso remoto à sua VM. É muito semelhante ao uso da área de trabalho remota, tanto em uso quanto em desempenho, mas é usado pelo virt manager por padrão. Gostaria de poder ser mais específico com a minha descrição, mas não a usei muito e até o site é bastante vago quanto ao que é especificamente. https://spice-space.org/
O espelho é uma alternativa ao uso de algo como o Spice, mas com latência extremamente baixa. Ele copia o buffer de quadro da sua GPU para a memória do sistema e cospe na tela. Ainda é muito cedo no desenvolvimento, mas funciona muito bem e é muito mais adequado para aplicativos que exigem uma solução mais responsiva. Um guia muito abrangente de configuração está disponível no site do projeto: https://looking-glass.hostfission.com/quickstart
A outra alternativa ao Spice and Looking Glass é apenas conectar um monitor a uma das saídas de uma GPU passada. Isso é mais responsivo, mas exigirá outro monitor ou entradas de comutação no mesmo monitor.
fonte
Como todas as outras respostas a essa pergunta mencionaram, a virtualização é o caminho a percorrer. Uma maneira de minimizar a penalidade de desempenho seria executar o Windows como seu sistema operacional principal e virtualizar uma distribuição Linux leve . Em cima da minha cabeça, você pode tentar:
Ao escolher uma distribuição leve, você poderá reduzir o desempenho o suficiente para configurar um sistema com o qual esteja satisfeito.
fonte
Os aplicativos GUI do Unix / Linux que usam a pilha da tecnologia X11 (a maioria deles) são inerentemente capazes de serem exibidos em uma máquina remota (incluindo o cenário de uma VM conectada à rede e seu host).
Você pode instalar um servidor de exibição X11 (existem várias opções gratuitas e não gratuitas) em sua máquina Windows, executar seu sistema Linux (ou mesmo vários sistemas Linux) em uma VM e fazer com que os gráficos reais ocorram nas janelas servidor X11 lateral. Os aplicativos GUI no sistema linux se conectam ao servidor de vídeo X11 por meio de rede local (como configurar isso está além do escopo aqui, pois existem várias maneiras diferentes de fazer isso.) Ponteiros: A variável de ambiente DISPLAY, ssh com encaminhamento X11, XDMCP).
fonte
Fiz isso em uma circunstância de alto desempenho e consegui um desempenho quase suficiente para o desempenho nativo dos aplicativos que estávamos executando. Isso não é tanto um 'aqui está como fazê-lo', mas dois exemplos de onde eu fiz isso e obtive um desempenho adequado e resolvi um problema.
Para Ciência de Dados e Desenvolvimento de Software
Minhas estações de trabalho atuais (um laptop e minha estação de trabalho) têm o Windows 10 e o Ubuntu instalados lado a lado em duas partições separadas. Ao inicializar minha máquina, posso selecionar o Windows ou o Ubuntu e inicializar em qualquer sistema operacional. No Ubuntu, eu uso o VirtualBox para inicializar a partição nativa do Windows e executá-la como qualquer outra máquina virtual ( veja aqui ).
Tudo funciona: arrastar e soltar, área de transferência compartilhada e compartilhamento de arquivos. Eu corro constantemente planilhas grandes e multithread do Excel (não atire - eu não as construí!) Na minha máquina virtual e tudo é muito complicado.
Para trabalhos geofísicos, geológicos e de engenharia
Alguns anos atrás, eu criei uma configuração semelhante usando o CentOS e o Windows 7. Isso foi para que meus colegas pudessem executar simulações geofísicas caras e com alto desempenho no Linux, enquanto ainda conseguiam acessar o software de mapeamento 2D e 3D com grande demanda de desempenho no Windows 7 (junto com o Outlook e o restante do pacote Microsoft). Experimentamos o VirtualBox, mas com dinheiro para gastar, resolvemos o problema usando o VMware Workstation e a GPU (o custo foi trivial em comparação aos salários e licenciamento de software). Para nossos aplicativos, alcançamos desempenho suficiente o suficiente para o desempenho nativo no Windows e todos ficaram muito felizes com a instalação.
Essas eram máquinas bastante escassas para o seu tempo (por volta de 2010): Quadro 4000, Xeons de núcleo quádruplo duplo e 32 GB de memória. A parte mais árdua da montagem dessas configurações (tanto quanto me lembro) era algo a ver com um controlador RAID de hardware. Eu mantive cerca de uma dúzia de máquinas usando essa configuração e nunca tivemos um único problema durante a vida útil do projeto em que essas máquinas foram compradas (~ 2 anos). Este foi um resultado fantástico para nós, porque se uma única máquina estivesse inoperante, digamos, uma semana, isso nos custaria mais em perda de produtividade do que a própria estação de trabalho!
Conclusão
Você pode obter um desempenho muito bom usando a opção de inicialização dupla descrita acima. Eu fiz isso usando o VirtualBox e o VMware de diferentes ocasiões, usando uma combinação nas distribuições Linux (Mint, Ubuntu e CentOS) e versões do Windows (7, 10), e sempre obtive desempenho adequado para minhas necessidades.
A outra vantagem dessa configuração é que você pode destruir a partição e deixar o Windows ou Linux para trás se a) suas circunstâncias mudarem ou b) essa configuração não for adequada para suas necessidades. Se o desempenho não for suficiente, você também tem a possibilidade de simplesmente inicializar diretamente no sistema operacional, onde você precisa de um pouco mais de desempenho.
Finalmente, uma nota sobre o licenciamento: Se você inicializar o Windows nativamente ele vai ver um hardware diferente e interrogar sobre licenças. Esse é um problema menor do Windows 10, que simplesmente o incomoda quando você se dá bem com seu trabalho. Não me lembro como resolvemos isso para essas estações de trabalho geofísicas; Lembro que tínhamos uma licença por volume e possivelmente alguma ajuda de um representante da Microsoft.
Epílogo: Remote X e VirtualGL
Também configurei estações de trabalho usando o VirtualGL e um cluster de GPU para simulações de petróleo de alto desempenho. Até fiz isso na AWS, mas não o recomendo por vários motivos: custo, desempenho e conveniência.
fonte
Não conheço nenhum método de fazer isso que não tenha grandes advertências associadas a ele.
Se fosse um Chromebook, você poderia usar o Crouton para realizar algo assim. mas o que isso faz é compartilhar o kernel entre o Chrome OS e outra distribuição, nominalmente o Ubuntu. Como o Windows e o Linux usam kernels diferentes, essa abordagem não seria possível. Eles não tocariam bem juntos.
Para inicializar o sistema operacional, o kernel precisa ter acesso de baixo nível ao hardware, e executar dois kernels diferentes (Windows e Linux) lado a lado não seria muito fácil de realizar, se não impossível.
Algum tipo de virtualização é provavelmente o seu único recurso se você insistir em usar um único computador. Eu não uso um Mac, mas pelo que vi, o Parallels é bastante transparente - você pode "alternar" entre sistemas operacionais com uma tecla de atalho. Eu usei o VMWare no Windows e no Linux e fiquei surpreso com o desempenho do sistema operacional hospedado (convidado), ele é muito próximo do nativo (embora seja certo que eu não testei cargas de trabalho graficamente intensas). O VirtualBox é de código aberto e gratuito, funciona bem, mas o VMWare funciona muito melhor. Eu acho que há uma versão gratuita limitada.
Se você insistir em ter desempenho nativo para os dois sistemas operacionais, a inicialização dupla é a única maneira de conseguir isso. Se você possui um SSD rápido (por exemplo, um Samsung 960 ou similar), a reinicialização não precisa demorar muito.
fonte
A virtualização de hardware é muito problemática. Embora seja bom para 90% das coisas, os outros 10% às vezes o bloqueiam e acabam fazendo com que você se desfaça de todo o conceito.
Alguém aludiu a isso em um dos comentários, mas acho que as máquinas lado a lado usando um comutador KVM são a maneira mais eficiente de fazer o que você está pedindo.
Há alguns anos, eu tenho duas máquinas Linux e Windows lado a lado. Eu tenho dois monitores de 32 "sentados um ao lado do outro; um conectado à máquina Linux e o outro conectado à máquina Windows.
Tenho uma mesa rolante ajustável de teclado / mouse que me permite ficar em pé ou sentar e me concentrar na frente de um (ou de ambos) monitores com o teclado / mouse.
O principal é que o comutador KVM permite alternar imediatamente entre controlar a caixa do Linux ou a caixa do Windows.
Você também pode dar um passo adiante e adquirir o Synergy, que elimina completamente a necessidade do comutador KVM, usando o software para alternar o mouse e o teclado entre as máquinas.
Chega de botas duplas irritantes, sobrecarga ou incompatibilidades do KVM / VirtualBox / VMWare, e você ainda sente que é um único computador.
fonte
Dependendo do que você está tentando alcançar, você pode experimentar o Wine.
De https://www.winehq.org/ :
Isso permitiria que você executasse aplicativos Linux e (alguns) Windows lado a lado no Linux.
Uma lista dos aplicativos Windows que funcionam com o Wine pode ser encontrada em https://appdb.winehq.org/ .
Pessoalmente, eu o uso para executar alguns jogos no Linux que usam o DirectX, que não possui uma versão do Linux. Aplicativos como o Microsoft Office são conhecidos por trabalhar com ele.
fonte
Tecnicamente, você pode ativar a hibernação nos dois sistemas e retomar um sistema a partir da hibernação depois de colocar outro sistema na hibernação. Isso será mais rápido e mais conveniente do que a reinicialização real. Estou fazendo isso na minha máquina atual.
Até agora, parece não haver nenhum problema, pois o Linux usa a área de troca especial para armazenar a imagem de hibernação, enquanto o Windows usa a partição do sistema.
fonte
Você quer o coLinux . Ele atende aos seus requisitos quase perfeitamente - o kernel Linux executando como um processo privilegiado especial no Windows, sem impacto no desempenho do kernel (embora os periféricos ainda estejam virtualizados e os gráficos passem pelo protocolo X11). Infelizmente, porém , o projeto não está mais sendo desenvolvido ... e outras abordagens (VirtualBox etc.) amadureceram desde então e oferecem uma experiência de usuário muito melhor.
fonte
Tudo tem prós e contras. Aqui estão os que funcionam para mim em maio de 2018:
VirtualBox : Isso funciona. Agora. Todo dia. Eu corro um host do Windows e uma VM do Ubuntu. Tudo é ótimo, incluindo suporte para vários monitores e redes (eu uso o modo Bridged para que cada VM apareça na rede separada do host). Não sou fã de soluções controladas pelos "grandes nomes", mas honestamente a Oracle fez esse produto corretamente (pelo menos no momento).
Execute vários computadores, é um ótimo caminho a percorrer! O Synergy pode até permitir que você pressione o mouse e o teclado em todos eles. Os KVM USB DDM também são bons, mas são caros!
Inicialização dupla: Executo a inicialização em quad ou mais na maioria dos meus computadores. Você precisará aprender sobre as partições GPT e MBT herdadas e como cada um de seus sistemas operacionais as gerencia. A Refind faz um trabalho incrível para ajudá-lo a acertar, especialmente se você tiver hardware semi-moderno. Embora eu sempre configure o Windows-Ubuntu (-Mac) inicializando em todos os meus PCs, na prática, nunca realmente reinicio em um sistema operacional diferente. É muito perturbador. Em vez disso, sempre acabe dedicando cada computador a um conjunto específico de tarefas em um sistema operacional.
Execute um servidor X no Windows e puxe janelas do Linux a partir de uma VM de rede. Pode ser feito; Corri o x2go com sucesso por um tempo. Mas veja o próximo item para saber por que eu não seguiria esse caminho.
Use uma VM em qualquer rede: tentei desenvolver uma VM da AWS, VMs do vSphere e todos os tipos de outras combinações, e você sempre desistirá disso em pouco tempo, porque é escravo da rede problemas com os quais você NÃO deseja lidar no meio do seu desenvolvimento. Nem pense nisso, mesmo se você tiver recursos de rede incrivelmente incríveis.
Como nota final, devo mencionar que sempre desenvolvo em uma máquina Ubuntu dedicada sempre que possível. As soluções VirtualBox salvaram minha bunda na América corporativa. Entre com uma imagem de VM no seu bolso, instale o VirtualBox em seu novo e ruim lappie do Windows, vá!
fonte
Além das outras soluções propostas aqui, há também uma abordagem de "virtualização cruzada" que tentei uma vez:
/home
eDocuments and Settings
) separada da partição do sistemaIsso ainda significa que você terá a sobrecarga de virtualização de um dos dois sistemas operacionais. Mas você pode decidir na inicialização qual será o host e qual será o convidado.
Os dados são compartilhados via rede (por exemplo, instalando o Samba na caixa Linux).
Você precisará manter cada configuração do sistema operacional duas vezes (a instalação do host e a VM) - tecnicamente você tem quatro computadores, a menos que use o atalho descrito abaixo.
Como o Linux (pelo menos os vários tipos de Ubuntu) se adapta facilmente às mudanças de hardware (a ponto de eu poder arrancar o disco do meu laptop antigo, instalá-lo no novo e ter apenas os adaptadores de rede para reconfigurar), você pode Também faça com que a VM do Linux inicialize o sistema a partir de uma partição bruta. Dessa forma, as alterações feitas no host Linux também seriam refletidas na VM e vice-versa, as únicas exceções sendo as configurações vinculadas a um dispositivo de hardware específico.
O licenciamento do Windows pode ser uma ressalva aqui. (Naquela época, eu estava no Windows 2000, onde tudo isso era mais fácil.) No que diz respeito ao Windows, você o executa em duas configurações de hardware diferentes (processador, disco, adaptador de rede). Embora eu não tenha certeza das implicações legais, o procedimento de ativação do produto pode exigir que você obtenha duas licenças. (Se você conseguir que o Windows execute uma partição bruta em uma VM, provavelmente ele detectará uma alteração de hardware e exigirá a reativação sempre que você alternar entre a configuração de host e de convidado.)
fonte
Eu faço isso (apesar de alternar entre o macOS e o Windows) tendo o Windows em uma VM na nuvem e não hospedado no meu Mac. Anteriormente, usei o Boot Camp para inicialização dupla e, em seguida, uma VM host local usando o VMware Fusion, mas achei que ter um Windows baseado em nuvem e usar a Conexão de Área de Trabalho Remota era o mais conveniente na alternância.
(Apenas posso usar o CMD-TAB para alternar instantaneamente os desktops.)
Eu esperava que essa experiência fosse útil para você.
fonte
Esqueça VMs, Wine e inicialização dupla. Eu recomendo simplesmente ter duas máquinas, a Windows sem cabeça e a área de trabalho remota a partir da Linux usando algo como Remmina .
É razoavelmente transparente via área de transferência compartilhada e pastas domésticas. Isso pode não ser prático para quem precisa apenas de um laptop, mas é uma ótima opção se você puder apenas estar em sua mesa. Eles não precisam ser máquinas novas; apenas envelheça por volta de 2012 que você pode ter por perto.
fonte
Algumas sugestões prontas para uso que podem se encaixar em determinados casos de uso de nicho:
Se você fica sem cabeça, o Linus funciona praticamente em qualquer lugar e é incrivelmente leve. Eu o executei como um serviço do Windows antes e consegui conectar-me a ele a partir de um cliente ssh ou servidor X executando no Windows (para que todas as GUIs do Linux sejam exibidas).
Na mesma linha, você pode colar um pi de framboesa na parte traseira do laptop, conectá-lo à porta USB e fazer com que os dois computadores funcionem ao mesmo tempo. Novamente, você precisa usar sua máquina Windows para acessar sua máquina Linux, mas com esta solução, você ainda pode executar a instalação sem acesso ao X / ssh, mas também pode usar a área de trabalho remota (RDP) no PI e usar sua implementação X, o que deve lhe proporcionar uma melhor experiência de desktop linux (da última vez que verifiquei, os servidores X gratuitos para Windows eram lentos, difíceis de configurar e propensos a erros)
Nenhuma dessas opções oferece uma estação de trabalho Linux de tela cheia de alta velocidade, mas, em determinadas situações, elas oferecem soluções interessantes.
E eu estava brincando sobre a fita adesiva ...
na maioria das vezes.
fonte
Embora eu recomende uma VM (os modos contínuos do VirtualBox e VMWare são realmente úteis para uma melhor integração), há outra possibilidade:
Existem X-Servers para Windows como Xming e poderosas soluções de desktop remoto como xpra .
Usando um deles, você pode executar um Linux em uma VM (ou mesmo uma solução como o AndLinux, que executa um kernel Linux no Windows) e exibir os aplicativos no Servidor de Vídeo nativo ou através da ferramenta de área de trabalho remota.
Dessa forma, você pode obter mais janelas nativas e, dependendo da VM, um melhor desempenho para aplicativos de interface do usuário.
fonte
Use um sistema GNU / Linux de sua escolha em seu host e, em seguida, uma solução PaaS. Um que é viável para você seria " Shadow ".
Basicamente, ele é executado como um aplicativo no seu host, mas na verdade é um computador na nuvem. Você pode mudar para o aplicativo sem problemas, assim como focaria em qualquer outro aplicativo.
https://youtu.be/vVOKBaIxXVA?t=6
fonte