Noob Introduction to Kernel Mode Settings and Rootless X-Server

view full story

http://feedproxy.google.com – In the past 2 months, there has been much hype over Kernel Mode Settings (KMS) and Rootless X-Server. The inclusion of KMS into kernel version 2.6.29 is one of the major move towards KMS for enabling Rootless X-Server with various graphics hardware. So what is KMS and Rootless X-Server and why the average linux user should be concerned? KMS addresses the handling of video hardware which in turn displays the nice graphical user interface to the user. As its name suggests, means the kernel will set up the display’s resolution and depth mode (eg 800×600x32bits). Currently, the graphical interface is generated by the X.org windows system. A large portion of the code in X-Server requires root privileges.¬† This is not considered much of an issue in the pre-internet boom days, since some control can be enforced as to who can physically use the system. However, in the current well-connected world, every computer is connected to the internet and X-Server having certain functions such as remote login, exposes it to the internet and literally everybody out there. X-Server having superuser root privileges means the system may be potentially open to backdoor threats from the internet. Before KMS, X-Server was solely in charge of interfacing with the graphics hardware directly in user space, which is why it requires root privileges. With KMS, it now allows X-Server to interface with the graphical hardware like a somewhat standard device without requiring X-Server to probe and initiate the graphics hardware. This means that X-Server will not require root privileges and be run in kernel space than in user space. Besides addressing this long known security problem, some nice UI features are also included. Switching to VT (Virtual Terminal) mode via “Ctrl-Alt-F1″ doesn’t change to video resolution to 80×25. The depth and resolution of the desktop will remain the same when switching (ie no more flickering). Suspend and resume issues will be improved as the kernel does not need to wait for external drivers to wake the video card. KMS will also allow errors such as fatal in the kernel to be displayed in X-Server. Prior to implemention of KMS, one has to enter into terminal mode via VT or terminal emulator such as xterm, use command “dmesg” to see kernel failures and faults. Currently Intel GMA graphics card are supported for KMS in kernel 2.6.29. ATI graphics card support will be included in upcoming kernel 2.6.31. Nvidia graphics card support are being developed by reverse engineering Nvidia’s proprietary’s drivers for linux, aka the Nouveau Project. Information Sources: LWN.net : Rootless X Phoronix : A Root-less X Server Nears Reality Phoronix : The State of Kernel Mode Settings Wikipedia : Mode Settings OSNews : A Preview of Kernel-Based Mode-Setting (General)