Forgot your password?
typodupeerror
Linux

Moving the Linux Kernel Console To User-Space 311

Posted by Soulskill
from the cuddly-console-seeks-loving-home dept.
jones_supa sends this quote from Phoronix: "David Herrmann has provided an update on his ambitious initiative to kill off the Linux kernel console. Herrmann has long been working on making the Linux kernel CONFIG_VT option unnecessary for providing a Linux console by punting it off to user-space. The Linux kernel VT console hasn't been changed much in the past two decades and Herrmann is hoping to see it replaced with a user-space solution he's been developing that would allow for multi-seat support, a hardware-accelerated console, full internalization, and other features."
This discussion has been archived. No new comments can be posted.

Moving the Linux Kernel Console To User-Space

Comments Filter:
  • Re:why? (Score:5, Informative)

    by Anonymous Coward on Friday February 08, 2013 @11:27AM (#42832423)

    The idea is to replace a kernel functionality with few features and several crucial limitations with a user space solution that is fully-fledged. The fully-fledged solution is not what you want to have inside the kernel, therefore taking the console to user space.

    The need for this arose primarily with the introduction of kernel mode setting etc. Before these advances, the console would somewhat be lame by definition. Now it is much more viable to have a nice console even without a windowing system and that opens new applications to a user-space console.

    E.g. look at Terminology. It is a virtual terminal emulator from the Enlightenment guys, built on the EFL core libraries. It works with David Herrmanns patches, without X11 or any display server!
    http://www.youtube.com/watch?v=AD-BJThtNnc (here run within X)

    Compare this to the basic kernel console. It could replace it if David's work gets through.

  • Wrong Analogy (Score:3, Informative)

    by Anonymous Coward on Friday February 08, 2013 @11:45AM (#42832663)

    Good troll, but the better analogy would be car steering wheels haven't changed in decades. They're all round and don't come in many colors or properly support knee control. So, I want to move them into the back seat so they don't get in the way.

  • by Anonymous Coward on Friday February 08, 2013 @11:50AM (#42832735)

    When you are on the X console, all keys are handled by X, including the Ctrl-Alt-F1 (that's why if you lock up X badly, even Ctrl-Alt-F1 won't work, although you may still be able to remotely log in and fix things; assuming you have sshd or something equivalent running, of course). However switching back to X11 with Ctrl-Alt-F7 (or whereever your current X session is) is handled by the console.

  • by poizan42 (1689384) on Friday February 08, 2013 @12:15PM (#42833093)
    That is why you have Ctrl+Alt+SysRq+R ( http://en.wikipedia.org/wiki/Magic_SysRq_key [wikipedia.org] )
  • Re:Unneeded (Score:1, Informative)

    by Anonymous Coward on Friday February 08, 2013 @12:22PM (#42833219)

    /dev/ttyS0 isn't going anywhere.

  • by ultrasawblade (2105922) on Friday February 08, 2013 @12:27PM (#42833289)

    then you aren't really using a "failsafe" console. Even Windows has this with it's "Special Administration Console" / "Emergency Management Services."

    When I was building custom kernels for my server I would remove the VT support. Pure serial.

    So I don't care. Sounds good from a design standpoint. Should have the least in the kernel possible - simple = robust.

  • by ultrasawblade (2105922) on Friday February 08, 2013 @12:28PM (#42833313)

    The VT console has been "hardware accelerated" under x86/VGA for years. You don't think it's actually copying memory line for line when it needs to scroll the screen, do you? No, it's incrementing the VGA register that tells it what memory address to start drawing text from.

  • by Anonymous Coward on Friday February 08, 2013 @12:34PM (#42833381)

    How about a more informative introduction [wordpress.com]? All of the concerns raised have been addressed. If only people would avail themselves of a more complete understanding before vehemently opposing any sort of change, the world would be a much better place. If not though, the least you could do is keep quiet if you refuse to inform yourself.

    This isn't change for the sake of change; the present VT system is seriously lacking, and has been since its inception.

  • by psmears (629712) on Friday February 08, 2013 @01:02PM (#42833809)

    "handles keyboards badly": Does it drop keystrokes? If it doesn't do that, there's absolutely no rational basis for this complaint. Maybe baby wants his arrow keys, or non-ASCII character set? Screw that. This is a console. Use vi commands like a grownup.

    Maybe the user wants to get the ">" symbol on pressing the ">" key. Which is different on different keyboard layouts. Doesn't seem too unreasonable...

    And you don't need your umlauts and accents. The commands are all composed of ASCII characters.

    ... but the filenames aren't. When you're trying to free up vital disk space by deleting hügë_fïlë.jpg, wouldn't it be handy to be able to type its filename?

  • by Animats (122034) on Friday February 08, 2013 @03:25PM (#42835803) Homepage

    QNX, the real-time message passing operating system now owned by Blackberry, does all "console" handling in user space. They've done that for years. That's because, in the embedded world, you can't assume the target machine has a console, or even a serial port.

    When you build a QNX boot image for an embedded system, you can add any programs you want to be available as soon as the system boots. All device drivers are in user space, so that's how the initial set of drivers gets loaded. You can also load applications that way. Having a file system is optional. If necessary, all software can be in a ROM. This allows scaling down to small embedded devices.

    A serial console program is available, and is loaded into most systems that have a serial port. There are other options for systems that don't have a serial port, like connecting it to a network.

    There's also a system logger. It's common to have the system logger log to some network destination elsewhere, so problems out at Pumping Station 42 are reported to the control center far away.

    Linux has tried to emulate this architecture. More drivers are in user space. But in Linux that was an afterthought, and it shows.

I use technology in order to hate it more properly. -- Nam June Paik

Working...