青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 297,  comments - 15,  trackbacks - 0
基本概念:

1> tty(終端設備的統稱):
tty一詞源于Teletypes,或者teletypewriters,原來指的是電傳打字機,是通過串行線用打印機鍵盤通過閱讀和發送信息的東西,后來這東西被鍵盤與顯示器取代,所以現在叫終端比較合適。
終端是一種字符型設備,它有多種類型,通常使用tty來簡稱各種類型的終端設備。


2> pty(虛擬終端):
但是如果我們遠程telnet到主機或使用xterm時不也需要一個終端交互么?是的,這就是虛擬終端pty(pseudo-tty)


3> pts/ptmx(pts/ptmx結合使用,進而實現pty):
pts(pseudo-terminal slave)是pty的實現方法,與ptmx(pseudo-terminal master)配合使用實現pty。

Linux終端:

在Linux系統的設備特殊文件目錄/dev/下,終端特殊設備文件一般有以下幾種:
1、串行端口終端(/dev/ttySn)
串行端口終端(Serial Port Terminal)是使用計算機串行端口連接的終端設備。計算機把每個串行端口都看作是一個字符設備。有段時間這些串行端口設備通常被稱為終端設備,因為那時它的最大用途就是用來連接終端。這些串行端口所對應的設備名稱是/dev/tts/0(或/dev/ttyS0), /dev/tts/1(或/dev/ttyS1)等,設備號分別是(4,0), (4,1)等,分別對應于DOS系統下的COM1、COM2等。若要向一個端口發送數據,可以在命令行上把標準輸出重定向到這些特殊文件名上即可。例如,在命令行提示符下鍵入:echo test > /dev/ttyS1會把單詞”test”發送到連接在ttyS1(COM2)端口的設備上。可接串口來實驗。

2、偽終端(/dev/pty/)
偽終端(Pseudo Terminal)是成對的邏輯終端設備(即master和slave設備, 對master的操作會反映到slave上)。
例如/dev/ptyp3和/dev/ttyp3(或者在設備文件系統中分別是/dev/pty/m3和 /dev/pty/s3)。它們與實際物理設備并不直接相關。如果一個程序把ptyp3(master設備)看作是一個串行端口設備,則它對該端口的讀/ 寫操作會反映在該邏輯終端設備對應的另一個ttyp3(slave設備)上面。而ttyp3則是另一個程序用于讀寫操作的邏輯設備。

這樣,兩個程序就可以通過這種邏輯設備進行互相交流,而其中一個使用ttyp3的程序則認為自己正在與一個串行端口進行通信。這很象是邏輯設備對之間的管道操作。對于ttyp3(s3),任何設計成使用一個串行端口設備的程序都可以使用該邏輯設備。但對于使用ptyp3的程序,則需要專門設計來使用 ptyp3(m3)邏輯設備。

例如,如果某人在網上使用telnet程序連接到你的計算機上,則telnet程序就可能會開始連接到設備 ptyp2(m2)上(一個偽終端端口上)。此時一個getty程序就應該運行在對應的ttyp2(s2)端口上。當telnet從遠端獲取了一個字符時,該字符就會通過m2、s2傳遞給 getty程序,而getty程序就會通過s2、m2和telnet程序往網絡上返回”login:”字符串信息。這樣,登錄程序與telnet程序就通過“偽終端”進行通信。通過使用適當的軟件,就可以把兩個甚至多個偽終端設備連接到同一個物理串行端口上。

在使用設備文件系統 (device filesystem)之前,為了得到大量的偽終端設備特殊文件,使用了比較復雜的文件名命名方式。因為只存在16個ttyp(ttyp0—ttypf) 的設備文件,為了得到更多的邏輯設備對,就使用了象q、r、s等字符來代替p。例如,ttys8和ptys8就是一個偽終端設備對。不過這種命名方式目前仍然在RedHat等Linux系統中使用著。

