comp.lang.ada
 help / color / mirror / Atom feed
From: "Brian Catlin" <briancatlin@mindspring.com>
Subject: Re: Ada OS Kernel features
Date: Wed, 5 Sep 2001 10:44:19 -0700
Date: 2001-09-05T17:44:23+00:00	[thread overview]
Message-ID: <9n5o9n$37a$1@slb7.atl.mindspring.net> (raw)
In-Reply-To: 3B964C7A.BC04374E@icn.siemens.de

"Alfred Hilscher" <Alfred.Hilscher@icn.siemens.de> wrote in message
news:3B964C7A.BC04374E@icn.siemens.de...
>
>
> Brian Catlin wrote:
> >
> > What sort of features would be desirable/required in the kernel?
> >
> > Processor architectures:
> >   What sort of processor architectures should be supported?  32-bit
obviously,
> > but what about 64-bit, or 16-bit?  Little-endian only, or big-endian too?
>
> 32-bit open for future 64-bit.
>
> Both, _big_ and _little_ endian.
>
> > (personally, I view big-endian as a crime against nature, and would vote
against
>
> Why ?

I don't want to start a flame war, or get too far off topic, but big-endian just
doesn't make sense (at least compared to little-endian).  In little-endian, you
count your bits and bytes from right to left, all the way to infinity.  In
big-endian, what purpose does swapping the bytes around have?  Also,
communications between a big-endian and little-endian system is a pain in the
neck.  Intel's x86 may be a lousy architecture, but in my opinion it has done at
least one good thing: it has virtually eliminated big-endian machines.  The only
big companies making big-endian systems are IBM, Motorola, and Sun.  While it is
true that they could be called "heavy weights", their market share as a
percentage of the x86 is miniscule.

> > processors)  Deciding on these issues early is very important, as it will
> > greatly influence the rest of the design and implementation of the kernel.
All
>
> In which manner? Where do you think that there will be any influence?

This is one of the lessons learned from NT, which at one time supported 4 very
different processor architectures.  Unfortunately, they chose the MIPS as one of
their targets, and the repercussions were felt all over the operating system, as
the MIPS was a lot less capable that the other architectures (x86, PPC, Alpha).
One of the most notable problems was that the early MIPS processors didn't
support 4 processor modes (as I remember, it only supported two; user mode and
supervisor mode).

> > Memory management:
> >   A demand-paged memory manager would seem to be required.  However, I would
not
> > like to see paging made a requirement - as long as there is enough physical
> > memory, there should be no need.
>
> Thats what I liked on OS/2, one was able to switch it off.
>
> > process an I/O request is passed around between drivers.  What form should a
> > driver take?  Implementing a driver as one or more tasks in the kernel seems
to
> > be the most natural.  The layering of device drivers (as implemented) in NT
> > would also seem to be a very valuable feature.
>
> 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.  A driver runs in kernel mode, and has
access to system data structures.  If a driver corrupts a system data structure,
how do you detect this, repair it, and continue?  In such instances, it is much
better to bugcheck (blue screen) the system than try to continue.  Consider, if
the system is slightly corrupted and continues to operate, there is the very
real possibility that your data will be corrupted without your knowledge.  This
was Win98's philosophy, and it was a disaster.  VMS and NT (and others) stop the
system dead in its tracks to prevent hidden corruption.

 -Brian






  parent reply	other threads:[~2001-09-05 17:44 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 [this message]
2001-09-05 17:58     ` Darren New
2001-09-05 18:51     ` Larry Kilgallen
2001-09-05 19:25     ` chris.danx
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