千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > TTY是什么?

TTY是什么?

來(lái)源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-10-14 20:39:31 1697287171

一、TTY的起源

TTY較早出現(xiàn)在電傳打字機(jī)(Teletypewriter)上,它是一種可以通過(guò)電信網(wǎng)絡(luò)進(jìn)行通信的打字機(jī)。20世紀(jì)50年代和60年代,計(jì)算機(jī)的交互方式主要是通過(guò)終端設(shè)備進(jìn)行,而當(dāng)時(shí)常用的終端設(shè)備就是電傳打字機(jī)。在那個(gè)時(shí)代,計(jì)算機(jī)運(yùn)行的程序通常會(huì)產(chǎn)生一系列文本輸出,這些輸出需要通過(guò)終端設(shè)備將結(jié)果展示給用戶(hù),而用戶(hù)也可以通過(guò)鍵盤(pán)輸入命令和數(shù)據(jù)給計(jì)算機(jī)。

隨著計(jì)算機(jī)的發(fā)展,出現(xiàn)了更多種類(lèi)的終端設(shè)備,例如打印機(jī)和顯示器。為了使不同類(lèi)型的終端設(shè)備都能與計(jì)算機(jī)進(jìn)行通信,TTY 接口應(yīng)運(yùn)而生。TTY定義了一組標(biāo)準(zhǔn)化的通信規(guī)則和命令,使得計(jì)算機(jī)能夠理解和處理不同終端設(shè)備的輸入輸出。

二、TTY的原理

TTY的原理是通過(guò)輸入和輸出流來(lái)實(shí)現(xiàn)與終端設(shè)備的通信。在計(jì)算機(jī)操作系統(tǒng)中,每個(gè)終端設(shè)備都對(duì)應(yīng)一個(gè)TTY設(shè)備文件,通常位于”/dev/tty”目錄下。當(dāng)用戶(hù)在終端設(shè)備上輸入命令時(shí),TTY設(shè)備會(huì)將輸入的數(shù)據(jù)傳輸給計(jì)算機(jī)的輸入流;而當(dāng)計(jì)算機(jī)有輸出數(shù)據(jù)時(shí),TTY設(shè)備會(huì)從輸出流讀取數(shù)據(jù)并將其顯示在終端設(shè)備上。

TTY接口的工作方式是基于字符流的,它不處理二進(jìn)制數(shù)據(jù),而是以字符為單位進(jìn)行傳輸。當(dāng)用戶(hù)在終端上輸入字符時(shí),TTY設(shè)備會(huì)將字符逐個(gè)發(fā)送給計(jì)算機(jī)的輸入流。計(jì)算機(jī)收到字符后,可以對(duì)其進(jìn)行處理,例如執(zhí)行相應(yīng)的命令或?qū)⒆址麑?xiě)入文件。同樣地,當(dāng)計(jì)算機(jī)有輸出數(shù)據(jù)時(shí),TTY設(shè)備會(huì)從輸出流讀取字符,并逐個(gè)顯示在終端設(shè)備上,讓用戶(hù)能夠看到計(jì)算機(jī)的響應(yīng)結(jié)果。

TTY接口還支持特殊的控制字符和命令,用于處理終端設(shè)備的狀態(tài)和行為。例如,Ctrl+C 可以用于中斷當(dāng)前正在執(zhí)行的程序,Ctrl+D可以表示輸入的結(jié)束。

三、TTY在現(xiàn)代計(jì)算機(jī)中的應(yīng)用

雖然,現(xiàn)代計(jì)算機(jī)不再使用物理的電傳打字機(jī)和終端設(shè)備,但TTY接口仍然存在于操作系統(tǒng)中,并且在某些場(chǎng)景下仍然發(fā)揮著重要作用。

虛擬終端:現(xiàn)代操作系統(tǒng)支持虛擬終端功能,允許用戶(hù)在同一臺(tái)計(jì)算機(jī)上同時(shí)打開(kāi)多個(gè)虛擬終端。每個(gè)虛擬終端都對(duì)應(yīng)著一個(gè)TTY 設(shè)備,用戶(hù)可以通過(guò)切換虛擬終端來(lái)在不同的命令行界面之間進(jìn)行操作。這在服務(wù)器管理和系統(tǒng)調(diào)試中非常有用。終端仿真器:終端仿真器是模擬物理終端設(shè)備的軟件,它們?cè)试S計(jì)算機(jī)通過(guò)網(wǎng)絡(luò)連接與遠(yuǎn)程設(shè)備進(jìn)行通信。終端仿真器通常使用TTY 接口與遠(yuǎn)程設(shè)備進(jìn)行交互,使得計(jì)算機(jī)和遠(yuǎn)程設(shè)備能夠進(jìn)行命令行交互??刂婆_(tái)輸出:在操作系統(tǒng)啟動(dòng)階段,計(jì)算機(jī)通常會(huì)將啟動(dòng)信息和錯(cuò)誤信息輸出到控制臺(tái),這些輸出是通過(guò)TTY設(shè)備實(shí)現(xiàn)的。控制臺(tái)輸出對(duì)于系統(tǒng)的啟動(dòng)和故障排查至關(guān)重要。進(jìn)程通信:在Unix/Linux 系統(tǒng)中,TTY接口也用于進(jìn)程之間的通信。例如,通過(guò)管道(pipe)和終端設(shè)備相連,一個(gè)進(jìn)程的輸出可以作為另一個(gè)進(jìn)程的輸入,從而實(shí)現(xiàn)進(jìn)程間的數(shù)據(jù)傳遞。

