comp.lang.ada
 help / color / mirror / Atom feed
From: "chris.danx" <chris.danx@ntlworld.com>
Subject: Re: Ada OS Kernel features
Date: Wed, 5 Sep 2001 20:25:33 +0100
Date: 2001-09-05T20:25:33+01:00	[thread overview]
Message-ID: <3%ul7.3362$9z1.440040@news6-win.server.ntlworld.com> (raw)
In-Reply-To: 9n5o9n$37a$1@slb7.atl.mindspring.net


> > You should be able to load/unload a driver dynamically (I hate rebooting
> > because of driver change).
>
> Agreed.  This is not simple to implement, but it is well worth the trouble
>
> > You should be able to "overload" a driver. What I mean ?  Lets assume
> > you have a simple grafic driver on bootup, then you load a "better"
> > (more complex, higher resolution, 3D excelerator ...) one. If this one
> > crashes, then it should simply be unloaded and the system should
> > continue work with the (simple) default driver - instead of showing a
> > "blue screen" ;-)
>
> My first reaction to this was "Not Possible".  However, that isn't
entirely
> true; it is just *VERY VERY* difficult.

Only in the "drivers in supervisor mode" model.

> A driver runs in kernel mode,

Why?  Why not just have it in user mode?  It makes more sense to have them
in user mode, at least to me.  They can only corrupt themselves then, etc.

> and has access to system data structures.

Why should it?  In your model a driver can screw a system up good and
proper, but if you put the driver in user mode then the associated problems
go away.  New ones do crop up, but there's ways and means to deal with them.


> If a driver corrupts a system data structure, how do you detect this,
repair it, and continue?

I really don't get why a driver must have access to system structures or
atleast those in kernel space, can you explain this?






  parent reply	other threads:[~2001-09-05 19:25 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-09-05  5:58 Ada OS Kernel features Brian Catlin
2001-09-05 10:15 ` Jacob Sparre Andersen
2001-09-05 11:16 ` Larry Kilgallen
2001-09-05 17:06   ` Brian Catlin
2001-09-06 14:35     ` Marin David Condic
2001-09-07  9:31       ` Tarjei T. Jensen
2001-09-05 17:55   ` David Starner
2001-09-05 18:42     ` Darren New
2001-09-12  6:47   ` Mats Karlssohn
2001-09-05 14:04 ` Ted Dennison
2001-09-05 17:23   ` Brian Catlin
2001-09-05 20:17     ` Ted Dennison
2001-09-05 21:10       ` Brian Catlin
2001-09-06  6:45         ` Tarjei T. Jensen
2001-09-06  6:56           ` Brian Catlin
2001-09-06 14:05             ` Ted Dennison
2001-09-05 16:02 ` Alfred Hilscher
2001-09-05 16:19   ` Jacob Sparre Andersen
2001-09-05 17:58     ` Brian Catlin
2001-09-05 17:44   ` Brian Catlin
2001-09-05 17:58     ` Darren New
2001-09-05 18:51     ` Larry Kilgallen
2001-09-05 19:25     ` chris.danx [this message]
2001-09-05 20:07       ` Darren New
2001-09-05 20:14       ` Larry Kilgallen
2001-09-06 13:45         ` Alfred Hilscher
2001-09-06 18:06         ` chris.danx
2001-09-06 19:41           ` Larry Kilgallen
2001-09-06 22:32             ` chris.danx
2001-09-07 11:04               ` Larry Kilgallen
2001-09-07  8:04           ` Dmitry Kazakov
2001-09-07  8:18             ` Mattias Svensson
2001-09-07 12:40               ` Dmitry Kazakov
2001-09-12  7:12               ` Mats Karlssohn
2001-09-05 20:18       ` Brian Catlin
2001-09-06  6:48         ` Ole-Hjalmar Kristensen
2001-09-06  6:59           ` Brian Catlin
2001-09-10  7:32             ` Ole-Hjalmar Kristensen
2001-09-06 13:42     ` Alfred Hilscher
2001-09-07  8:13       ` Dmitry Kazakov
2001-09-08  3:55     ` Kenneth Almquist
replies disabled

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