有人可以用一种易于理解的方式解释一下 UNIX 和类 UNIX 系统中控制终端的概念吗?与会话有关吗?如果是,那么如何?
答案1
有一个进程组领导者 - 有点像头进程 - 拥有终端 /dev/tty。进程组可以是一个或多个进程。
stty 命令更改并显示终端设置。如果您确实要认真使用 UNIX,请考虑找到 Stevens 的《UNIX 环境中的高级编程》的副本。航站楼里有很多 20 世纪 70 年代的沉重行李。你马上就会发现这一点。除了 UNIX 系统控制台等特殊设置之外,大多数奇怪的设置都可以忽略。
答案2
终端是文件系统中的一个文件,用户(通常)通过它与非 GUI 程序进行交互。
当您从远程或本地 shell 运行程序时,它会与您的终端关联,除非您或它重定向其输入或输出,否则会从该终端读取或写入该程序。
当终端关闭时,其中运行的程序会收到信号,以便它们可以退出或自行分离。
关于它与“会话”的连接:如果您指的是 GUI 会话,那么它与它没有直接关系,除了一些 UNIX 和类 UNIX 系统在其自己的终端下运行 GUI 的事实之外。