I have installed Windows7 by bootcamp on my Macbook, however, every time when I want to switch to Windows, I have to reboot the machine completely. That means I cannot keep my current workspace when next time I switch back to OSX.

If you use the Mac's hibernate function by the terminal, you don't even have the chance to choose which system to boot from, it immediately wakes up OSX. Sometimes, that's really a pain.

Back to the days of Windows, we used the hibernate function to switch between systems without losing your current workspace. Is there an alternative way to achieve it on Mac?

PS: I can not use a virtual machine solution, because it has some hardware disadvantages. Such as the development of Kinect can't work through VM environment.

  • curiosity: which virtualization software did you try that isn't working with Kinect? – Guido Preite Apr 9 '13 at 11:41
  • The vmware fusion. – Yad Smood Apr 9 '13 at 11:46
  • if you have time give a shot to parallels, I have an usb dongle that only parallels is able to pass correctly to the vm. – Guido Preite Apr 9 '13 at 11:53
  • Too much work for me to move all projects to parallels. – Yad Smood Apr 9 '13 at 12:17
  • with parallels you can boot your bootcamp partition directly – Guido Preite Apr 9 '13 at 12:22

OS X does not natively hibernate like Windows.

For maximum effectiveness, apply both of these methods:

  1. Install rEFIt.
  2. Start Terminal
  3. Run /efi/refit/enable.sh
  4. Put the Mac to deep sleep.
  5. When you power up the Mac, the efi menu will appear and you are able to select to boot OS X or Bootcamp.

But, since you have Mac hardware, you should be able to VM OSX.

Secondly, you can try pmset. You can change it with sudo pmset -a hibernationmode 25.

The pmset man page also recommends using 25 instead of 1.

0000 1000 (bit 3) encourages the dynamic pager to page out inactive pages
prior to hibernation, for a smaller memory footprint.

0001 0000 (bit 4) encourages the dynamic pager to page out more
aggressively prior to hibernation, for a smaller memory footprint.

We do not recommend modifying hibernation settings. Any changes you make
are not supported. If you choose to do so anyway, we recommend using one 
of these three set- tings. For your sake and mine, please don't use 
anything other 0, 3, or 25.


hibernatemode = 25 (binary 0001 1001) is only settable via pmset. The 
system will store a copy of memory to persistent storage (the disk), and
will remove power to memory. The system will restore from disk image. If
you want "hibernation" - slower sleeps, slower wakes, and better battery 
life, you should use this setting.
  • Sorry, it doesn't work on my OSX 10.8. The efi menu works fine if I reboot completely. But deep sleep will only wake up OSX. Besides I found a post which is similar to this problem: superuser.com/questions/432838/…. – Yad Smood Apr 10 '13 at 6:17
  • Is this intended to allow fast switch with retaining context of each side (OSX and Win or Linux)? – nhed Aug 25 '16 at 17:13

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .