comp.lang.ada
 help / color / mirror / Atom feed
From: Nick Roberts <nick.roberts@acm.org>
Subject: Re: For the AdaOS folks
Date: Tue, 4 Jan 2005 20:09:00 +0000
Date: 2005-01-04T20:09:00+00:00	[thread overview]
Message-ID: <gemini.i9t6mz00h4nxx00dc.nick.roberts@acm.org> (raw)
In-Reply-To: 1b48kdfqsk3mw.7gajq12fsa82.dlg@40tude.net

"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote:

> I think only a native OO design *exposed* in the kernel interface can
> help.

As I currently have it, AdaOS is very OO from the level just above the
microkernel -- device drivers -- upwards, making full use of Annex E and
remote access types.

> > Yes, they can be provided on top of the microkernel, as you seem to be
> > suggesting.
> 
> Yes, but networking should be known to the kernel as something it can work
> with. So you cannot completely throw it away.

Do you really mean the (micro)kernel, Dmitry, or the TCB (Trusted Computing
Base)?  In Linux and BSD, for example, the kernel /is/ the TCB, but this is
not the case with AdaOS.

> Agree. Protocols must be decoupled from the system, though that is easier
> to do, than to remove networking as a whole. Though it is related to an
> interesting OO problem. When protocol implementation is buried somewhere
> in an inheritance path, then it becomes difficult to switch from one
> protocol to another. It looks like abstraction inversion.

This is why I think the introduction of interfaces in Ada 2005 will be
important. Not only will this help support multiple inheritance, but it will
also help decouple interface hierarchies from implementational hierarchies.

> > You base your registry criticisms upon M$ _implementation_ of a
> > registry. But consider this:
> > 
> > If each registry item were a file (on a RieserFS so there is little or
> > no waste), then you can backup, secure and restore settings just like
> > any other file. You can do so with all of those familiar tools,
> > including tar and cpio.
> 
> The problem is not an ability to backup, in UNIX one can backup /etc, /var
> ... The problem is complexity. There are dependencies between repository
> objects, which cannot be mapped to a simple tree structure, whether that
> be chaotic files or registry. Consider a simple diamond diagram.
> Application A uses B and C, they in turn use D. This cannot be represented
> by a tree. So you need a folder to keep them all. Let's name it "/etc".
> Welcome to back to chaos.

Dmitry seems to be echoing what I was saying in another post in this thread.

> > I don't believe it need be treated any differently than a file system.
> > To support a registry on the RieserFS for example, one merely need to
> > add a nice programming API to make it easier for programs to query and
> > set values. You can still use links/symlinks (if you must) etc.
> 
> In my view there should be no file systems at all. OS should be fully
> memory-mapped with persistent objects. A FS would be just a "low-level"
> format then. (Kind of data base discussion again! (:-))

As I currently have it, that is how AdaOS is designed, in essence. A program
classed as a 'local storage manager' (LSM) provides a way to cause a memory
region to be stored on the hard disk, each such 'store' identified by a
number. At a low level (device drivers) a simple namesystem maps names to
stores, providing an elementary file system.

A programs classed as a 'distributed storage managers' (DSM) will provide
'distributed stores'. A distributed store is identified by a number that is
the same across the whole network, and the pages of a store are
automatically moved (or copied, for R/O pages) to workstations upon demand.
Distributed programs use DSMs (only) to provide their memory regions and
stores.

At a higher level (including application programs), files are organised as
objects (records) in database tables; the 'data' of a file will be stored in
a field of type 'binary large object' (BLOB); each large BLOB will be kept
in a separate distributed store (small ones will be agglomerated, together
with other 'small' database data). However, nothing will prevent stores
being accessed by other means, if necessary. 

-- 
Nick Roberts



  parent reply	other threads:[~2005-01-04 20:09 UTC|newest]

Thread overview: 80+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-27  5:09 For the AdaOS folks Wes Groleau
2004-12-27 10:56 ` Florian Weimer
2004-12-27 12:50   ` Georg Bauhaus
2004-12-27 13:12     ` Florian Weimer
2004-12-28  1:18   ` Wes Groleau
2004-12-27 13:46 ` Adrien Plisson
2004-12-27 16:28   ` Georg Bauhaus
2004-12-28  6:19   ` Microkernels & Ada (Was for the AdaOS folks) Warren W. Gay VE3WWG
2004-12-28 12:02     ` Adrien Plisson
2004-12-28 15:28       ` Warren W. Gay VE3WWG
2004-12-30  1:19 ` For the AdaOS folks Nick Roberts
2004-12-30 13:58   ` Warren W. Gay VE3WWG
2004-12-30 15:27     ` Dmitry A. Kazakov
2004-12-30 16:30       ` Warren W. Gay VE3WWG
     [not found]         ` <otb8t09dkjh54e1k5s5ccn23ggkqk6ndui@4ax.com>
