comp.lang.ada
 help / color / mirror / Atom feed
From: "Marin David Condic" <marin.condic.auntie.spam@pacemicro.com>
Subject: Re: Ada Microkernel?
Date: Fri, 29 Jun 2001 11:22:38 -0400
Date: 2001-06-29T15:22:39+00:00	[thread overview]
Message-ID: <9hi6fv$lop$1@nh.pace.co.uk> (raw)
In-Reply-To: 4J0%6.1684$Kf3.17425@www.newsranger.com

I'm not an expert, nor do I play one on TV, (NDIPOOTV?) but here's why I
think there would be a problem with marking a process "Non-Time-Slicing":
Suppose you want your process to do a run until blocked kind of thing.
Suppose the rest of the world wants to timeslice. The timeslice thing is
going to require some sort of setting of a clock/interrupt/timer that will
stop your run-until-blocked process to give control to the scheduler. The
secheduler may look and say "Ted's job is still the most important thing to
do" and give you back the processor, but in the mean time, you've been
interrupted and had control given to the OS for some duration. even if the
duration is predictable, its still undsirable because it takes time from you
and may happen at A Bad Time(tm). What may be a bigger problem is that once
that timer goes off and the scheduler gets invoked, you probably aren't
going to be able to tell in advance how long its going to be before you get
to run again. Non-determinism is definitely A Bad Thing(tm). It for sure
would shoot Rate Monotonic right square between the eyes.

I'm not sure I could see a way around not having the timer go off at regular
intervals unless you came up with some way of masking the interrupts until
you got blocked. But having blocked and enabling the interrupts so others
could round-robin, you're back with the problem of a non-deterministic delay
when you do block. This is *probably* A Bad Thing if you were counting - for
example - on your blocking operation taking a fixed & deterministic amount
of time so you don't periodically blow your timing budget.

I'm *reasonably* persuaded that the only way you could do it would be to say
at boot time - or via some privileged command - "I want to operate Realtime"
and let the GUI window apps' performance suck in exchange for the guarantees
you need from an RTOS. Since people are doing essentially this to get
realtime work done under Windows, it would seem like A Good Thing(tm) to
build right in from the start.

MDC
--
Marin David Condic
Senior Software Engineer
Pace Micro Technology Americas    www.pacemicro.com
Enabling the digital revolution
e-Mail:    marin.condic@pacemicro.com
Web:      http://www.mcondic.com/


"Ted Dennison" <dennison@telepath.com> wrote in message
news:4J0%6.1684$Kf3.17425@www.newsranger.com...
>
> I was thinking you ought to be able to somehow mark a process as "non
> time-slicing" or somesuch so that it could be scheduled along with normal
user
> processes, but still be realtime. Any real-time process is probably going
to be
> higher-priority than a user process, but it could still use the same
scheduler
> this way. But I'm not an expert in this field, so I'm guessing there may
be some
> instrinsic problems I don't see.
>






  reply	other threads:[~2001-06-29 15:22 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-06-02  1:09 Ada Microkernel? B. Douglas Hilton
2001-06-02  2:11 ` DuckE
2001-06-02  2:25 ` Gerhard Häring
2001-06-02  2:41 ` Ted Dennison
2001-06-02  5:09   ` Dale Stanbrough
2001-06-02 21:31   ` B. Douglas Hilton
2001-06-02 23:21     ` chris.danx
2001-06-02 11:07 ` chris.danx
2001-06-02 20:30   ` McDoobie
2001-06-02 21:20     ` B. Douglas Hilton
2001-06-02 21:41       ` B. Douglas Hilton
2001-06-03  1:09         ` James Rogers
2001-06-02 23:00       ` chris.danx
2001-06-03  5:31         ` B. Douglas Hilton
2001-06-03 11:45           ` chris.danx
2001-06-03 22:54             ` Didier Utheza
2001-06-03 23:23               ` Florian Weimer
2001-06-04 14:37       ` Ted Dennison
2001-06-04 11:52     ` Chris Campbell
2001-06-09 23:54       ` McDoobie
2001-06-10  1:16         ` Chris Campbell
2001-06-10  7:13           ` Gerhard Häring
2001-06-10 12:14             ` Samuel Tardieu
2001-06-10 17:00             ` chris.danx
2001-06-11 20:54               ` chris.danx
2001-06-11 20:58                 ` chris.danx
2001-06-11 22:30                   ` tmoran
2001-06-11 22:35                     ` chris.danx
2001-06-11 23:24                   ` Robert A Duff
2001-06-12 20:57                   ` Randy Brukardt
2001-06-11 21:38                 ` Ted Dennison
2001-06-11 21:44                   ` chris.danx
2001-06-12  3:09                     ` DuckE
2001-06-12 10:39                       ` Jeff Creem
2001-06-11 23:22                 ` Robert A Duff
2001-06-12  9:58                   ` chris.danx
2001-06-12 17:27                     ` tmoran
2001-06-13 10:31                     ` Colin Paul Gloster
2001-06-23 14:58                     ` Stefan Skoglund
2001-06-24  0:22                       ` B. Douglas Hilton
2001-06-28  8:30                       ` Fr�d�ric BOYER
2001-06-28  9:50                         ` M. A. Alves
2001-06-28 14:21                           ` Ted Dennison
2001-06-28 14:39                             ` Wes Groleau
2001-06-28 15:01                             ` Marin David Condic
2001-06-28 17:45                               ` Tarjei Tj�stheim Jensen
2001-06-28 19:03                                 ` Marin David Condic
2001-06-28 19:15                                   ` Marin David Condic
2001-06-28 21:52                                     ` Ted Dennison
2001-06-29 13:16                                       ` Marin David Condic
2001-06-29 14:59                                         ` Ted Dennison
2001-06-29 15:22                                           ` Marin David Condic [this message]
2001-06-29 18:21                                             ` Ted Dennison
2001-07-02 13:50                                               ` Marin David Condic
2001-07-02 16:57                                                 ` OPERA
2001-06-29  4:37                                     ` Brian Catlin
2001-06-29 13:18                                       ` Marin David Condic
2001-06-29 15:09                                       ` Ted Dennison
2001-06-29  2:45                               ` Gerhard Häring
2001-06-29  2:32                             ` Gerhard Häring
2001-06-28 10:55                         ` chris.danx
2001-06-28 17:55                         ` Tarjei Tj�stheim Jensen
2001-06-29 10:29                           ` Fr�d�ric BOYER
2001-07-02  7:13                             ` Tarjei T. Jensen
2001-06-29 14:26                           ` Ted Dennison
2001-07-02  7:11                             ` Tarjei T. Jensen
2001-07-02 13:25                               ` Ted Dennison
2001-07-05 21:37                                 ` Tarjei Tj�stheim Jensen
2001-07-07 23:22                             ` Stefan Skoglund
2001-07-09 13:51                               ` Ted Dennison
2001-06-11 14:53           ` Ted Dennison
  -- strict thread matches above, loose matches on Subject: below --
2001-07-03 18:05 Michael Erdmann
2001-07-03 18:20 ` Ted Dennison
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox