Microsoft does not support upgrading the OS for Exchange Servers.
Assuming you have DAGs setup, it's reliance on fail-over clustering with Windows will be one of the biggest issues with trying to upgrade the OS. Windows 2012 R2 to the soon-to-be released new Windows Server version is the first version to allow upgrades to the OS for Windows Fail-over Clusters.
Beyond that, there is still a lot of intertwining with Exchange and the various windows components in the OS. Some of those components change significantly from version to version (IIS 6 is VERY different from IIS7 for instance, service dependencies for services that don't exist or renamed in later versions) and trying to upgrade those components that Exchange users and taking into account any various customization/changes/3rd party components that integrate with previous versions, etc make make it essentially impossible to upgrade the OS from underneath Exchange.
An (older) example of someone trying to upgrade Windows 2003 to 2008 with Exchange 2007 can be found here. While older, the general idea remains the same.
It doesn't work.
edit:
Moving 900GB of mail and 10 databases isn't actually that hard. Assuming you are going from Exch2007+ to 2013, you can move them online. Use batch moves to stage the mailboxes and finalize at your convenience. Throttling can be used to ensure performance if your underlying systems are taxed.