綜上所述,TTY作為計(jì)算機(jī)與終端設(shè)備之間的標(biāo)準(zhǔn)化通信接口,在計(jì)算機(jī)科學(xué)和信息技術(shù)領(lǐng)域發(fā)揮著重要的作用。雖然,如今的計(jì)算機(jī)已經(jīng)邁入了全新的時(shí)代,但值得銘記和珍視的是,TTY為計(jì)算機(jī)技術(shù)的進(jìn)步和發(fā)展做出了重要貢獻(xiàn),它是計(jì)算機(jī)歷史中不可忽視的一部分。

延伸閱讀:終端仿真是什么

終端仿真是一種模擬物理終端設(shè)備的軟件,它允許計(jì)算機(jī)通過(guò)網(wǎng)絡(luò)連接與遠(yuǎn)程設(shè)備進(jìn)行通信。終端仿真器使用網(wǎng)絡(luò)協(xié)議來(lái)傳輸數(shù)據(jù),并在本地設(shè)備上模擬終端設(shè)備的輸入和輸出。用戶(hù)可以通過(guò)終端仿真器實(shí)現(xiàn)遠(yuǎn)程命令行交互,就像直接在計(jì)算機(jī)本地進(jìn)行操作一樣。

終端仿真器的原理是通過(guò)TTY 接口與遠(yuǎn)程設(shè)備進(jìn)行通信。在計(jì)算機(jī)操作系統(tǒng)中,終端仿真器通常會(huì)創(chuàng)建一個(gè)虛擬TTY設(shè)備,然后將用戶(hù)輸入的命令傳輸給遠(yuǎn)程設(shè)備,接收遠(yuǎn)程設(shè)備的輸出并顯示在本地終端上。這樣,用戶(hù)就可以像使用本地終端一樣使用遠(yuǎn)程設(shè)備。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專(zhuān)屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
什么是setnx、Redlock、Redisson?

一、setnxsetnx是Redis中的一個(gè)命令,用于將鍵值對(duì)(key-value)設(shè)置到Redis數(shù)據(jù)庫(kù)中。其中,setnx表示”Set if Not Exists”,即當(dāng)...詳情>>

2023-10-14 22:22:53
單片機(jī)、ARM、FPGA 嵌入式這些有什么區(qū)別?

一、體系結(jié)構(gòu)單片機(jī):?jiǎn)纹瑱C(jī)是一種集成了CPU、存儲(chǔ)器、IO端口和定時(shí)器等功能的微型計(jì)算機(jī)系統(tǒng),通常采用單體架構(gòu)。ARM:ARM是一種處理器架構(gòu),...詳情>>

2023-10-14 22:00:28
為什么java中序列化的serialVersionUID總是無(wú)意義的?

一、類(lèi)的版本控制serialVersionUID是Java中用于序列化的版本號(hào),用于標(biāo)識(shí)序列化類(lèi)的版本。當(dāng)一個(gè)類(lèi)被序列化時(shí),會(huì)將該類(lèi)的serialVersionUID寫(xiě)入...詳情>>

2023-10-14 21:50:59
JavaScript 的 for…in、for…of和forEach有什么區(qū)別?

一、遍歷對(duì)象和數(shù)組for…in:用于遍歷對(duì)象的可枚舉屬性,無(wú)法直接遍歷數(shù)組。for…of:用于遍歷可迭代對(duì)象,包括數(shù)組、字符串、Set、M...詳情>>

2023-10-14 21:28:50
服務(wù)器租用、服務(wù)器托管兩者之間有什么區(qū)別?

一、服務(wù)器所有權(quán)服務(wù)器租用:在服務(wù)器租用模式下,服務(wù)器的所有權(quán)歸服務(wù)提供商或數(shù)據(jù)中心,用戶(hù)只是租用服務(wù)器的使用權(quán)。服務(wù)器托管:在服務(wù)器...詳情>>

2023-10-14 21:19:38
快速通道