comp.lang.ada
 help / color / mirror / Atom feed
From: "Marin David Condic" <dont.bother.mcondic.auntie.spam@[acm.org>
Subject: Re: Ada Operating System
Date: Thu, 7 Mar 2002 10:48:56 -0500
Date: 2002-03-07T15:48:58+00:00	[thread overview]
Message-ID: <a6825a$75c$1@nh.pace.co.uk> (raw)
In-Reply-To: o2td8ug1chantij2e6j80kk56mrafp6e78@4ax.com

"James Ross" <rem.jr@rem.webross.com> wrote in message
news:o2td8ug1chantij2e6j80kk56mrafp6e78@4ax.com...
>
> Even this alone is a fairly tall order to build from scratch, let
> alone everything else that is envisioned for AdaOS on their site.
> Using GNAT is definitely the way to go but it does introduce a
> somewhat "chicken and the egg" problem with the build / link / execute
> process;  I believe there are issues with the GNAT runtime as well as
> getting a executable image as these are platform dependent.  (I might
> be wrong about this!)
>

Sure. That's a lot to get going. But the thing is, (as you say, looking at
the AdaOS website) if you get too ambitious and bite off more than you can
chew, it will just remain A Wonderful Idea & never get too far. I'd think
that what I suggested as a starting point might be an achievable goal by a
small handful of hobyists & all of the rest of the noble Devoutly To Be
Desired Results could be solidified & added at some later point. (The world
changes along the way & entirely new directions might get going, right?) A
bootstrap & scheduler that could execute some toy programs would provide
something hobyists could start to play with & provide a starting point for
something that might actually be a product that could be used commercially.
It gets the ball rolling.

As far as GNAT goes, I seem to recall that there was a "Gnat No Runtime" at
one point & maybe the compiler can be used to produce code that doesn't rely
on a runtime if you stick to some subset of the language. I just don't
know - it would have to be investigated. (Eventually, you implement the
runtime you need - some version of Posix calls IIRC, if you'd want to just
use Gnat as is.) I never tried to get pure (by which I mean "no calls to any
runtime") code out of GNAT, but I'll bet it can be done.

Another possibility would be to utilize something like RTEMS to provide the
RTK & then implement the rest of the OS on top of that - using what you need
and discarding the rest.

Of course, to get a bootstrap & kernel going, you'd need a really capable
linker. You have to be able to control where things go in memory, etc. if
you want to get right down to the bare silicon. I don't know how capable the
standard PC linker is (never had cause to investigate) so you might need to
go to some other tool. I suspect that a solution does exist - it would just
need to be identified.


>
> Yes, the real lure is to end up with an OS on par with Linux / Windows
> / Mac but somehow better.  And to have hard real-time functionality
> built is just one thing on the path to being better.
>
Its commonly observed when this topic comes up that "realtime" and
"workstation" often can't live in the same universe at the same time. Yet
there are folks making money by providing realtime extensions to popular
operating systems. What if the TBD-OS in Ada were to have just one single
process that could be designated "realtime" and it runs at the priority of
the OS (or higher)? You say "Normal usage is pretty much like Windows or
Linux processes - round-robin or whatever scheduling and no guaranteed
latencies. But *if* you create The Magical Process (and have the appropriate
permissions) then The Magical Process gets to take over & just relies on the
OS for certain services that can be built to be deterministic. It gives up
spare time to the rest of the world but as soon as its ready to run, it
runs. The rest is up to you..."

I think if you had that capability, then TBD-OS would offer something to the
market that isn't really there already - except by patches & kludges. It
would offer Product Distinction & would satisfy a real-world need.


> I would suggest (or if it were my gig, as you say!) to take the
> following pieces of GPL'd code: The Linux kernel, one of the Linux
> real-time extensions, the GNU tools and GNAT and then design the AdaOS
> API's (kernel, etc..) by creating a, I believe it is called a "thick
> binding" to the underlying Linux OS. Then it would be possible to
> begin writing tools and such for the new OS.  Then slowly replace the
> Linux kernel with a new and improved (?) Ada kernel.
>
I wouldn't go with the Linux kernel for a handful of reasons. One being that
the objective ought to be to have a truly Ada OS - one that isn't "just like
everyone else". Why be hamstrung with the past? Starting with Linux (even if
it was just a translation of the kernel into Ada) is saying "Me Too!!!" when
it ought to be saying "I'm Better!!!"

Going with RTEMS might be a way to start. Building it from
bottom-dead-center might be possible. It might be worth identifying
someone's OS textbook as a model on which to build.  Whatever would be
underlying it I don't think it would be an impossible goal to shoot for
cobbling together whatever compiler/linker stuff was needed & building a
bootstrap & scheduler. Set some minimal objectives and get those achieved.

You want to team up & go tilting at windmills? :-) I may be able to find
some time for a side project. (Although I've already got a half-dozen or so
going already & none of them making fast enough progress! :-)

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/





  reply	other threads:[~2002-03-07 15:48 UTC|newest]

