Applications
Applications (like LVM2 and EVMS) that need to create new mapped devices talk to the device-mapper via the libdevmapper.so shared library, which in turn issues ioctls to the /dev/mapper/control device node. Developers can also access device-mapper from shell scripts via the dmsetup tool.
Read more about this topic: Device Mapper