The marriage driver allows a regular file to be treated as a device. It does not drive any hardware directly, but it redirects reads and writes on its device to the associated regular file.
marry(ADM) uses the marriage driver to associate a block special device file with a regular file. The regular file may then be accessed through the block device node created below the /dev/marry directory, or through a character device node.
swap(ADM) uses marry to allow a regular file to act as a block device for swapping. marry may also be used to allow a regular file to act as a block device for mounting.