Thread overview: 185+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-19 19:39 Ada Operating System Dann Corbit
2002-02-19 21:23 ` Adrian Knoth
2002-02-19 21:58 ` chris.danx
2002-02-19 22:40   ` Hugues Jerome
2002-02-20  0:38     ` Dann Corbit
2002-02-20 14:47       ` Joel Sherrill
2002-02-20 19:09         ` Hyman Rosen
2002-02-21 15:33           ` tony gair
2002-02-21 17:46             ` Chad R. Meiners
2002-02-21 17:57             ` Larry Kilgallen
2002-02-22  0:34               ` tony gair
2002-02-22  2:23                 ` Larry Kilgallen
2002-02-21 22:05             ` David Starner
2002-02-22  9:08             ` Adrian Hoe
2002-02-22 20:37               ` David Starner
2002-02-23  4:44                 ` Adrian Hoe
2002-02-23  6:10                   ` Mark Biggar
2002-02-23 18:04                   ` Richard Riehle
2002-02-23 18:07                   ` David Starner
2002-02-23 20:30                     ` Larry Kilgallen
2002-02-24  2:42                       ` David Starner
2002-02-24  4:27                       ` Larry Kilgallen
2002-02-24 17:15                         ` David Starner
2002-02-23 19:01                   ` Darren New
2002-02-25 13:51                   ` Marin David Condic
2002-02-26  0:47                     ` Larry Kilgallen
2002-03-05 14:16                       ` Marin David Condic
2002-02-25 17:56                   ` Pascal Obry
2002-02-25 20:01                   ` Randy Brukardt
2002-02-25 22:08                     ` Ted Dennison
2002-02-23 13:32                 ` Wannabe h4x0r
2002-02-23 13:53                   ` Jeffrey Creem
2002-02-25 18:00                     ` Pascal Obry
2002-02-23 14:05                   ` Samuel Tardieu
2002-02-23 14:31                   ` Florian Weimer
2002-02-23 20:09                     ` Wannabe h4x0r
2002-02-25 22:06                     ` Wes Groleau
2002-02-25  0:54                   ` Adrian Hoe
2002-02-25 12:52                   ` Ian S. Nelson
2002-02-23 16:41               ` Nick Roberts
2002-02-23 17:57               ` Richard Riehle
2002-02-23  3:11             ` Robert Dewar
2002-02-23  3:36               ` Dann Corbit
2002-02-23  4:42                 ` Larry Kilgallen
2002-02-25 14:05                   ` Marin David Condic
2002-02-26  0:48                     ` Larry Kilgallen
2002-02-23 18:12                 ` David Starner
2002-02-23 16:41           ` Nick Roberts
2002-02-20 13:48     ` Stephen Leake
2002-02-20  1:06 ` eunux
2002-02-23 16:41 ` Nick Roberts
2002-02-25 14:28   ` Marin David Condic
2002-02-27  5:23     ` James Ross
2002-03-05 14:28       ` Marin David Condic
2002-03-07  6:05         ` James Ross
2002-03-07 15:48           ` Marin David Condic [this message]
2002-03-08 16:03             ` Wes Groleau
2002-03-08 16:31               ` Marin David Condic
2002-03-09  9:46                 ` David Starner
2002-03-09 14:43                   ` Marin David Condic
2002-03-11 14:19                     ` Wes Groleau
2002-03-11 15:24                       ` Hyman Rosen
2002-03-09 15:40                 ` Wes Groleau
2002-03-09 15:52                   ` Marin David Condic
2002-03-09 17:54                 ` tmoran
2002-03-09 18:20                   ` Marin David Condic
2002-03-08 20:31               ` Dann Corbit
2002-03-09 15:42                 ` Wes Groleau
2002-03-09 16:34               ` Ian S. Nelson
2002-03-09 18:15                 ` Marin David Condic
2002-03-10  6:44                   ` Hyman Rosen
2002-03-10 14:37                     ` Larry Kilgallen
2002-03-11  5:03                       ` Hyman Rosen
2002-03-11 14:49                         ` Wes Groleau
2002-03-11 15:30                           ` Hyman Rosen
2002-03-11 17:30                             ` Wes Groleau
2002-03-11 17:45                               ` Hyman Rosen
2002-03-11 19:58                                 ` Wes Groleau
2002-03-12 17:42                         ` Warren W. Gay VE3WWG
2002-03-12 20:39                           ` Wes Groleau
2002-03-10 15:03                     ` Matthew Woodcraft
2002-03-10 19:40                     ` David Starner
2002-03-11  5:06                       ` Hyman Rosen
2002-03-11 15:11                         ` Marin David Condic
2002-03-18 16:18                           ` Tucker Taft
2002-03-18 17:24                             ` Marin David Condic
2002-03-25 17:25                             ` Darren New
2002-03-25 19:36                               ` Marin David Condic
2002-03-26  6:34                               ` James Ross
2002-03-26 13:56                                 ` Marin David Condic
2002-03-26 17:55                                 ` Darren New
2002-03-11 14:47                     ` Wes Groleau
2002-03-11 15:16                       ` Hyman Rosen
2002-03-11 16:04                         ` Marin David Condic
2002-03-12 17:45                           ` Warren W. Gay VE3WWG
2002-03-11 14:57                     ` Marin David Condic
2002-03-11 14:39                 ` Wes Groleau
2002-03-13  1:03               ` Pam Kelly
2002-03-13  1:45                 ` Gary Scott
2002-03-13  7:27                   ` David Starner
2002-03-13 14:02                     ` Marin David Condic
2002-03-13 22:42                     ` Pam Kelly
2002-03-13 23:28                       ` Larry Kilgallen
2002-03-27  0:51                         ` Brian Catlin
2002-03-13 23:51                       ` Marin David Condic
2002-03-14 15:54                     ` Alfred Hilscher
2002-03-13 13:54                   ` Marin David Condic
2002-03-14 13:17                     ` Larry Kilgallen
2002-03-14 17:32                       ` Marin David Condic
2002-03-13 13:49                 ` Marin David Condic
2002-03-14  2:09                   ` Pam Kelly
2002-03-14 16:01                   ` Alfred Hilscher
2002-03-14 17:43                     ` Marin David Condic
2002-03-16  9:06                       ` DPH
2002-03-16  8:00                   ` James Ross
2002-03-16 16:52                     ` Marin David Condic
2002-03-17  3:40                       ` Rod Haper
2002-03-16 20:07                     ` Robert A Duff
2002-03-17 11:23                       ` Preben Randhol
2002-03-17 21:36                       ` James Ross
2002-03-17 22:12                         ` Darren New
2002-03-18  1:25                           ` James Ross
2002-03-18  3:26                             ` Darren New
2002-03-18  5:06                               ` James Ross
2002-03-18  5:12                                 ` Darren New
2002-03-18  7:14                                   ` James Ross
2002-03-20 10:03                               ` Mats Karlssohn
2002-03-19  6:20                             ` David Starner
2002-03-23  6:06                               ` James Ross
2002-03-23 12:34                                 ` Preben Randhol
2002-03-23 21:44                                   ` David Starner
2002-03-24  3:47                                 ` Larry Kilgallen
2002-03-25 19:00                                   ` Preben Randhol
2002-03-25 19:27                                 ` Marin David Condic
2002-03-26 16:25                                   ` Wes Groleau
2002-03-26 18:01                                     ` Marin David Condic
2002-03-27 13:32                                       ` Wes Groleau
2002-03-27 14:22                                         ` sk
2002-03-27 16:39                                           ` Darren New
2002-03-27 17:07                                             ` Marin David Condic
2002-03-28  4:40                                               ` tmoran
2002-03-28 14:43                                                 ` Marin David Condic
2002-03-28  5:25                                               ` sk
2002-03-28  4:34                                       ` James Ross
2002-03-28 14:37                                         ` Marin David Condic
2002-03-29 17:52                                           ` Darren New
2002-03-26 20:23                                 ` Larry Kilgallen
2002-03-28 13:25                                 ` Larry Kilgallen
     [not found]                                 ` <a7ntns$7hh$Organization: LJK Software <vEY3SfNlq6Uc@eisner.encompasserve.org>