但Linux系統上的Unix98并不使用上述方法,而使用了”pty master”方式,例如/dev/ptm3。它的對應端則會被自動地創建成/dev/pts/3。這樣就可以在需要時提供一個pty偽終端。目錄 /dev/pts是一個類型為devpts的文件系統,并且可以在被加載文件系統列表中看到。雖然“文件”/dev/pts/3看上去是設備文件系統中的一項,但其實它完全是一種不同的文件系統。
即: TELNET ---> TTYP3(S3: slave) ---> PTYP3(M3: master) ---> GETTY
=========================================================================
實驗:
1、在X下打開一個或N個終端窗口
2、#ls /dev/pt*
3、關閉這個X下的終端窗口,再次運行;比較兩次輸出信息就明白了。
在RHEL4環境下: 輸出為/dev/ptmx /dev/pts/1存在一(master)對多(slave)的情況
=========================================================================


3、控制終端(/dev/tty)
如果當前進程有控制終端(Controlling Terminal)的話,那么/dev/tty就是當前進程的控制終端的設備特殊文件。可以使用命令”ps –ax”來查看進程與哪個控制終端相連。對于你登錄的shell,/dev/tty就是你使用的終端,設備號是(5,0)。使用命令”tty”可以查看它具體對應哪個實際終端設備。/dev/tty有些類似于到實際所使用終端設備的一個聯接。


4、控制臺終端(/dev/ttyn, /dev/console)
在Linux 系統中,計算機顯示器通常被稱為控制臺終端 (Console)。它仿真了類型為Linux的一種終端(TERM=Linux),并且有一些設備特殊文件與之相關聯:tty0、tty1、tty2 等。當你在控制臺上登錄時,使用的是tty1。使用Alt+[F1—F6]組合鍵時,我們就可以切換到tty2、tty3等上面去。tty1–tty6等稱為虛擬終端,而tty0則是當前所使用虛擬終端的一個別名,系統所產生的信息會發送到該終端上。因此不管當前正在使用哪個虛擬終端,系統信息都會發送到控制臺終端上。你可以登錄到不同的虛擬終端上去,因而可以讓系統同時有幾個不同的會話期存在。只有系統或超級用戶root可以向 /dev/tty0進行寫操作 即下例:
1、# tty(查看當前TTY)
/dev/tty1
2、#echo "test tty0" > /dev/tty0
test tty0


5 虛擬終端(/dev/pts/n)
在Xwindows模式下的偽終端.


6 其它類型
Linux系統中還針對很多不同的字符設備存在有很多其它種類的終端設備特殊文件。例如針對ISDN設備的/dev/ttyIn終端設備等。這里不再贅述。


FAQ: 終端和控制臺

RROM:http://blog.footoo.org/?p=73
Posted on Tuesday, November 28th, 2006 by CLIFF

吳晉 (cliffwoo@gmail.com)
FoOTOo OpenSource Lab

由于在很多朋友對終端的概念一直不是很清楚,因此寫了這個FAQ,希望能夠幫助大家理解這些概念。不妥之處,還請大家來信指出。

Q:/dev/console 是什么?

A:/dev/console即控制臺,是與操作系統交互的設備,系統將一些信息直接輸出到控制臺上。目前只有在單用戶模式下,才允許用戶登錄控制臺。


Q:/dev/tty是什么?

A:tty設備包括虛擬控制臺,串口以及偽終端設備。
/dev/tty代表當前tty設備,在當前的終端中輸入 echo “hello” > /dev/tty ,都會直接顯示在當前的終端中。


Q:/dev/ttyS*是什么?

A:/dev/ttyS*是串行終端設備。


Q:/dev/pty*是什么?

A:/dev/pty*即偽終端,所謂偽終端是邏輯上的終端設備,多用于模擬終端程序。例如,我們在X Window下打開的終端,以及我們在Windows使用telnet 或ssh等方式登錄Linux主機,此時均在使用pty設備(準確的說應該pty從設備)。

Q:/dev/tty0與/dev/tty1 …/dev/tty63是什么?它們之間有什么區別?

A:/dev/tty0代表當前虛擬控制臺,而/dev/tty1等代表第一個虛擬控制臺,例如當使用ALT+F2進行切換時,系統的虛擬控制臺為/dev/tty2 ,當前的控制臺則指向/dev/tty2

Q:如何確定當前所在的終端(或控制臺)?

A:使用tty命令可以確定當前的終端或者控制臺。

Q:/dev/console是到/dev/tty0的符號鏈接嗎?

