https://www.ssla.co.uk/linux-kernel-driver-developer/.