devnode is the Hurd devnode translator. It exposes a Mach device as a filesystem node (hence "devnode"), so you can do open("/dev/foobar") then device_open("foobar"). In particular this means that the Unix permission model can be used to manage access to the fs node, rather than you having to have the device master port (= be root).