GSoC/GCI Archive
Google Summer of Code 2011 The NetBSD Foundation

Userspace file system and device driver code sharing

by Vyacheslav Matyushin for The NetBSD Foundation

NetBSD has pud - Pass-to-Userspace Device, which provides support for implementing character and block device servers in userspace. However pud doesn't have it's userspace library, leaving much work for the device driver implementer. Also NetBSD has puffs - a framework for implementing filesystems in userspace with it's userspace library, libpuffs. The goal of the project is to move generic parts from libpuffs to the separate library and provide libpuffs and libpud based on this library.