Assumes Linux - needs portability patches for NetBSD.