A: 目前的大多數文本中都稱/dev/console是到/dev/tty0的鏈接(包括《Linux內核源代碼情景分析》),但是這樣說是不確切的。根據內核文檔,在2.1.71之前,/dev/console根據不同系統的設定可以鏈接到/dev/tty0或者其他tty*上,在2.1.71版本之后則完全由內核控制。目前,只有在單用戶模式下可以登錄/dev/console(可以在單用戶模式下輸入tty命令進行確認)。

Q:/dev/tty0與/dev/fb*有什么區別?

A: 在Framebuffer設備沒有啟用的系統中,可以使用/dev/tty0訪問顯卡。

Q:關于終端和控制臺的區別可以參考哪些文本

A: 可以參考內核文檔中的 Documents/devices.txt 中關于”TERMINAL DEVICES” 的章節。另外,《Linux內核源代碼情景分析》的8.7節 以及《Operating Systems : Design and Implementation》中的3.9節(第3版中為3.8節)都對終端設備的概念和歷史做了很好的介紹。另外在《Modern Operating system》中也有對終端設備的介紹,由于與《Operating Systems : Design and Implementation》的作者相同,所以文本內容也大致相同。需要注意的一點是《Operating Systems : Design and Implementation》中將終端設備分為3類,而《Modern Operating system》將終端硬件設備分為2類,差別在于前者將 X Terminal作為一個類別。

PS:
   
只有2410的2.6才叫ttySAC0,9200等的還是叫ttyS0

轉自:
http://hi.baidu.com/mypleasure/blog/item/9cc95360ce0923da8cb10dfb.html

posted on 2009-12-07 23:01 chatler 閱讀(261) 評論(0)  編輯 收藏 引用 所屬分類: Linux_Coding
<2009年4月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

常用鏈接

留言簿(10)

隨筆分類(307)

隨筆檔案(297)

algorithm

Books_Free_Online

C++

database

Linux

Linux shell

linux socket

misce

  • cloudward
  • 感覺這個博客還是不錯,雖然做的東西和我不大相關,覺得看看還是有好處的

network

OSS

  • Google Android
  • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
  • os161 file list

