Ctrl-S 有什麼意義?

Ctrl-S 有什麼意義?

Ctrl+S停止到終端的所有輸出,可以使用Ctrl+重新啟動Q

但是,為什麼Ctrl+S首先存在呢?透過設定該控制序列試圖解決什麼問題?

答案1

早在計算機出現之前,就有電傳打字機(又稱電傳打字機,又稱電傳打字機)。將它們視為與電報大致相同的技術,但附加了某種類型的鍵盤和某種類型的印表機。

由於電傳打字機在計算機首次製造時就已經存在,並且由於當時的計算機有房間大小,因此電傳打字機成為第一台計算機的便捷用戶界面 - 輸入命令,點擊發送按鈕,等待一段時間,然後命令的輸出被列印到您面前的一張紙上。

軟體流量控制起源於這個時代 - 例如,如果印表機無法像電傳打字機接收資料一樣快地列印,則電傳打字機可以向遠端發送 XOFF 流控制命令 ( Ctrl+ S),表示“現在停止傳輸”,然後可以向遠端發送XON 流量控制命令 ( Ctrl+ Q),表示「我已趕上,請繼續」。

這種用法在 Unix 中仍然存在,因為現代終端模擬器正在模擬物理終端(例如VT100)它們本身(在某些方面)模仿電傳打字機。

答案2

這是 VT100 終端機及類似終端時代的控製字元。這些終端上的滾動功能(如果有的話)有限,從 CTRL-S 開始,您可以凍結輸出以查看當前螢幕上的內容,而不會被註銷。

您在現代終端中看到的大多數內容都是為了模擬那些舊的終端系統而設定的。

答案3

順便說一句,如果您在螢幕上列出很長的輸出,那麼您的閱讀速度可能不一定像輸出輸出的電腦一樣快。在貓(或活動的尾巴)上使用 CTRL-S/CTRL-Q 對於停止和恢復輸出非常有用。

答案4

在帶有紙帶閱讀器的古代電傳打字機上,收到 Control-Q 將打開紙帶閱讀器並開始從紙帶上發送字符,就像在鍵盤上輸入的一樣。 Control-S 將關閉紙帶讀取器。如果人們認為電傳打字機最初的目的不是打印來自計算機的數據,而是打印來自其他電傳打字機的數據,那麼“關閉紙帶閱讀器”可以被解釋為類似於“請求另一端停止傳輸”,這一點應該很清楚。

順便說一句,control-R 將打開紙帶打孔器,這樣電傳打字機接收到的每個字元(或者,如果啟用了本地回顯,則在鍵盤上鍵入)也將被打到紙帶上; control-T 將關閉紙帶打孔器。然而,與 control-S 和 control-Q 相關的操作不同,這些操作似乎沒有現代的等效操作。

另外,control-Q/R/S/T 的原始名稱是 DC1/DC2/DC3/DC4(「裝置控制 1」等)。未指定的操作,但人們用DC1 和DC3 做的最常見的事情是控制紙帶閱讀器。

相關內容