How Terminals Work

49 pointsposted 4 days ago
by gnodar

6 Comments

Cr8

3 days ago

nitpick - EOF is not a signal, it just flushes the current line content without needing a newline in cooked mode and doing this on an empty line results in a 0 byte read(), which most apps interpret as EOF

and the terminal emulator is not itself sending the signals, its always just sending raw characters to the pty device - it is the kernel's pty layer sending a signal if the right flags are on and doing line buffering, local echo, etc. and signals go to the foreground process group (which is set by the shell making a tcsetpgrp syscall)

user

3 days ago

[deleted]

neeewbee

3 days ago

Thanks for this great work, very helpful. Today I learned!

g-b-r

3 days ago

Wow, this seems so good !!!