From alsa-devel-owner@alsa.jcu.cz  Tue Jan 12 13:26:23 1999
Received: from janus.ericsson.no (janus-ext.ericsson.no [193.215.242.105])
	by marvin.jcu.cz (8.9.1a/8.9.1) with ESMTP id NAA16241
	for <alsa-devel@alsa.jcu.cz>; Tue, 12 Jan 1999 13:25:56 +0100
Received: from tele1.eto.ericsson.se (tele1 [193.161.187.12])
	by janus.ericsson.no (8.9.0/8.9.0) with ESMTP id NAA25965;
	Tue, 12 Jan 1999 13:25:20 +0100 (MET)
Received: from tele2 (tele2 [193.161.187.13])
	by tele1.eto.ericsson.se (8.9.0/8.9.0) with SMTP id NAA07794;
	Tue, 12 Jan 1999 13:27:21 +0100 (MET)
Received: by tele2 (5.0/client-1.5 (tele))
	id AA15671; Tue, 12 Jan 1999 13:30:50 +0100
Date: Tue, 12 Jan 1999 13:30:50 +0100
Message-Id: <9901121230.AA15671@tele2>
From: Stephen Thornton <Stephen.John.Thornton@ericsson.no>
To: Thomas Sailer <sailer@ife.ee.ethz.ch>
Cc: alsa-devel@alsa.jcu.cz,
        Stephen Thornton <Stephen.John.Thornton@ericsson.no>
Subject: Re: Linux scheduler issues.
In-Reply-To: <369B389D.FB567AB5@ife.ee.ethz.ch>
References: <199901092046.PAA25489@renoir.op.net>
	<19990111101124Z2631-2281+1905@nic.funet.fi>
	<9901111407.AA10574@tele2>
	<369B389D.FB567AB5@ife.ee.ethz.ch>
Reply-To: alsa-devel@alsa.jcu.cz
Sender: alsa-devel-owner@alsa.jcu.cz
Precedence: list

Thomas Sailer writes:
 > Stephen Thornton wrote:
 > 
 > > But remember, besides your nice little audio app. there are quite a
 > > lot of system processes that can suddenly preempt at awkward moments,
 > > and no way of knowing what they might do to your delicate audio
 > > timings. Short of re-writing the Scheduler and kernel, there is not a
 > 
 > Can you be more specific?
 >

I assume you are talking about RTLinux here. OK, as you show, you can
stop everything except 

 > The only things that can preempt you (IMHO) are:
 > 
 > Interrupts:  IDE is notorious about doing too much
 >   work in the interrupt handlers and disabling ints for
 >   a long time, but otherwise the handlers are usually small
 > Bottom Halves: Im pathological cases may consume almost
 >   all CPU time (such as a high bandwidth network router
 >   on a 386), but otherwise short too.
 > 

preempting you, but I was talking about vanilla Linux in the above quote.

 > Short of that (which can be avoided by not doing something silly), I
 > can't see how your app can be preempted seriously, especially not
 > by any other process.
 > 

I agree with the above in this context, but that was not really the
point I was trying to make.

 
 > I can't quite see how anything of the above is a problem
 > for audio apps that basically only burn CPU cycles and
 > do IO to the soundcard (given a reasonable sound driver).
 
The point I was really trying to make, was that if you want to do
serious computer music, it would be nicest to have a system designed
to do just that, and nothing else. I have been fooling with designs
for computer music systems since 1982, and have tried quite a few
ideas, and have come to the (personal) conclusion that this would be
best in an ideal world. I have been considering using RTLinux for a
couple of months now, and believe that if you really want to stick
with Linux-ey ways of doing things then this is definitely the best
bet, and should work pretty well - I'm into it. HOWEVER, I can see
another possibility using Erlang, which is rather radical.

I'll state my position: I am at least going to persue a feasibility
study on the use of Erlang in music. I will point out the advantages
(and disadvantages) to anybody who is interested. Erlang runs under
Linux, and just about anything  I come up with could be used under
RTLinux, or vanilla Linux as well. I will help in any way I can on any
RTLinux project. If people feel that this is too off topic for this
list, I'll shut up about it, and we can talk about other things (or
start a new list)

best regards
Steve

