KMSCON Is Getting Ready To Kick The Kernel Console

Posted by Michael Larabel on August 18, 2012

KMSCON is turning out to be a successful and interesting project with high ambitions of being the leading terminal emulator for Linux while running from user-space.

Back in March was when I first talked about KMSCON as a DRM-based terminal emulator when the developer, David Herrmann, was inspired by Jesse Barnes' guide to hacking with EGL and KMS.

KMSCON is built upon the Linux kernel APIs for kernel mode-setting provided by the Direct Rendering Manager drivers for frame-buffer access to all displays as well as hot-plugging support with the DRM drivers through udev.

KMSCON runs from user-space and draws a VT220/VT102-compatible terminal emulator as a replacement to the kernel console or xterm. KMSCON's leveraging of the DRM/KMS APIs and udev provides full hot-plug support along with automatically detecting all displays. The open-source terminal emulator is also multi-seat capable and its only hard build dependency is on libudev -- it doesn't need an X.Org Server, Wayland, DirectFB, or anything else. For better font rendering, there is an optional Pango font renderer.

Another optional dependency to KMSCON is Mesa, which when built with DRM EGL support can provide hardware-accelerated console rendering. Acceleration is done via OpenGL ES 2.0 and EGL with KMSCON for hardware acceleration and anti-aliased fonts.

Other features of KMSCON include full internationalization support (full Unicode/UTF8 compatibility), controllable monitor/console mapping, full VT220 to VT510 support, and that this user-space program doesn't need a Linux kernel built with CONFIG_VT.

While some believe strong that the console belongs within the kernel, KMSCON is a very interesting and modern project worth watching and trying out. The developer of KMSCON also wrote the frame-buffer log kernel driver as part of his CONFIG_VT killing initiative for Linux.

KMSCON, while still under development, is being housed at GitHub. David Herrmann wrote a new blog post recently with more details on his interesting project.

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. The Cost Of Ubuntu Disk Encryption
  2. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  3. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  4. F2FS File-System Shows Regressions On Linux 3.10
Latest Linux News
  1. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  2. Handbrake 0.9.9 Supports OpenCL Offloading
  3. Freedreno Gallium3D Now Banging The Adreno A3XX
  4. Jolla Announces Their First Phone
  5. Mageia 3 Released, Still Using Legacy GRUB
  6. NetBSD 6.1 Brings In More Features
  7. Using Six Monitors With AMD's Open-Source Linux Driver
  8. Benchmarking The Intel P-State, CPUfreq Changes
  9. FreeBSD Still Working On Next-Gen Package Manager
  10. DNF Still Advancing As Experimental Yum For Fedora
  11. Logitech Begins Supporting Linux Users
Latest Forum Talk
  1. FreeBSD Still Working On Next-Gen Package Manager
  2. Modern Intel Gallium3D Driver Still Being Toyed...
  3. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  4. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  5. Benchmarking The Intel P-State, CPUfreq Changes
  6. Jolla Announces Their First Phone
  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