sane-project-website/old-archive/2001-02/0257.html

139 wiersze
5.3 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
<TITLE>sane-devel: Re: Backend: When to use reader process?</TITLE>
<META NAME="Author" CONTENT="Oliver Rauch (oliver.rauch@rauch-domain.de)">
<META NAME="Subject" CONTENT="Re: Backend: When to use reader process?">
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>Re: Backend: When to use reader process?</H1>
<!-- received="Wed Feb 28 08:58:34 2001" -->
<!-- isoreceived="20010228165834" -->
<!-- sent="Wed, 28 Feb 2001 17:51:59 +0100" -->
<!-- isosent="20010228165159" -->
<!-- name="Oliver Rauch" -->
<!-- email="oliver.rauch@rauch-domain.de" -->
<!-- subject="Re: Backend: When to use reader process?" -->
<!-- id="3A9D2CAF.6684A48B@rauch-domain.de" -->
<!-- inreplyto="20010228162234.A30915@aruba.remote.org" -->
<STRONG>From:</STRONG> Oliver Rauch (<A HREF="mailto:oliver.rauch@rauch-domain.de?Subject=Re:%20Backend:%20When%20to%20use%20reader%20process?&In-Reply-To=&lt;3A9D2CAF.6684A48B@rauch-domain.de&gt;"><EM>oliver.rauch@rauch-domain.de</EM></A>)<BR>
<STRONG>Date:</STRONG> Wed Feb 28 2001 - 08:51:59 PST
<P>
<!-- next="start" -->
<LI><STRONG>Next message:</STRONG> <A HREF="0258.html">Henning Meier-Geinitz: "Re: preview and selectable scanarea for MFS-12000's ADF"</A>
<UL>
<LI><STRONG>Previous message:</STRONG> <A HREF="0256.html">Oliver Rauch: "Re: xsane-win 0.72: netstart"</A>
<LI><STRONG>In reply to:</STRONG> <A HREF="0253.html">Frederik Ramm: "Backend: When to use reader process?"</A>
<!-- nextthread="start" -->
<LI><STRONG>Next in thread:</STRONG> <A HREF="0260.html">Uwe Wagner: "xsane crashes"</A>
<!-- reply="end" -->
<LI><STRONG>Messages sorted by:</STRONG>
<A HREF="date.html#257">[ date ]</A>
<A HREF="index.html#257">[ thread ]</A>
<A HREF="subject.html#257">[ subject ]</A>
<A HREF="author.html#257">[ author ]</A>
</UL>
<HR NOSHADE><P>
<!-- body="start" -->
<P>
Frederik Ramm wrote:
<BR>
<EM>&gt;
</EM><BR>
<EM>&gt; Hi,
</EM><BR>
<EM>&gt;
</EM><BR>
<EM>&gt; I've noticed that the driver I am basing my M3091 work on, the
</EM><BR>
<EM>&gt; M3096 driver which was in turn derived from the Coolscan driver, uses
</EM><BR>
<EM>&gt; a separate process for reading data from the scanner, which is then
</EM><BR>
<EM>&gt; fed via a pipe file descriptor to sane_read.
</EM><BR>
<EM>&gt;
</EM><BR>
<EM>&gt; Other drivers (like the Bell+Howell backend I've been looking at for
</EM><BR>
<EM>&gt; duplex inspiration) don't use a separate process.
</EM><BR>
<EM>&gt;
</EM><BR>
<EM>&gt; Which would be the preferred way to implement it for a max. 15ppm ADF
</EM><BR>
<EM>&gt; scanner?
</EM><BR>
<P>Hi Frederik,
<BR>
<P>the reader_process is a good and simple way to make sane_read
<BR>
independant from the scsi read commands.
<BR>
<P>When you do some tests you will notice that scanning speed
<BR>
on linux is limited to about 1MB/sec.
<BR>
<P>I did some tests to find out what causes that.
<BR>
The first guess was that the pipe slows down things so much
<BR>
and so I did some tests with mmaped transfers instead of
<BR>
the pipe. But that did not change anything.
<BR>
The speed limit to ca. 1MB/sec seems to be in the
<BR>
comunication between generic scsi (SG) &lt;-&gt; scsi driver &lt;-&gt; scsi hardware.
<BR>
<P>So as long as the speed is limited in the sg driver and kernel routines
<BR>
you do not get any problems with the reader process and pipe.
<BR>
(I did the test with an AMD K6-3/400Mhz). If I remeber right
<BR>
this is also valid for a Pentium 166.
<BR>
<P><P>Bye
<BR>
Oliver
<BR>
<P><PRE>
--
Homepage: <A HREF="http://www.rauch-domain.de">http://www.rauch-domain.de</A>
sane-umax: <A HREF="http://www.rauch-domain.de/sane-umax">http://www.rauch-domain.de/sane-umax</A>
xsane: <A HREF="http://www.xsane.org">http://www.xsane.org</A>
E-Mail: mailto:<A HREF="mailto:Oliver.Rauch@rauch-domain.de?Subject=Re:%20Backend:%20When%20to%20use%20reader%20process?&In-Reply-To=&lt;3A9D2CAF.6684A48B@rauch-domain.de&gt;">Oliver.Rauch@rauch-domain.de</A>
<P>--
Source code, list archive, and docs: <A HREF="http://www.mostang.com/sane/">http://www.mostang.com/sane/</A>
To unsubscribe: echo unsubscribe sane-devel | mail <A HREF="mailto:majordomo@mostang.com?Subject=Re:%20Backend:%20When%20to%20use%20reader%20process?&In-Reply-To=&lt;3A9D2CAF.6684A48B@rauch-domain.de&gt;">majordomo@mostang.com</A>
</PRE>
<P><!-- body="end" -->
<HR NOSHADE>
<UL>
<!-- next="start" -->
<LI><STRONG>Next message:</STRONG> <A HREF="0258.html">Henning Meier-Geinitz: "Re: preview and selectable scanarea for MFS-12000's ADF"</A>
<LI><STRONG>Previous message:</STRONG> <A HREF="0256.html">Oliver Rauch: "Re: xsane-win 0.72: netstart"</A>
<LI><STRONG>In reply to:</STRONG> <A HREF="0253.html">Frederik Ramm: "Backend: When to use reader process?"</A>
<!-- nextthread="start" -->
<LI><STRONG>Next in thread:</STRONG> <A HREF="0260.html">Uwe Wagner: "xsane crashes"</A>
<!-- reply="end" -->
<LI><STRONG>Messages sorted by:</STRONG>
<A HREF="date.html#257">[ date ]</A>
<A HREF="index.html#257">[ thread ]</A>
<A HREF="subject.html#257">[ subject ]</A>
<A HREF="author.html#257">[ author ]</A>
</UL>
<!-- trailer="footer" -->
<HR NOSHADE>
<P>
<SMALL>
<EM>
This archive was generated by <A HREF="http://www.hypermail.org/">hypermail 2b29</A>
: <EM>Wed Feb 28 2001 - 09:00:45 PST</EM>
</EM>
</SMALL>
</BODY>
</HTML>