O que você diz é totalmente possível, exceto que a troca inesperada dos estados dos dispositivos periféricos não será tolerada pela maioria dos sistemas operacionais.
Exemplo - o OS1 está em execução, você o suspende para a RAM e, em seguida, inicializa o OS2. Todos os dispositivos, como PCI, USB, etc., estão em um estado específico, mas o OS2 mudará esse estado. Quando você retornar ao OS1, todos os drivers de dispositivo estarão trabalhando com dispositivos em estados inesperados do ponto de vista do OS1. O OS1 provavelmente falhará, pois seus drivers de dispositivo farão coisas que os dispositivos não gostam, já que os dispositivos não estão nos estados adequados.
Nem sempre é possível salvar e restaurar estados de dispositivos da mesma maneira que você usaria RAM. Dispositivos podem ser peculiares. Normalmente, para que um SO interaja com um dispositivo, seu driver terá que ser usado. Drivers podem ter bugs, etc.
Agora, você pode pensar que poderia atribuir dispositivos exclusivos a um sistema operacional ou outro. O problema é que, para chegar a um dispositivo, você precisará atravessar um barramento e, em um hardware de PC padrão, você só terá 1 ou 2 barramentos PCI-E, por exemplo, conectados a todas as placas PCI-E. Então, pelo menos, o ônibus terá que ser compartilhado entre suas instâncias do sistema operacional. Um sistema operacional pode "pisar" em outros dispositivos do sistema operacional, a menos que haja alguma camada ativa (como um hipervisor) no meio. É muito difícil separar completamente o hardware entre dois sistemas operacionais.
A virtualização é realmente o melhor que você pode fazer.