UHD™ is the open source USRP Hardware Driver offered by Ettus for their series of Software Defined Radio devices.
UHD's job is to offer programmers a common API to get samples from and to the device and to control the various aspects of RF operation (tuning, gain setting, …).
Being mainly written in C++, it's highly modular and supports devices from the "original" USRP to the newest USRPs (being the third generation devices at the point of writing). It contains a C API to the C++ infrastructure.
There are pre-built binaries available for Ubuntu (& variants), Fedora and Windows; other OSes (e.g. OS X, other linux distros) are supported by automated build processes.
Technically, UHD is nearly completely a userland driver: The devices with USB and Network interface work completely without any specific kernel-mode code, and the embedded and PCIe-attached only need a mininmal data forwarding driver.