<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html style="direction: ltr;">
<head>
  <meta content="text/html;charset=ISO-8859-8-I"
 http-equiv="Content-Type">
</head>
<body style="direction: ltr;" bgcolor="#ffffff" text="#000000">
<p style="margin-bottom: 0cm; margin-top: 0pt;">Hello,</p>
<p style="margin-bottom: 0cm; margin-top: 0pt;"><br>
</p>
<p style="margin-bottom: 0cm; margin-top: 0pt;">Regarding your previous
mail, we agree, except that I will implement the "wait a little" thing.
Believe me, after implementing the hardware part, kernel programming is
a breeze.<br>
</p>
<p style="margin-bottom: 0cm; margin-top: 0pt;"><br>
</p>
<p style="margin-bottom: 0cm; margin-top: 0pt;">Nadav Har'El wrote:</p>
<blockquote cite="mid:20110426105148.GB25108@fermat.math.technion.ac.il"
 type="cite">
  <blockquote type="cite">
    <pre wrap="">The drawback of doing this 
exactly like this, is that if data arrives at a slow rate (say, 100 
kB/sec) it's likely that every read() operation will yield one byte of 
data, making the CPU spin around this instead of doing something useful.
    </pre>
  </blockquote>
  <pre wrap=""><!---->(...) Second, if the CPU *did* have "something useful" to do (run other processes,
or whatever), it would, causing a bit more time to pass between the read()
and it might return more than one byte. It will only return one byte when
there's nothing better to do than calling read() all the time.
  </pre>
</blockquote>
That's an interesting point, but I'm not 100% sure on that one. Why
would the scheduler take the CPU away, if the read() operation always
returns one byte or two? It would, eventually take it for a while,
which would let data stack up, but each process would get its fair
slice.<br>
<br>
I'm not saying this would cause some real degradation, but on a slow
embedded processor, seeing 10% CPU usage on a process which is supposed
to just read data...? The calculation is a 200 MHz processor, 100
kB/sec and 200 CPU clocks for each byte being processed on itself.<br>
<br>
<br>
<pre class="moz-signature" cols="72">-- 
Web: <a class="moz-txt-link-freetext" href="http://www.billauer.co.il">http://www.billauer.co.il</a>
</pre>
</body>
</html>