The SharePoint Hive is a term that is thrown around the SharePoint development and support communities that refers to the installation location of the SharePoint product on your server. The term was coined by Todd Bleeker as the “starting place for everything SharePoint” (see The WSS "60 Hive"). The Hive contains folders that hold the SharePoint binary files, site definitions, feature definitions, page layouts, ULS and upgrade logs, and localization files.
Something that is not obvious is that the location for the SharePoint Hive is not configurable. During the SharePoint installation, you need to supply folders for the INSTALLLOCATION and DATADIR folders, but neither of them is responsible for holding the Hive. The Hive is installed within the Common Files folder, which in nearly every Windows installation is located at C:\Program Files\Common Files. The environment variable %CommonProgramFiles% points to the Common Files folder no matter where it resides.
It’s common for companies to have a policy that applications cannot be installed the the system drive (typically C:) and instead applications must be installed to a dedicated application drive. This policy is typical of larger enterprises and in companies with seasoned administrators who have seen a number of hardware or data failures. SharePoint installs the Hive to the C: drive, and that can be a sore point.
What I suggest to overcome this resistance is to consider the role of the server. In most cases, the server is used solely to run SharePoint, either as a single server farm or as a server in a multi-server farm. Usually it’s not running any other applications other than SharePoint or other applications related to the farm. In this sense, if you consider that the server is a SharePoint server and all it does is serve up SharePoint, then you can easily justify calling SharePoint binaries “system files”. With this understanding, putting the Hive on C: is tolerable.
So where is the hive?
%CommonProgramFiles%\Microsoft Shared\Web Server Extensions\##, where ## indicates the major SharePoint version:
|SharePoint Portal Server 2003|
Windows SharePoint Services 2.0
%CommonProgramFiles%\Microsoft Shared\Web Server Extensions\60
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\60
|Microsoft Office SharePoint Server 2007|
Windows SharePoint Services 3.0
%CommonProgramFiles%\Microsoft Shared\Web Server Extensions\12
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12
|SharePoint Server 2010|
SharePoint Foundation 2010
%CommonProgramFiles%\Microsoft Shared\Web Server Extensions\14
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14
|SharePoint Server 2013|
SharePoint Foundation 2013
%CommonProgramFiles%\Microsoft Shared\Web Server Extensions\15
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15
SharePoint 2013 also maintains a 14 hive for backwards compatibility for SharePoint 2010 customizations