Não é possível fazer isso do jeito que você está pensando. O problema está na strong integração entre o firmware da Apple e o OS X. OS X e o firmware trabalham entre si para determinar o estado de suspensão do computador.
Quando o Windows hiberna, ele copia o conteúdo da RAM para C: \ Hiberfil.sys e define um sinalizador no registro de que a máquina está em hibernação. Quando você inicializa pela primeira vez uma máquina Windows, o código do setor de inicialização carrega o arquivo BCD, que carrega essa parte do registro muito cedo no processo de inicialização e vê que o sistema está em hibernação. Depois de executar uma verificação básica de integridade, ele carrega o hiberfil.sys de volta na memória. O importante aqui é que tudo isso está contido no sistema de arquivos. É por isso que você pode inicializar livremente no OS X, depois reinicializar novamente no Windows e ele continuará a partir do arquivo de hibernação.
O mesmo não acontece com o OS X. Quando o OS X hiberna, ele copia o conteúdo da RAM para / var / vm / sleepimage da mesma forma que o Windows. Mas ele salva o sinalizador de hibernação na PRAM , não no sistema de arquivos (a configuração é chamada IORegistryCurrentSleepMode se você estiver interessado). Quando você liga um Mac novamente, os valores na PRAM são lidos antes mesmo que uma tentativa seja feita para inicializar no sistema operacional. Se o sinalizador indicar que o sistema está em hibernação, a primeira coisa que faz é voltar ao status normal. O firmware então inicializa o sistema imediatamente e ignora a preferência do disco de inicialização e qualquer tentativa de Opção + boot. Você nem consegue um sinal de inicialização. Em um Mac, o firmware contém toda a lógica necessária para inspecionar o sistema de arquivos e inicializar o sistema operacional. Ele não precisa de código de inicialização do jeito que o Windows faz.
Quando você lança o rEFIt na mixagem, ele se insere no processo. Ele substitui o /System/Library/CoreServices/boot.efi normal (que é o carregador de boot do OS X), com seu próprio arquivo de carregador de inicialização. É aqui que as coisas ficam confusas para mim porque tudo isso é propriedade da Apple, mas o resultado é que quando o firmware está inicializando o OS X, ele passa os argumentos necessários para carregar o / var / vm / sleepimage em vez do kernel normal do Darwin. O rEFIt não faz isso corretamente com o Lion e mais tarde. Mas, independentemente de se tratar de uma versão mais antiga do OS X ou de uma versão mais recente, o firmware já inverteu o bit de hibernação antes que o rEFIt seja carregado. É por isso que a retomada do OS X do modo de hibernação não é mais possível após a primeira inicialização.