|
|
1.1 root 1: .\" Copyright (c) 1980 Regents of the University of California.
2: .\" All rights reserved. The Berkeley software License Agreement
3: .\" specifies the terms and conditions for redistribution.
4: .\"
5: .\" @(#)bk.4 6.1 (Berkeley) 5/15/85
6: .\"
7: .TH BK 4 "May 15, 1985"
8: .UC 4
9: .SH NAME
10: bk \- line discipline for machine-machine communication (obsolete)
11: .SH SYNOPSIS
12: .B pseudo-device bk
13: .SH DESCRIPTION
14: This line discipline provides a replacement for the old and new
15: tty drivers described in
16: .IR tty (4)
17: when high speed output to
18: and especially input from another machine is to be transmitted
19: over a asynchronous communications line. The discipline
20: was designed for use by the Berkeley network.
21: It may be suitable for uploading of data from microprocessors into
22: the system. If you are going to send data over asynchronous
23: communications lines at high speed into the system, you must
24: use this discipline, as the system otherwise may detect high
25: input data rates on terminal lines and disables the lines;
26: in any case the processing of such data when normal terminal
27: mechanisms are involved saturates the system.
28: .PP
29: The line discipline is enabled by a sequence:
30: .PP
31: .nf
32: .ft B
33: #include <sgtty.h>
34: int ldisc = NETLDISC, fildes; ...
35: ioctl(fildes, TIOCSETD, &ldisc);
36: .fi
37: .ft R
38: .PP
39: A typical application program then reads a sequence of lines from
40: the terminal port, checking header and sequencing information on each
41: line and acknowledging receipt of each line to the sender, who then
42: transmits another line of data. Typically several hundred bytes of
43: data and a smaller amount of control information will be received on
44: each handshake.
45: .PP
46: The old standard teletype discipline can be restored by doing:
47: .PP
48: .nf
49: .ft B
50: ldisc = OTTYDISC;
51: ioctl(fildes, TIOCSETD, &ldisc);
52: .fi
53: .ft R
54: .PP
55: While in networked mode, normal teletype output functions take place.
56: Thus, if an 8 bit output data path is desired, it is necessary
57: to prepare the output line by putting it into RAW mode using
58: .IR ioctl (2).
59: This must be done
60: .B before
61: changing the discipline with TIOCSETD, as most
62: .IR ioctl (2)
63: calls are disabled while in network line-discipline mode.
64: .PP
65: When in network mode, input processing is very limited to reduce overhead.
66: Currently the input path is only 7 bits wide, with newline the only
67: recognized character, terminating an input record.
68: Each input record must be read and acknowledged before the next input
69: is read as the system refuses to accept any new data when there
70: is a record in the buffer. The buffer is limited in length, but the
71: system guarantees to always be willing to accept input resulting in
72: 512 data characters and then the terminating newline.
73: .PP
74: User level programs should provide sequencing and checksums on the
75: information to guarantee accurate data transfer.
76: .SH "SEE ALSO"
77: tty(4)
78: .SH DIAGNOSTICS
79: None.
80: .SH BUGS
81: The Purdue uploading line discipline, which provides 8 bits and uses
82: timeout's to terminate uploading should be incorporated into the standard
83: system, as it is much more suitable for microprocessor connections.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.