Linux
TTY = ?, 如何讀取輸入
當列出正在執行的程序時,我可以看到“chrome”、“notepad”、“intellij”、“sublime editor”等幾個程序都有“tty =?”
- 那麼他們如何能夠從鍵盤讀取輸入呢?
- TTY 是否總是與終端/cli 相關?
XWindows 應用程序從 X Server 接收鍵盤和滑鼠輸入,並通過 X Server 顯示內容。這些應用程序具有控制終端(tty 列)是不常見的,除非它們是從具有控制終端的命令行啟動的。
實際上只有少數 XWindows 應用程序需要控制終端或輸入或輸出重定向。其中有
xclip
,xev
,xprop
,xwininfo
,xkill
,xlsfonts
,xlsclients
和xlsatoms
。其中,只有一個顯示視窗,三個可以臨時更改游標。實際上,XWindows 應用程序託管 tty 更為常見。
xterm
並且每個其他終端應用程序都為 shell 或在其“內部”執行的其他程序提供 tty。最後,請注意 X 伺服器本身通常(至少在 Linux 中)有一個與之關聯的終端。這更多是為了讓它更適合虛擬控制台而不是其他任何東西,但它確實允許鍵盤和滑鼠在 X 伺服器和其他虛擬控制台之間切換。