I wonder where this sentiment that hardware specific stuff doesn't belong
into the kernel comes from. I thought one of the kernel's main purposes
was to abstract the hardware and hide it from user space. Why then put
hardware specific stuff into user space libraries instead of the kernel?