The Linux and Android version of the Mali GPUs DDKs include three components which run within the kernel. The most important of these, known as the Device Driver, provides the low-level access to the Mali-200, Mali-300, Mali-400 and Mali-450 GPU. An important, secondary component is the Unified Memory Provider (UMP) which can be used in a variety of ways to facilitate zero-copy operations within the driver stack