overall

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲激情图片小说视频| 亚洲国产日韩欧美在线图片| 亚洲一二三四区| 欧美1区2区3区| 久久免费的精品国产v∧| 亚洲在线观看视频| 欧美亚洲第一页| 久久av一区二区| 欧美一区日韩一区| 美女日韩欧美| 亚洲日本久久| 一区二区高清| 欧美一区二区三区在| 久久精品一区二区三区四区| 欧美成人午夜激情视频| 国产精品高潮呻吟视频| 国产九区一区在线| 亚洲黄网站在线观看| 在线亚洲一区观看| 久久躁狠狠躁夜夜爽| 亚洲欧洲精品一区二区| 欧美一级精品大片| 欧美日韩卡一卡二| 国产亚洲午夜高清国产拍精品| 亚洲大片在线| 欧美精品精品一区| 国产精品亚洲综合色区韩国| 在线播放中文一区| 先锋影院在线亚洲| 亚洲高清中文字幕| 欧美一区二区三区久久精品| 欧美电影免费观看| 激情欧美国产欧美| 午夜国产不卡在线观看视频| 亚洲第一狼人社区| 亚洲综合二区| 影音先锋亚洲电影| 亚洲女人天堂成人av在线| 午夜精品一区二区三区电影天堂 | 9人人澡人人爽人人精品| 欧美一区二视频在线免费观看| 欧美精品久久99久久在免费线| 国产又爽又黄的激情精品视频| 一区二区三区免费看| 女人天堂亚洲aⅴ在线观看| 亚洲欧美另类国产| 亚洲人www| 久久久久国产一区二区| 国产精品视频999| 亚洲少妇自拍| 91久久精品国产91久久性色tv| 欧美一级网站| 91久久精品美女| 蜜臀99久久精品久久久久久软件 | 欧美区在线观看| 欧美一区观看| 国语自产精品视频在线看| 亚洲男女毛片无遮挡| 亚洲人成在线影院| 欧美xxxx在线观看| 亚洲电影免费观看高清完整版在线| 欧美综合第一页| 欧美日韩亚洲高清一区二区| 久久精品一区二区三区四区 | 国产日韩欧美综合精品| 亚洲综合成人婷婷小说| 亚洲小说欧美另类社区| 欧美日韩一区视频| 亚洲欧美精品一区| 亚洲影院在线观看| 亚洲手机在线| 国产一区二区三区久久悠悠色av | 欧美国产亚洲精品久久久8v| 快射av在线播放一区| 久久av最新网址| 亚洲乱码国产乱码精品精天堂| 欧美激情综合网| 亚洲一本大道在线| 午夜精品www| 在线观看91精品国产麻豆| 欧美成人精品福利| 欧美日韩不卡一区| 欧美一级大片在线观看| 久久久777| 一区二区成人精品| 先锋资源久久| 亚洲精品久久久久久一区二区| 亚洲精品国产精品国自产观看| 久久成人精品| 亚洲视频香蕉人妖| 午夜日韩在线| 久久久久久成人| 亚洲日本理论电影| 亚洲综合色噜噜狠狠| 永久555www成人免费| 亚洲九九精品| 好吊一区二区三区| 亚洲国产va精品久久久不卡综合| 欧美少妇一区| 免费亚洲一区二区| 国产精品毛片一区二区三区| 老司机久久99久久精品播放免费| 欧美gay视频激情| 久久影音先锋| 国产精品私房写真福利视频| 久久综合色88| 欧美视频二区36p| 乱中年女人伦av一区二区| 欧美日韩在线观看一区二区| 麻豆国产精品va在线观看不卡| 欧美日本高清一区| 久久婷婷丁香| 欧美亚州一区二区三区| 欧美国产一区二区在线观看 | aa级大片欧美三级| 国产欧美日韩一区二区三区| 亚洲人成网站777色婷婷| 亚洲电影天堂av| 鲁大师影院一区二区三区| 国产精品免费观看在线| 亚洲精品中文字| 亚洲精品国产欧美| 久久国产精品久久国产精品| 亚洲一区在线视频| 欧美日韩国产a| 91久久精品国产| 欧美韩国日本一区| 国产精品视频第一区| 日韩亚洲欧美在线观看| 亚洲激情成人| 欧美成人69av| 免费中文日韩| 亚洲国产精品第一区二区三区 | 亚洲国产高清一区二区三区| 狠狠爱www人成狠狠爱综合网 | 欧美日韩国产色综合一二三四 | 美女国产精品| 美国三级日本三级久久99| 一区二区三区精品久久久| 日韩视频一区二区在线观看| 欧美成黄导航| 亚洲精品中文字幕有码专区| 亚洲视频观看| 国产精品丝袜白浆摸在线| 欧美亚洲一区在线| 久久影视精品| 亚洲精品国产品国语在线app | 欧美亚洲系列| 久久久夜夜夜| 亚洲国产日韩欧美在线图片| 欧美日韩精品免费看| 一区二区三区欧美激情| 欧美日韩国产色综合一二三四| 亚洲精品视频在线播放| 99精品国产一区二区青青牛奶| 欧美日韩国产精品一区二区亚洲| 日韩视频在线观看| 香蕉久久夜色精品国产使用方法| 国产欧美日韩综合| 久久久久久综合| 亚洲激情午夜| 欧美一区二区三区四区在线| 狠狠色狠狠色综合日日91app| 另类天堂av| 一区二区三区日韩精品视频| 久久精品国产欧美亚洲人人爽| 狠狠色噜噜狠狠狠狠色吗综合| 欧美成人a∨高清免费观看| 亚洲视频在线一区| 国产伦精品一区二区三区| 欧美亚洲日本一区| 亚洲日本国产| 久久久久se| 99在线精品视频| 国内自拍一区| 欧美午夜电影一区| 久久久欧美精品sm网站| 日韩一二三在线视频播| 久久精品视频在线观看| 99re66热这里只有精品4| 国产一区二区三区久久悠悠色av| 欧美国产精品久久| 久久av红桃一区二区小说| 亚洲欧美日韩天堂一区二区| 久久免费视频这里只有精品| 一区二区三区久久| 亚洲日本一区二区| 欧美激情久久久| 久久成人羞羞网站| 在线中文字幕不卡| 亚洲人成高清| 欧美大色视频| 久久国产精品久久久久久久久久 | 久久精品五月| 在线亚洲免费| 99天天综合性| 亚洲美女区一区| 亚洲精品国产欧美| 亚洲大胆视频| 影音先锋久久精品|