The Hurd is GNU's replacement for the various UNIX and Linux kernels. The Hurd is firstly a collection of protocols formalizing how different components may interact. The protocols are designed to reduce the mutual [[trust]] requirements of the actors thereby permitting a more [[extensible]] system. These include interface definitions to manipulate files and directories and to resolve path names. This allows any process to implement a file system. The only requirement is that it have access to its backing store and that the principal that started it own the file system node to which it connects. The Hurd is also a set of servers that implement these protocols. They include fie systems, network protocols and authentication. The servers run on top of [[Mach]] and use Mach's [[IPC]] mechanism to transfer information.