[rescue] Solaris 8 Differences

Greg A. Woods woods at weird.com
Mon Feb 4 17:42:13 CST 2002


[ On Monday, February 4, 2002 at 17:16:04 (-0500), Dave McGuire wrote: ]
> Subject: Re: [rescue] Solaris 8 Differences
>
> On February 4, Greg A. Woods wrote:
> > > > > But how much pain will the interrupts cause?
> > > > 
> > > > How fast can you type?!?!?!?
> > > 
> > >   I'm sure Sridhar was talking about bursts of *outgoing* characters.
> > 
> > Which especially in bursts don't cause interrupts, and especially not
> > one per character.  :-)

Oops -- you're right -- one transmitter ready interrupt per char on the
zs8530 series....

Now that chip does have a FIFO for incoming characters.  It's only 3
bytes on the oldest variants of the chip, but that's still more than
enough for most sys-admins typing, esp. at just 9600bits/s!  ;-)

>   This is true of systems which use UARTs with FIFOs, but nothing
> else.

I don't know how Solaris drives the console ports on the average
server-class machine, but in NetBSD at least the hardware interrupt
handler for the console zs8530 is very efficient, doing only the bare
minimum necessary for transmitter ready interrupts to co-ordinate any
status changes and then just drop the next character in the transmitter
register and get out of there.  Even at 38,400bits/s that's less than
4,000 interrupts per second, and those are level-12 interrupts, lower
priority than most anything else on every model of Sun (though shared
with the floppy on sun3x).  With a flood ping I can easily achieve over
3,300 interrupts per second on a 10baseT interface (1633 8-byte
packets/s), and that's without even breaking a sweat on a 75MHz SS20.
The LE interface on that machine takes one hell of a lot more
instructions to drive than the zstty console interface does, not to
mention having ping pushing and pulling packets through the ICMP and IP
parts of the networking stack.....

If anyone's worried about spew to /dev/console slowing their machine
down they need only reduce the baud rate to, say, 9600bits/s and then even
constant spew is only 960 low-priority interrupts per second, and even
an SS2 won't sweat over that.  On my SS2, even with the conserver daemon
recording the spew on its own console via a telnet connection to the
terminal server, it only chews about 15% of the CPU all together to
blast /dev/console continuously at 9600bits/s.

-- 
								Greg A. Woods

+1 416 218-0098;  <gwoods at acm.org>;  <g.a.woods at ieee.org>;  <woods at robohack.ca>
Planix, Inc. <woods at planix.com>; VE3TCP; Secrets of the Weird <woods at weird.com>



More information about the rescue mailing list