from what Ive been reading (I only run windows atm as I have the extra licenses) it makes no difference. win7, vista, xp, *nix are all pretty much the same m/hash wise on the same hardware. what is different is ease of use as win has tons of overclocking and over/under volting tools. *nix, not so much.
the big variables for m/hash production are the core/mem clocks, miner (and its flags), SDK version and CAT version used. each OS/card combo seems to like a different combination to find its sweet spot.