기본 색인 | 섹션 4 | 日本語 | 옵션 |
위의 1 행 째는 EISA 와 PCI 호스트 카드용으로, 2 행 째는 ISA 호스트 카드용의 것입니다.
시스템은 2 개의 부분을 사용합니다: 「호스트 어댑터」는 ISA, EISA 혹은 PCI 슬롯에 삽입되어 37 핀 케이블 형식의 외부 버스와 제어와 데이터의 버퍼링 및 처리를 실시하는 능력을 제공합니다.
이 케이블에는 「모듈」이 접속됩니다. "SI" 모듈은 4 포트 혹은 8 포토의 버젼이 있습니다. "XIO" 및 "SX" 모듈은 8 포트의 버젼만이 있습니다.
호스트 어댑터는 데이터를 폴링 해, 모듈과 머신의 사이의 전송을 행합니다. 호스트 어댑터는, 제어할 수 있는 32 개의 포트의 각각 붙어 256 바이트의 송신용 및 256 바이트의 수신용 FIFO 버퍼를 제공합니다.
XIO 모듈은 8 개의 포트 각각 붙어 115,200 보로 사용할 수 있습니다. SI 버젼은 57,600 보입니다. SX 모듈은 8 개의 포트 각각 붙어 최대 921,600 보로 사용할 수 있습니다.
SX 모듈은 SX 호스트 카드로 접속되고 있는 경우에게만 서포트됩니다. SI 또는 XIO 는 어느 호스트 카드로도 서포트 되고 있습니다.
호스트 어댑터는, ISA 버스의 0xA0000 에서 0xEFFFF 까지의 사이에 있다 전통적인 "구멍" 에 있는 공유 메모리브록크를 사용합니다. 어댑터 자체는 그 이외의 범위에도 설정할 수 있습니다만, 그 메모리 area는 명시적으로 비캐쉬 상태로 해 둘 필요가 있습니다. 드라이버는, 이 모드에서의 사용을 아직 서포트하고 있지 않습니다.
SX 의 ISA 호스트 카드는, 8 비트 모드와 16 비트 모드를 바꾸는 스윗치 또는 점퍼를 가지고 있습니다. 이 스윗치 또는 점퍼는, 8 비트 모드에 세트되어 있지 않으면 되지 않습니다.
ISA 어댑터는 IRQ 11, 12, 15 를 이용할 수 있습니다 (게다가 SX 호스트 카드로는 IRQ 9 로 10 을 이용할 수 있습니다).
si 디바이스 드라이버는, 실행시에 몇개의 설정을 sicontrol(8) 유틸리티로 변경할 수가 있습니다.
si 디바이스 드라이버는 클로우즈 온 드레인 (drain-on-close)의 타임 아웃을 설정하기 위한 comcontrol(8) 유틸리티에도 반응합니다.
드라이버는 3 개의 조작 가능한 sysctl 변수를 정의하고 있습니다: machdep.si_debug 는, 드라이버 전체의 디버그 레벨을 설정합니다. 이것을 이용하려면 , 드라이버가 SI_DEBUG 플래그 첨부로 컴파일 되고 있을 필요가 있습니다. machdep.si_pollrate 는, 세치기가 소실했을 때를 위해서(때문에) 드라이버가 1 초간에 몇회 폴링 하는지를 설정합니다. machdep.si_realpoll 는, 매회의 폴링 시에, 세치기가 발생했는지와 같이 취급하는지 어떤지를 설정합니다.
si 드라이버가 제어하는 /dev 의 디바이스 노드에 대한다 오픈은, sio(4) 드라이버와 같은 시멘틱스로 동작합니다. 이 드라이버는, cua 포트의 통상의 시멘틱스와 "초기 상태의 termios" 및 "락 된 termios" 의 설정을 완전하게 서포트합니다. 간단하게 정리하면(자), O_NONBLOCK 가 세트되어 있지 않은 한, tty 포트의 오픈은 DCD 가 오를 때까지 블록 됩니다. CLOCAL 도 효과가 있습니다. 이것을 설정하면(자), cua 포트의 오픈은 항상 성공합니다만, 한번 DCD 가 오르고 나서는, DCD 의 변화도 효과가 있습니다.
si 드라이버는 SI/XIO 호스트 카드를 최대 4 매까지 제어할 수 있습니다. 세치기가 부족하기 때문에, 동시에 사용할 수 있는 SI/XIO 호스트 카드는 3 매까지입니다.
마이나데바이스 번호의 하위 5 비트는, 모듈 클러스터상의 포트 번호 (을)를 선택하기 위해서 사용됩니다. 다음의 2 비트는 4 매의 호스트 어댑터 카드의 어떤 것을 선택할까를 결정합니다. 이것에 의해, 이 드라이버상에서 최대 128 개의 포트가 이용 가능하게 됩니다.
bit 7 으로 tty/착호포트 (bit 7=0)와 cua/발호포트 (bit 7=1)를 구별합니다.
bit 7 으로부터 bit 15 ( FreeBSD 에 대해) (은)는 메이저 디바이스 번호의 그림자에 해당하기 (위해)때문에 이용할 수 없습니다.
bit 16 이 1 이면, 그 디바이스 노드는 "초기 상태" 디바이스이다 일을 나타냅니다. 이 "초기 상태" 는, 최초로 오픈되었을 때에 디바이스의 termios(4) [영어] 의 설정을 준비하기 위해서 사용됩니다. bit 17 이 1 이면,"락 상태" 디바이스인 것을 나타냅니다. "락 상태" 는, termios(4) [영어] 의 설정의 변경을 저지하기 위해서 사용됩니다.
초기 / 락의 설정을 조작하기 위해서는, stty(1) 명령을 사용하면(자) 좋을 것입니다. "락" 변수의 설정에 대해서는, 락 디바이스의 모드를 유효하게 하면(자), termios(4) [영어] 의 모드가 락 됩니다. 반대로, 락 디바이스의 모드를 무효로 하면(자), termios(4) [영어] 의 모드가 락 해제됩니다.
/dev/si_control | |
sicontrol(8) 하지만 사용하는, 드라이버를 제어하는 글로벌인 파일. | |
/dev/ttyA* | 터미널 / 착호포트 |
/dev/cuaA* | 발호포트 |
/dev/ttyiA* | 초기 상태 termios 디바이스 |
/dev/ttylA* | 락 상태 termios 디바이스 |
/dev/cuaiA* | 발호포트용의 초기 상태 termios 디바이스 |
/dev/cualA* | 발호포트용의 락 상태 termios 디바이스 |
Specialix International 는 이 드라이버를 서포트하고 있지 않습니다.
폴링 모드 (Specialix 에 의한 표준 드라이버의 특징)는 실장되고 있지 않습니다만, machdep.si_realpoll 를 온으로 하는 것으로 닮은 동작으로 할 수가 있습니다. 폴링 주기는 machdep.si_pollrate 로 설정합니다 (1/100 초의 단위입니다).
이 드라이버는, SX 모듈로 115,200 보다 큰 baud rate를 아직 서포트하고 있지 않습니다.
전통적인 ISA 의 "구멍" 의 밖에서의 동작은 아직 서포트되고 있지 않습니다. 프로브 routine로부터 구멍의 테스트를 삭제하면 움직일 것입니다만.
복수의 호스트 카드는 서포트되고 있습니다만, 다른 버스 타입의 호스트 카드의 편성에 대해서는 테스트되고 있지 않습니다. - 디바이스의 번호 지어에 문제가 있는 것을 알고 있습니다. 예기치 않은 결과를 부를지도 모릅니다.
FreeBSD | SI (4) | September 16, 1995 |
기본 색인 | 섹션 4 | 日本語 | 옵션 |
Ben Bullock이 유닉스 매뉴얼 페이지에서 서비스에 대한 의견을 주시기 바랍니다. Privacy policy.
“ | UNIX is a four-letter word! | ” |