Você pode fazer isso com o carregador de inicialização GRUB e com um SO simples (por exemplo, algo como floppyfw é suficiente) com software que ouve instruções de inicialização.
Quando o pacote WOL chega, ele deve primeiro inicializar o sistema operacional que iniciará o sshd, depois disso você pode emitir o comando para modificar a ordem de inicialização. Por exemplo, envie o comando boot windows
para definir o Windows como o SO principal e, em seguida, reinicialize e ele carregará o Windows.
Desta forma, você não precisa esperar pelo sistema operacional completo para carregar apenas para mudar para outro, mas em vez disso, você tem um SO de carregamento extremamente leve e rápido para controlar qual deles iniciar.
Outra coisa boa é que você não precisa configurar individualmente os sistemas operacionais que deseja inicializar, eles podem ser adicionados ou removidos facilmente e você também pode usar sistemas operacionais que não têm capacidade de alterar a ordem de inicialização. Você também pode inicializar a partir do CD / DVD, do servidor de rede ou do pendrive.