manual page distributed with 4.1BSD
authorKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Thu, 16 May 1985 08:17:11 +0000 (00:17 -0800)
committerKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Thu, 16 May 1985 08:17:11 +0000 (00:17 -0800)
SCCS-vsn: old/berknet/bk.4 4.1

usr/src/old/berknet/bk.4 [new file with mode: 0644]

diff --git a/usr/src/old/berknet/bk.4 b/usr/src/old/berknet/bk.4
new file mode 100644 (file)
index 0000000..9fc49f3
--- /dev/null
@@ -0,0 +1,91 @@
+.\" Copyright (c) 1980 Regents of the University of California.
+.\" All rights reserved.  The Berkeley software License Agreement
+.\" specifies the terms and conditions for redistribution.
+.\"
+.\"    @(#)bk.4        4.1 (Berkeley) %G%
+.\"
+.TH BK 4 5/11/81
+.UC 4
+.SH NAME
+bk \- line discipline for machine-machine communication
+.SH SYNOPSIS
+pseudo-device bk
+.SH DESCRIPTION
+This line discipline provides a replacement for the old and new
+tty drivers described in
+.IR tty (4)
+when high speed output to
+and especially input from another machine is to be transmitted
+over a asynchronous communications line.  The discipline
+was designed for use by the Berkeley network
+.IR net (1).
+It may be suitable for uploading of data from microprocessors into
+the system.  If you are going to send data over asynchronous
+communications lines at high speed into the system, you must
+use this discipline, as the system otherwise may detect high
+input data rates on terminal lines and disables the lines;
+in any case the processing of such data when normal terminal
+mechanisms are involved saturates the system.
+.PP
+The line discipline is enabled by a sequence:
+.PP
+.nf
+.ft B
+       #include <sgtty.h>
+       int ldisc = NETLDISC, fildes; ...
+       ioctl(fildes, TIOCSETD, &ldisc);
+.fi
+.ft R
+.PP
+A typical application program then reads a sequence of lines from
+the terminal port, checking header and sequencing information on each
+line and acknowledging receipt of each line to the sender, who then
+transmits another line of data.  Typically several hundred bytes of
+data and a smaller amount of control information will be received on
+each handshake.
+.PP
+The old standard teletype discipline can be restored by doing:
+.PP
+.nf
+.ft B
+       ldisc = OTTYDISC;
+       ioctl(fildes, TIOCSETD, &ldisc);
+.fi
+.ft R
+.PP
+While in networked mode, normal teletype output functions take place.
+Thus, if an 8 bit output data path is desired, it is necessary
+to prepare the output line by putting it into RAW mode using
+.IR ioctl (2).
+This must be done
+.B before
+changing the discipline with TIOCSETD, as most
+.IR ioctl (2)
+calls are disabled while in network line-discipline mode.
+.PP
+When in network mode, input processing is very limited to reduce overhead.
+Currently the input path is only 7 bits wide, with newline the only
+recognized character, terminating an input record.
+Each input record must be read and acknowledged before the next input
+is read as the system refuses to accept any new data when there
+is a record in the buffer.  The buffer is limited in length, but the
+system guarantees to always be willing to accept input resulting in
+512 data characters and then the terminating newline.
+.PP
+User level programs should provide sequencing and checksums on the
+information to guarantee accurate data transfer.
+.SH "SEE ALSO"
+tty(4)
+.SH DIAGNOSTICS
+None.
+.SH BUGS
+The Purdue uploading line discipline, which provides 8 bits and uses
+timeout's to terminate uploading should be incorporated into the standard
+system, as it is much more suitable for microprocessor connections.
+.PP
+Inclusion of this line discipline causes the system to use the input
+silos on dz's and dh's.  This causes problems with some terminals, which
+require ^S/^Q handshaking to operate but have inadequate buffering to
+tolerate even a small number of characters transmitted after they send
+a ^S.  In particular this problem existed on early VT100's
+(where, however, an ECO exists to fix this problem.)