2002-03-28 14:58                                   ` Marin David Condic
2002-03-29 11:29                                 ` Larry Kilgallen
     [not found]                                 ` <a7ntns$7hh$Organization: LJK Software <Aj0bpsr17AIQ@eisner.encompasserve.org>
2002-03-29 14:02                                   ` Marin David Condic
2002-03-27 20:22                               ` John R. Strohm
2002-03-19  6:22                       ` David Starner
2002-03-13 14:08                 ` Wes Groleau
2002-03-13 22:02                   ` Pam Kelly
2002-03-13 22:19                     ` Larry Kilgallen
2002-03-13 23:26                       ` Pam Kelly
2002-03-14  0:49                         ` Adrian Knoth
2002-03-14 13:14                         ` Larry Kilgallen
2002-03-14 17:49                           ` Marin David Condic
2002-03-15 16:41                             ` Aidan Skinner
2002-03-15 19:26                             ` Mark Biggar
2002-03-15 20:14                               ` Marin David Condic
2002-03-15  8:03                   ` Tarjei T. Jensen
2002-03-12  2:23             ` James Ross
2002-03-12 15:28               ` Marin David Condic
2002-03-13  5:52                 ` James Ross
2002-02-27 11:30 ` Jorge Real
2002-02-28  5:34   ` tmoran
2002-02-28  8:56     ` chris.danx
2002-02-28 14:23       ` Wes Groleau
2002-02-28 13:19     ` Georg Bauhaus
2002-02-28 14:19     ` Wes Groleau
2002-02-28 15:24       ` chris.danx
2002-02-28 15:34         ` Ian Wild
2002-02-28 16:23           ` chris.danx
2002-02-28 17:52             ` Dave Poirier
2002-02-28 17:57               ` Dave Poirier
2002-03-02  4:01               ` Chad R. Meiners
2002-02-28 18:32         ` Tom Moran
2002-02-28 17:47     ` Dave Poirier
2002-02-27 21:50 ` Ken Pinard
2002-02-28  2:38   ` Dave Poirier
2002-02-28 13:49   ` Wes Groleau
2002-03-11 11:56 ` Simon Wright
replies disabled

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