in reply to Awake from sleep()
If you opt for using kill under *nix, you might substitute Win32::Event and $event->wait([$timeout]) under Win32.