歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix教程 >> Unix系統中字符終端的管理

Unix系統中字符終端的管理

日期:2017/2/27 17:42:36   编辑:Unix教程

  與字符終端管理有關的文件
  
  1:/etc/ttydefs,定義波特率和終端設置
  2:/usr/share/lib/terminfo,這是一個目錄,字符終端設備和打印機的描述數據庫
  3:/etc/saf,服務訪問工具(Service Access Facility)用於管理串口設備和其它服務的一個目錄.
  
  /etc/ttydefs
  此文件包含SAF端口監控ttymon要用到的終端信息,主要是波特率和終端設置.
  下面是我的/etc/ttydefs
  # more /etc/ttydefs
  # VERSION=1
  460800:460800 hupcl:460800 hupcl::307200
  307200:307200 hupcl:307200 hupcl::230400
  230400:230400 hupcl:230400 hupcl::153600
  153600:153600 hupcl:153600 hupcl::115200
  115200:115200 hupcl:115200 hupcl::76800
  ..
  ..
  
  文件的每一行都由分隔的五個部分組成,各部分含義如下:
  1:2:3:4:5
  
  1標號.通常是波特率
  2初始設置.此部分應為命令stty能接受的格式.
  3最終設置.此部分應為命令stty能接受的格式.
  4自動探測波特率標志.如果為'A',則自動探測.
  5下一個標號.
  
  /usr/share/lib/terminfo
  此目錄是各種終端設備和打印機的描述數據庫.在增加一個終端時,必須使用此目錄下已有的一個文件的名字作為終端類型.
  /usr/share/lib/terminfo下都是單個字符的子目錄,每個子目錄包含了以該子目錄名為首字符的所有終端類型或打印機類型的描述文件
  
  我的/usr/share/lib/terminfo/t
  # ls /usr/share/lib/terminfo/t
  總數 538
  -rw-r--r-- 3 root bin 1173 2002 4月 7 t10
  -rw-r--r-- 3 root bin 1173 2002 4月 7 t1061
  -rw-r--r-- 1 root bin 1166 2002 4月 7 t1061f
  -rw-r--r-- 2 root bin 1100 2002 4月 7 t16
  -rw-r--r-- 2 root bin 988 2002 4月 7 t3700
  -rw-r--r-- 1 root bin 1014 2002 4月 7 t3800
  -rw-r--r-- 1 root bin 991 2002 4月 7 t500
  -rw-r--r-- 1 root bin 1110 2002 4月 7 t88
  -rw-r--r-- 1 root bin 1147 2002 4月 7 t88-nr
  ..
  ..
  
  /etc/saf
  此目錄包含SAF(Service Access Facility)用於管理串口設備的一些配置和管理文件.
  
  1:/etc/saf/_sysconfig,系統配置文件.
  2:/etc/saf/_sactab.SAF命令sacadm使用的管理文件.
  
  另外,/var/saf是SAF用於存放日志文件的目錄
  
  增加或修改一個字符終端
  
  圖形用admintool
  
  字符服務訪問工具SAF的結構
  
  在SAF的分級結構中,最頂層的進程是服務訪問控制器(sac,Service Access Controller),sac負責管理端口監控程序.具體結果描述如下:
  
  1:init進程派生sac(SAF的主進程).
  2:管理命令sac用於控制端口監控程序,例如增加或刪除,啟動或停止,重新啟動等等.
  3:端口監控程序用於監控串口設備或網絡端口.使用端口監控管理命令可在適當的時候增加或刪除,啟動或停止服務.
  
  SAF初始化過程如下:
  
  1:系統啟動進入第二級運行時啟動SAF的主進程sac.
  2:sac讀入SAF的系統配置文件/etc/saf/_sysconfig,初始化環境.
  3:sac讀入管理文件/etc/saf/_sactab,啟動其中指定的端口監控程序.sac為_sactab中指定的每個端口監控創建一個子進程.
  4:每個端口監控程序讀入其管理文件/etc/saf/pmtag/_pmtab,啟動各端口上的服務.
  
  端口監控類型
  
  SAF支持兩種端口監控類型
  
  1:ttymon
  ttymon是基於STREAMS的tty端口監控類型,用於監控端口,設置終端方式的波特率,引發登陸進程或其它服務.
  在sac下運行的一個ttymon實例可以監控多個端口.ttymon的實例.用命令sacadm進行配置.ttymon實例被創建後,可用命令pmadm和ttyadm增加所需的ttymon信息.
  
  2:listen
  listen端口監控類型用於網絡端口的監控.
  listen的實例用命令sacadm配置,用命令pmadm加入所需信息
  字符終端管理中使用ttymon端口監控類型
  
  終端的初始化過程
  
  ttymon的實例被創建時按下列過程監控端口:
  
  1:首先初始化沒有端口的速度和終端設置,初始化所用的參數為/etc/ttydefs文件中的適當值,/etc/ttydefs文件的內容時終端設置參數表.
  2:在終端顯示提示符並等待用戶輸入.如果用戶按Break鍵提示波特率不合適,ttymon監控程序嘗試下一個波特率重寫提示符.
  3:接收到有效輸入後,ttymon監控程序就引發端口所需的服務.
  4:服務終止後回到初始狀態.
  
  增加一個字符終端需要下面兩步
  
  1:用命令sacadm創建一個端口監控實例以監控串口A和B
  .ttymon端口監控類型
  端口監控標簽(port monitor tag),如zsmon
  ttymon版本號(用ttyadm得到)
  
  2:用命令pmadm為ttymon端口監控實例提供登陸服務.
  sacadm創建的端口監控標簽zsmon
  服務標簽(service tag)
  用於識別服務標識和是否要創建/var/abm/utmp記錄的選項
  嵌入命令ttyadm用於包含ttymon的具體信息(終端類型,波特率,設備和服務)
  
  sacadm ------>zsmon port monitor
  pmadm ------>ttya(service tag) tty(service tag)
  ttyadm ------>/dev/term/a (terminal) /dev/term/b (modem)
Copyright © Linux教程網 All Rights Reserved