Yes, as has been found through testing, Windows 7 gets lower battery life than OS X, for light usage, because OS X has more fine-grained and integrated power management, in a nutshell. There's not much you can do about it in Windows, except for the usual tricks - put down your backlight brightness, disable inessential wireless services like bluetooth or wifi, and allow the system to sleep the display when not in use.
It seems your particular model (MBP 2011) doesn't allow the integrated Intel graphics to work under Windows - this is going to have a huge impact on battery life. Hopefully Apple fix this, follow the issue on their discussion forums.
Hybrid sleep is primarily a desktop feature, according to Microsoft. Read more at Microsoft's sleep and hibernation FAQ.
You can, but you will need some extra utilities:
brightness - you can download the program at http://dev.sabi.net/svn/dev/trunk/LocationDo/brightness.c and compile it using the command:
gcc -std=c99 -o brightness brightness.c -framework IOKit -framework ApplicationServices
Or you can just download it from my server at http://attic.luo.ma/brightness.bz2
Once you have it, brightness 0.01
will lower the brightness as much as possible
Bluetooth - The command you want is blueutil
which you can find here https://github.com/toy/blueutil. I have a compiled version of that available at http://attic.luo.ma/blueutil2.bz2. I also have another, older version of a program by the same name which you can download from http://attic.luo.ma/blueutil.bz2.
Whichever program you use, the -h
flag will explain how to use it.
Wi-Fi - You can turn AirPort power on or off using:
networksetup -setairportpower <device name> <on off>
where <device name>
is probably either en0 or en1
You can find out which it is using
networksetup -listnetworkserviceorder | egrep "Wi-Fi, Device"
For my MacBook Air (which uses en0), the command to turn it off is:
networksetup -setairportpower en0 off
More Settings
Be sure that you have changed the Energy Settings in System Preferences too, but you can also set them using:
sudo pmset -b sleep 10
to tell the computer to sleep after 10 minutes when on battery, and/or:
sudo pmset -b displaysleep 5
to tell the computer display to sleep after 5 minutes, when on battery (the -b flag indicates battery).
pmset -g
will show you your current settings.
Best Answer
If your Mac has dual GPU (integrated for tasks not requiring much graphical performance, and dedicated for high performance tasks) then I recommend using an app called gfxCardStatus. It allows you to lock specific GPU to be in use all the time instead of dynamically switching it. It provides HUGE battery life boost, mainly because OSX's GPU switching algorithm is very far from perfect, triggering dedicated GPU on even very basic apps eg Coda 2.
Just to give you an idea (based on my own MBP 15 2011):
I have found that very often in order to actually lock your GPU you need to select it twice in the app.