Mastering Linux Device Driver Development: Write custom device drivers to support computer peripherals in Linux operating systems - Madieu (IEEE, 2003)