204 lines
6.7 KiB
Groff
204 lines
6.7 KiB
Groff
.\" cytune.8 --
|
|
.\" Created: Sat Mar 4 17:44:53 1995 by faith@cs.unc.edu
|
|
.\" Update: Sat Mar 4 18:22:24 1995 by faith@cs.unc.edu
|
|
.\" Update: Sun Mar 5 06:40:12 1995 by njs@scifi.emi.net
|
|
.\" Copyright 1995 Rickard E. Faith (faith@cs.unc.edu)
|
|
.\"
|
|
.\" Permission is granted to make and distribute verbatim copies of this
|
|
.\" manual provided the copyright notice and this permission notice are
|
|
.\" preserved on all copies.
|
|
.\"
|
|
.\" Permission is granted to copy and distribute modified versions of this
|
|
.\" manual under the conditions for verbatim copying, provided that the
|
|
.\" entire resulting derived work is distributed under the terms of a
|
|
.\" permission notice identical to this one
|
|
.\"
|
|
.\" Since the Linux kernel and libraries are constantly changing, this
|
|
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
|
.\" responsibility for errors or omissions, or for damages resulting from
|
|
.\" the use of the information contained herein. The author(s) may not
|
|
.\" have taken the same level of care in the production of this manual,
|
|
.\" which is licensed free of charge, as they might when working
|
|
.\" professionally.
|
|
.\"
|
|
.\" Formatted or processed versions of this manual, if unaccompanied by
|
|
.\" the source, must acknowledge the copyright and authors of this work.
|
|
.\" "
|
|
.TH CYTUNE 8 " 4 Mar 1995" "" "Linux Programmer's Manual"
|
|
.SH NAME
|
|
cytune \- Tune driver parameters for Cyclades-Z multiport serial card
|
|
.SH SYNOPSIS
|
|
.B cytune
|
|
.RB [ \-q
|
|
.RB [ \-i
|
|
.IR interval ]]
|
|
.RB [{ \-s | \-S }
|
|
.IR value ]
|
|
.RB [ \-g | \-G ]
|
|
.RB [{ \-t | \-T }
|
|
.IR timeout ]
|
|
.IR tty ...
|
|
.SH DESCRIPTION
|
|
.B cytune
|
|
queries and modifies the interruption threshold for the Cyclades driver.
|
|
Each serial line on a Cyclades card has a 12-byte FIFO for input (and
|
|
another 12-byte FIFO for output). The "threshold" specifies how many input
|
|
characters must be present in the FIFO before an interruption is raised.
|
|
When a Cyclades tty is opened, this threshold is set to a default value
|
|
based on baud rate:
|
|
.sp
|
|
.RS
|
|
Baud Threshold
|
|
.sp
|
|
50-4800 10
|
|
.br
|
|
9600 8
|
|
.br
|
|
19200 4
|
|
.br
|
|
38400 2
|
|
.br
|
|
57600-150000 1
|
|
.RE
|
|
.PP
|
|
If the threshold is set too low, the large number of interruptions can load
|
|
the machine and decrease overall system throughput. If the threshold is set too high, the
|
|
FIFO buffer can overflow, and characters will be lost. Slower machines,
|
|
however, may not be able to deal with the interrupt load, and will require
|
|
that the threshold be adjusted upwards.
|
|
.PP
|
|
If the cyclades driver was compiled with
|
|
.B ENABLE_MONITORING
|
|
defined, the cytune command can be used with the
|
|
.B \-q
|
|
option to report interrupts over the monitoring interval and
|
|
characters transferred over the monitoring interval. It will also report
|
|
the state of the FIFO. The maximum number of characters in the FIFO when
|
|
an interrupt occurred, the instantaneous count of characters in the FIFO,
|
|
and how many characters are now in the FIFO are reported. This output might
|
|
look like this:
|
|
.sp
|
|
.RS
|
|
/dev/cubC0: 830 ints, 9130 chars; fifo: 11 threshold, 11 max, 11 now
|
|
.br
|
|
166.259866 interrupts/second, 1828.858521 characters/second
|
|
.RE
|
|
.PP
|
|
This output indicates that for this monitoring period, the interrupts were
|
|
always being handled within one character time, because
|
|
.B max
|
|
never rose above
|
|
.BR threshold .
|
|
This is good, and you can probably run this way, provided that a large
|
|
number of samples come out this way. You will lose characters if you
|
|
overrun the FIFO, as the Cyclades hardware does not seem to support
|
|
the RTS RS-232 signal line for hardware flow control from the
|
|
DCE to the DTE.
|
|
.PP
|
|
In query mode
|
|
.B cytune
|
|
will produce a summary report when ended with
|
|
a SIGINT or when the threshold or timeout is changed.
|
|
.PP
|
|
There may be a responsiveness vs. throughput tradeoff. The Cyclades card,
|
|
at the higher speeds, is capable of putting a very high interrupt load on the
|
|
system. This will reduce the amount of CPU time available for other tasks
|
|
on your system. However, the time it takes to respond to a single character
|
|
may be increased if you increase the threshold. This might be noticed by
|
|
monitoring
|
|
.BR ping (8)
|
|
times on a SLIP link controlled by a Cyclades card. If your SLIP link is
|
|
generally used for interactive work such as
|
|
.BR telnet (1),
|
|
you may want to leave the threshold low, so that characters are responded
|
|
to as quickly as possible. If your SLIP link is generally used for file
|
|
transfer, WWW, and the like, setting the FIFO to a high value is likely to
|
|
reduce the load on your system while not significantly affecting
|
|
throughput. Alternatively, see the
|
|
.B \-t
|
|
or
|
|
.B \-T
|
|
options to adjust the time that the cyclades waits before flushing its
|
|
buffer. Units are 5ms.
|
|
.PP
|
|
If you are running a mouse on a Cyclades port, it is likely that you would
|
|
want to maintain the threshold and timeout at a low value.
|
|
.PP
|
|
.SH OPTIONS
|
|
.TP
|
|
.BI \-s " value"
|
|
Set the current threshold to
|
|
.I value
|
|
characters. Note that if the
|
|
.I tty
|
|
is not being held open by another process, the threshold will be reset on
|
|
the next open. Only values between 1 and 12, inclusive, are permitted.
|
|
.TP
|
|
.BI \-t " value"
|
|
Set the current flush timeout to
|
|
.I value
|
|
units. Note that if the
|
|
.I tty
|
|
is not being held open by another process, the threshold will be reset on
|
|
the next open. Only values between 0 and 255, inclusive, are permitted.
|
|
Setting
|
|
.I value
|
|
to zero forces the default, currently 0x20 (160ms), but soon to be 0x02
|
|
(10ms). Units are 5 ms.
|
|
.TP
|
|
.B \-g
|
|
Get the current threshold and timeout.
|
|
.TP
|
|
.BI \-S " value"
|
|
Set the default threshold to
|
|
.I value
|
|
characters. When the
|
|
.I tty
|
|
is next opened, this value will be used instead of the default.
|
|
Only values between 1 and 12, inclusive, are permitted.
|
|
.TP
|
|
.BI \-T " value"
|
|
Set the default flush timeout to
|
|
.I value
|
|
units. When the
|
|
.I tty
|
|
is next opened, this value will be used instead of the default. If
|
|
.I value
|
|
is zero, then the the value will default to 0x20 (160ms), soon to be 0x02
|
|
(10ms).
|
|
.TP
|
|
.B \-G
|
|
Get the default threshold and flush timeout values.
|
|
.TP
|
|
.B \-q
|
|
Gather statistics about the
|
|
.IR tty .
|
|
The results are only valid if the Cyclades driver has been compiled with
|
|
.B ENABLE_MONITORING
|
|
defined. This is probably not the default.
|
|
.TP
|
|
.BI \-i " interval"
|
|
Statistics will be gathered every
|
|
.I interval
|
|
seconds.
|
|
.SH BUGS
|
|
If you run two copies of
|
|
.B cytune
|
|
at the same time to report statistics about the same port,
|
|
the 'ints', 'chars', and 'max' value will be reset
|
|
and not reported correctly.
|
|
.B cytune
|
|
should prevent this, but does not.
|
|
.\" .SH AUTHOR
|
|
.\" Nick Simicich (njs@scifi.emi.net), with modifications by
|
|
.\" Rik Faith (faith@cs.unc.edu)
|
|
.SH FILES
|
|
.I /dev/ttyC[0-8]
|
|
.br
|
|
.I /dev/cubC[0-8]
|
|
.SH "SEE ALSO"
|
|
.BR setserial (8)
|
|
.SH AVAILABILITY
|
|
The cytune command is part of the util-linux-ng package and is available from
|
|
ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/.
|