Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Apr 1996 16:23:58 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        metabyte@netcom.com (Sangeeta Relan)
Cc:        questions@FreeBSD.ORG
Subject:   Re: Programmed I/O
Message-ID:  <199604252323.QAA25840@phaeton.artisoft.com>
In-Reply-To: <317FF410.1FEF@netcom.com> from "Sangeeta Relan" at Apr 25, 96 02:52:16 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> Can I get info on how the Programmed I/O is performed on FreeBSD systems?

By causing your expensive, fast, processor to buzz-loop on port
addresses for your cheap, slow, devices waiting for "data-ready"
bits to become active, just like "Programmed I/O" in any other OS.

Tying up your expensive, fast, processor, when it could be better
utilized doing tings like adding numbers or otherwise executing
code in the L1 cache (which on a P5/166 system is 5 times more
efficient than accessing crappy device registers on a 33MHz EISA
or PCI bus -- assuming you aren't doing PIO to an ISA device,
in which case it's 8MHz and L1 is ~21 times as efficient as doing
PIO).

Good reason to use bus-mastering devices, don't you think?

A fast machine doing PIO is the moral equivalent of hiring Dirty
Harry as a cop, then assigning him duty as a crossing guard...
Harry would be over-powered and under-utilized ("C'mon punk,
cross my street!").


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199604252323.QAA25840>