Inicialização dupla ao mesmo tempo

1

Suponha que eu tenha um host Linux, com o Windows-7 instalado em uma partição na mesma unidade.

É possível inicializar no Linux, salvar seu estado na memória (Hibernate, essencialmente) e depois inicializar o Windows ao lado dele, fechar as janelas quando terminar e restaurar o Linux (Tudo sem reinicializar).

O objetivo é usar o Linux como meu sistema operacional primário, e quando eu precisar de um aplicativo do Windows use o software snapshot para carregar um instantâneo de estado do sistema Windows para usar o aplicativo, quando terminar feche e continue trabalhando no linux .

Estou evitando o uso de tecnologias de virtualização a todo custo, pois também estou usando a instalação do Windows para executar jogos (a menos que você possa me encontrar uma solução virtual de código aberto que tenha 100% de acesso ao hardware host, sem ifs , ands, buts), por favor, evite sugerir tecnologias virtuais.

    
por user252921 10.09.2013 / 15:04

4 respostas

0

Talvez o 'kexec' seja o que você está procurando. O Kexec simplesmente carrega um novo kernel + argumentos e um opcional initrd, então vai para o ponto de execução dos kernels. Deve ser possível fazer o softboot no Grub (pelo menos no Grub4Dos).

Dê uma olhada no link

Os scripts podem precisar de alguns ajustes para fazer a hibernação em vez de uma reinicialização, mas isso faz aproximadamente o que você queria: softboot em outro OS / Kernel

Isso provavelmente só funcionará em uma direção, do Linux para o Windows. A outra direção será um pouco mais complicada, se não impossível.

    
por 10.09.2013 / 15:37
0

"Na computação, o kexec (execução do kernel) é um mecanismo do kernel Linux que permite a inicialização" ao vivo "de um novo kernel" sobre "o kernel atualmente em execução.kexec pula o estágio de bootloader (fase de inicialização de hardware pelo firmware ou BIOS) e carrega diretamente o novo kernel na memória, onde ele inicia a execução imediatamente, evitando os longos períodos associados a uma reinicialização completa e ajudando os sistemas a atender aos requisitos de alta disponibilidade, minimizando o tempo de inatividade. " -wikipedia

mas eu espero que ele não suporte kernals do NT mesmo que os recursos aqui apontem que o kexec loader suporta Linux / multiboot.

espero que não haja nenhum mecanismo bem desenvolvido que possa inicializar o linux & nt kernals sem passar por reinicialização.

se você preferir passar pela inicialização a quente, se tiver a partição linux / windows na mesma unidade & Se você estiver usando um carregador do Windows, ele continuará as janelas sem mostrar o menu de inicialização.

Eu não posso dizer a mesma situação com os carregadores do Linux já que não os testei. Vou atualizar isso assim que eu descobrir.

se você preferir passar pela inicialização a quente e se puder usar dois discos separados para cada partição, use suspender para o disco, que é de meu conhecimento o único método que pode funcionar com sucesso (contanto que você não prefira técnicas de visualização.)

    
por 10.09.2013 / 16:35
0

O problema principal será o Windows:

No Vista (ainda não testei isso no Windows 7), há o seguinte comportamento:

Se você usar o gerenciador de inicialização do Windows para alternar entre o Linux e o Windows, o Windows será inicializado automaticamente após a hibernação do Windows. Isso significa: você não pode hibernar o Windows e mudar para o Linux.

Ao usar o GRUB como gerenciador de inicialização do Windows (Vista, mas talvez também 7), ele se recusou a entrar no estado de hibernação. Somente se o MBR contivesse um "MBR padrão" (que inicializa a partição ativa) e se a partição ativa fosse a partição do Windows, a hibernação funcionaria.

No entanto, houve uma solução alternativa que funcionou no meu sistema:

  • O GRUB foi instalado na partição Linux (principal), não no MBR
  • Antes de hibernar, tornei a partição do Windows ativa (usando o comando "diskpart")
  • Então eu corri "bcdedit" sem argumentos de linha de comando. Isso foi necessário para o Vista "ver" que a partição do Windows está ativa (por isso, a hibernação não foi recusada)
  • Voltei a partição ativa para a partição Linux (usando "diskpart")
  • Por causa de não executar "bcdedit" novamente, o Vista não mencionou que a partição do Windows não está mais ativa
  • O resultado: o Hibernating funcionou e o GRUB foi inicializado da próxima vez!

Eu escrevi um programa que fez todos esses passos, mas foi muito específico para o meu sistema. Infelizmente eu não sei se esta solução alternativa funciona no Windows 7 ou apenas no Vista.

A máquina vai para o estado "Hibernação". Não sei se isso atende ao requisito "não é necessário reinicializar".

    
por 10.09.2013 / 20:43
0

É possível ter uma e a mesma partição do Windows que você pode executar virtualizada sob VKM ou executar nativamente como uma opção de inicialização do GRUB.

Portanto, em circunstâncias normais, você executa o Linux com o Windows em uma máquina virtual. Quando você quiser rodar jogos do Windows, simplesmente reinicie o seu PC e selecione Windows no menu de inicialização do GRUB.

Isso pode anular suas razões para evitar tecnologias de virtualização.

    
por 19.08.2014 / 12:25