Moving Linux Kernel Drivers To User-Space? Nope.

Posted by Michael Larabel on February 24, 2012

Brought up on the Linux kernel mailing list this week was a short-lived discussion whether Linux device drivers should be moved from kernel-space to user-space in an attempt to provide "greater security and robustness" of Linux systems.

Jidong Xiao asked on Wednesday, Can we move device drivers into user-space? It's been a matter that's been brought up before in past years and he cited an earlier research paper on "Tolerating Malicious Device Drivers in Linux." Jidong's reasoning for bringing up the topic again is that, "Advantage: Since most of kernel bugs are caused by device drivers issues, moving device drivers into user space can reduce the impact of device driver bugs. From security perspective, the system can be more secure and robust if most device drivers are working in user space. Disadvantage: At least, existing techniques as well as the above paper showed a relatively high overhead."

Among those responding to this controversial topic were Greg Kroah-Hartman, who chimed in this morning.
Feel free to create patches to do so, and handle all of the userspace changes needed in order to implement this.

I think you haven't thought through the true reason we have device drivers, and why Linux isn't a microkernel...

And I'd take exception to your "advantage:" line above, I don't believe that is true at all.

Best of luck with your work,

greg k-h

Moving Linux device drivers to user-space (or coming up with a stable Linux API/ABI) is fun to talk about, but of course is unlikely to move forward. Greg additionally responded, "Please note, that one of the strengths of Linux is that we CAN change driver code, and we do, which makes implementations like this nice from an academic point of view, but unrealistic from a real-world point of view."

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  2. Intel Linux OpenGL Driver Leading Over Apple OS X
  3. The Cost Of Ubuntu Disk Encryption
  4. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
Latest Linux News
  1. A New X.Org-Free Wayland LiveCD Released
  2. Unity 8, Mir Made Progress This Week On Features
  3. LLVM Clang 3.3 RC2 Is Ready For Testing
  4. AMD RadeonSI Gallium3D Begins Simple CL Demos
  5. Intel Shows Off GNOME3-Based Tizen Shell
  6. Linux Desktop Security Could Be A Whole Lot Better
  7. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  8. New NVIDIA Linux Driver Supports The GeForce GTX 780
  9. Chrome 28 To Offer More Speed Improvements
  10. Digia Announces "Boot To Qt" Project
  11. X.Org Libraries Hit By Round Of Security Issues
Latest Forum Talk
  1. Linux's "Ondemand" Governor Is No...
  2. A New X.Org-Free Wayland LiveCD Released
  3. Microsoft Releases Skype For Linux 4.2, Has...
  4. Unity 8, Mir Made Progress This Week On Features
  5. Linux Desktop Security Could Be A Whole Lot Better
  6. AMD RadeonSI Gallium3D Begins Simple CL Demos
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite