This is the structure of the source code: src/ -> source code .../zfs-fuse/ -> main zfs-fuse process .../cmd/ -> filesystem related programs ......./zdb/ -> zdb, the zfs debugger ......./ztest/ -> ztest, the zfs tester ......./zfs/ -> zfs, filesystem management ......./zpool/ -> zpool, pool management .../lib/ -> libraries ......./libavl/ -> AVL trees, used by almost all ZFS libraries ......./libnvpair/ -> Name-value pairs, used by almost all ZFS libraries ......./libsolcompat/ -> Solaris headers/code not available in Linux ......./libsolkerncompat/ -> Solaris kernel headers/code necessary for the zfs-fuse process ......./libumem/ -> Memory management library ......./libuutil/ -> Solaris userland utility functions ......./libzfs/ -> ZFS library used by zfs and zpool ......./libzfscommon/ -> Common ZFS code between libzpool and libzfs. Compiles into libzfscommon-user and libzfscommon-kernel. ......./libzpool/ -> Main ZFS code. Compiles into libzpool-user (used by zdb and ztest) and libzpool-kernel (used by zfs-fuse process). Also contains "userland" zfs_context.h.