How to avoid writing kernel drivers - elinux.org