terminology poll: what would you call the part of the operating system that is responsible for managing the pseudoterminal device? (handling ioctls, tracking the foreground process, remembering the terminal window size, turning `Ctrl+C` into a SIGTERM, handling `Ctrl+S` and `Ctrl+W`, etc)

(also open to hearing that you think that it's not just one thing or anything else really)

line discipline
4.7%
terminal driver
51.4%
what?
39.6%
other
4.2%
Poll ended at .

@b0rk I feel it's not just one thing but that's because I know too much about the Unix underpinnings, where it is (at least traditionally) a combination of a kernel driver (allocation, ioctls, etc) and the line discipline (handling Ctrl characters and their actions).

(In practice I think there is some combination of a generic tty driver and then specific drivers for eg ptys, serial terminals, the video console, etc. Line disciplines are generic across all of them.)

@cks hm yeah in Linux it seems like there's a bunch of generic code and then specific subfolders for "vt", "serial", "serdev", "ipwireless", and "hvc" (not sure what the last 3 are)

https://github.com/torvalds/linux/tree/master/drivers/tty

linux/drivers/tty at master · torvalds/linux

Linux kernel source tree. Contribute to torvalds/linux development by creating an account on GitHub.

GitHub
@b0rk @cks hvc is for paravirtualized consoles provided by a hypervisor like kvm, xen or IBM's PR/SM on Z