Return to BSD News archive
Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!nntp.coast.net!howland.erols.net!vixen.cso.uiuc.edu!newsfeed.internetmci.com!news.tfs.net!news From: Doug Tidwell <dtidwell@tfs.net> Newsgroups: comp.unix.programmer,comp.unix.bsd.freebsd.misc Subject: Re: How prevent character loss on SIO? Date: Thu, 15 Aug 1996 16:19:16 -0700 Organization: Consultant Field Engineering, Inc. Lines: 63 Message-ID: <3213B074.40E4@tfs.net> References: <4urf05$fsg@fu-berlin.de> NNTP-Posting-Host: node15.tfs.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 2.01 (Win16; I) Xref: euryale.cc.adfa.oz.au comp.unix.programmer:41453 comp.unix.bsd.freebsd.misc:25534 Gunther Schadow wrote: > > I have go a big problem with serial line IO. I am loosing characters > when there is high load on the machine, and I have no clue what to do. > The problem is that the lines are either 3-wire (via glas fibers) or > the other side (to which I have no influence) just doesn't use hard > flow control. Now I thought that by enabling the IXON and IXOFF bits I > could enable soft flow control, but I fear that the TTY device just > doesn't send a STOP character when it's buffer is full, or, it comes > too late to handle the interrupt from the SIO to read the data before > this is overwritten? > > I need some help from someone who has some more TTY experience (seems > like networking experience is more en voge nowadays, and I would so > much like to dump the RS232 shit into the trashbin #@!*) To be more > specific: > > 1. is the IXOFF sending of a STOP character handled automatically > by the SIO device driver? > > 2. if yes, then would hard flow control improve the situation? I mean > -- suppose I could use hard frow control, would the character loss on > times of high system load be avoided? (i guess no) > > 3. would FIFO chips *fix* this problem? Right now we use 81450 UARTs > but the *550 would require to change the motherboard. > > 4. BTW: is a faster board/CPU and memory upgrade necessary? I can't > believe that serving just two serial lines requires a RISC > processor? > > 5. Currently the SIOs are served by two quite sizable C++ programs > that are performing numerous network communications on behalf of the > serial communication, is a restructuring of the system required to > make the SIO service faster? > > I guess that the answer on each of these question is ``yes, sure, fast > hardware -- less problems'', but I need to know what is really > required and what is just a ``nice to have'', and what I could > improve on the software side. > > any help is *so much* appreciated -- a very high level data > interchange project is about to loose it's practicability, if I cannot > get the SIOs to run reliably :-( > > regards, > Gunther Schadow > > -- > Gunther Schadow------------------Windsteiner Weg 54a, Berlin 14165, FR. Germany > Dept. of Anaesthesia, Benjamin Franklin University Hospital, Berlin. > gusw@fub46.zedat.fu-berlin.de | http://userpage.fu-berlin/~gusw > ----------------------------------------#include <usual/disclaimer>------------ You didn't say what devices are on the serial lines. Most devices have a threshhold buffer setting. If it is available you could try to lower the level thereby alerting the system to stop sending somewhat earlier. Also hardware flow control would stop the problem. That is one of the down sides to xon/off flow control. Hope this helps. Doug dtidwell@tfs.net