2004-12-30 19:06           ` OT: Mach Ports (For the AdaOS folks) Warren W. Gay VE3WWG
2004-12-31 10:03         ` For the AdaOS folks Dmitry A. Kazakov
2004-12-31 11:30           ` Warren W. Gay VE3WWG
2004-12-31 12:31             ` Dmitry A. Kazakov
2004-12-31 16:24               ` Warren W. Gay VE3WWG
2004-12-31 17:57                 ` Marven Lee
2004-12-31 18:40                   ` Warren W. Gay VE3WWG
2004-12-31 19:22                     ` Warren W. Gay VE3WWG
2005-01-02 15:09                     ` Marven Lee
2005-01-02 20:06                       ` Luke A. Guest
2005-01-03  3:13                         ` Warren W. Gay VE3WWG
2005-01-03  6:40                           ` Luke A. Guest
2005-01-03 10:30                             ` Marven Lee
2005-01-03 15:52                             ` Warren W. Gay VE3WWG
2005-01-03 16:48                           ` Ad Buijsen
2005-01-03 18:49                             ` Warren W. Gay VE3WWG
2005-01-03 13:43                         ` Marven Lee
2005-01-04 23:36                         ` Nick Roberts
2005-01-03 16:22                       ` Warren W. Gay VE3WWG
2005-01-04 23:16                       ` Nick Roberts
2005-01-05  3:48                         ` Warren W. Gay VE3WWG
2005-01-05 13:14                           ` Nick Roberts
2005-01-01 12:53                 ` Dmitry A. Kazakov
2005-01-02  0:31                   ` Warren W. Gay VE3WWG
2005-01-02 11:50                     ` Dmitry A. Kazakov
2005-01-02 22:04                       ` Warren W. Gay VE3WWG
2005-01-03 10:30                         ` Dmitry A. Kazakov
2005-01-03 16:36                           ` Warren W. Gay VE3WWG
2005-01-03 17:05                             ` Dmitry A. Kazakov
2005-01-03 19:01                               ` Warren W. Gay VE3WWG
2005-01-03 19:55                                 ` Dmitry A. Kazakov
2005-01-03 20:44                                   ` Warren W. Gay VE3WWG
2005-01-04  0:02                                     ` Randy Brukardt
2005-01-04 17:44                                       ` Warren W. Gay VE3WWG
2005-01-04 20:14                                         ` Nick Roberts
2005-01-04  9:59                                     ` Dmitry A. Kazakov
2005-01-04 18:00                                       ` Warren W. Gay VE3WWG
2005-01-04 19:07                                         ` Dmitry A. Kazakov
2005-01-04 19:57                                           ` Warren W. Gay VE3WWG
2005-01-05  0:02                                             ` Nick Roberts
2005-01-05  4:37                                               ` Warren W. Gay VE3WWG
2005-01-05 18:54                                                 ` Nick Roberts
2005-01-05 20:04                                                   ` Warren W. Gay VE3WWG
2005-01-06  0:32                                                     ` Nick Roberts
2005-01-06  1:29                                                   ` Wes Groleau
2005-01-06 11:03                                                     ` Dmitry A. Kazakov
2005-01-05  9:39                                             ` Dmitry A. Kazakov
2005-01-05 11:20                                               ` Warren W. Gay VE3WWG
2005-01-05 12:18                                                 ` Dmitry A. Kazakov
2005-01-05 14:39                                                   ` Warren W. Gay VE3WWG
2005-01-05 17:16                                                     ` zest_fien
2005-01-05 19:44                                                       ` Larry Kilgallen
2005-01-04 20:09           ` Nick Roberts [this message]
2005-01-05 10:19             ` Dmitry A. Kazakov
2005-01-05 18:33               ` Nick Roberts
2005-01-05 20:15                 ` Dmitry A. Kazakov
2004-12-31 18:47     ` Nick Roberts
2004-12-31 20:36       ` Warren W. Gay VE3WWG
2005-01-04 18:22         ` Nick Roberts
2005-01-05  5:12           ` Warren W. Gay VE3WWG
2005-01-05 18:02             ` Nick Roberts
2005-01-05 19:55               ` Warren W. Gay VE3WWG
2005-01-06  0:57                 ` Nick Roberts
2005-01-06  2:34                   ` Warren W. Gay VE3WWG
  -- strict thread matches above, loose matches on Subject: below --
2005-01-05 12:14 Mike Brenner
2005-01-05 18:04 ` Warren W. Gay VE3WWG
replies disabled

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