Los servidores NFS tradicionales son ejecutados en el espacio del usuario y funcionan de forma fiable, pero tienen problemas de rendimiento cuando su carga es alta. Esto es causa de la sobrecarga que añade a su funcionamiento el interfaz que ejecuta las llamadas al sistema, y porque tiene que competir con otros procesos que se encuentran en el espacio del usuario (y que son potencialmente menos importantes) para ganar tiempo de CPU.
El núcleo 2.2.0 soporta un servidor NFS experimental programado inicialmente por Olaf Kirch y después por H.J. Lu, G. Allan Morris, and Trond Myklebust. El soporte de NFS basado en núcleo proporciona un incremento significativo en el rendimiento del servidor.
En las distribuciones actuales, puede encontrar todas las herramientas del servidor NFS en un paquete. Si no, puede localizarlas en http://csua.berkeley.edu/~gam3/knfsd/. Necesita compilar un núcleo 2.2.0 con el demonio de NFS basado en el núcleo incluido si se quiere hacer uso de las herramientas. Puede comprobar si su núcleo tiene el demonio de NFS incluido comprobando si existe el fichero /proc/sys/sunrpc/nfsd_debug. Si inicialmente no se encuentra, puede que necesite cargar el módulo rpc.nfsd a través de la utilidad modprobe.
El demonio de NFS basado en el núcleo utiliza un fichero de configuración /etc/exports estándar. El paquete incluye programas que sustituyen a los demonios rpc.mountd y rpc.nfsd que además se ejecutan de una forma prácticamente igual que sus equivalentes ejecutados en el espacio de usuario.