Some additional information: a conclusion.
The fact that select () says the sound-device wants data, but ioctl ()
saying it doet not, creates very CPU-consuming programs!
I suspect a bug! That is a bug in the kernel or in my software.
I wrote a piece of software that uses select () to write data to the
With a SB this works Okay: whenever it's the time to write some data to
the Sound Device the select () moves on, allowing the write to be done.
According to the OSS web-manual, before writing the data, the software
should query the device about the amount of space that's available
(ioctl SNDCTL_DSP_GETOSPACE), so the software knows what's the maximum
amount of data that can be written.
Well, what happens with GUS? After select () the kernel sometimes claims
that there's 0 bytes space for new data.
The kernel is version 2.0.30.
What am I doing wrong?
I'm running R.H. 5.2 with an ISA AWE SB card. This works well enough.
However, when opening /dev/audio for read and issuing a select call,
the call eventually times out. Of course, there are always plenty of
data when reading from /dev/audio.
Is this corrected somewhere?
Norwegian Computing Center, <http://www.nr.no/engelsk/>
Fax: +47 22697660, Pb 114 Blindern, N-0314 OSLO, Norway