The Linux Programming Interface: A Linux and UNIX System Programming Handbook