1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Moving Linux Kernel Drivers To User-Space? Nope.

Linux Kernel

Published on 24 February 2012 12:30 PM EST
Written by Michael Larabel in Linux Kernel
39 Comments

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."

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Articles & Reviews
  1. Khronos Group Announces Vulkan, OpenCL 2.1, SPIR-V
  2. Samsung 850 EVO SSD Linux Benchmarks
  3. Kubuntu 15.04 Is Turning Out Quite Nice, Good Way To Try Out The Latest KDE
  4. 5-Way Linux Distribution Comparison On The Core i3 NUC
  5. OCZ ARC 100 Linux SSD Benchmarks
  6. Lenovo ThinkPad X1 Carbon Works Great As A Linux Ultrabook
Latest Linux News
  1. Samba 4.2 Brings Transparent File Compression & Clustering Support
  2. Mutter 3.15.91 Fixes Wayland Nested Compositor Mode, Pointer Constraining
  3. NVIDIA Opens Up CPU-Based PhysX Code
  4. SPIR-V In GCC Is Already Being Talked About
  5. Valve Launches SteamOS Sale, Confirms A Lot Of New Linux Games
  6. Ubuntu Cloud Switches Over To Using Systemd By Default
  7. Xfce 4.12 Might Make It For Fedora 22
  8. Pictures Of The Near Production Ready Ubuntu Tablet
  9. OpenVG Support Stripped From Gallium3D
  10. Mozilla Is Getting Excited About WebGL 2
Most Viewed News This Week
  1. More Proof That Allwinner Is Violating The GPL
  2. The Tremendous Features Of Fedora 22
  3. Krita 2.9 Released, Their Biggest Release Ever
  4. Confirmed: Vulkan Is The Next-Gen Graphics API
  5. A Single UEFI Executable With The Linux Kernel, Initrd & Command Line
  6. Xfce 4.12 Released After Nearly Three Years Of Work
  7. 8cc: A Small C11 Compiler
  8. LLVM 3.6 & Clang 3.6 Deliver More Features, Complete C++14 Support