comp.lang.ada
 help / color / mirror / Atom feed
From: Optikos <optikos@verizon.net>
Subject: Re: Why couldn't an operating system be written in ada
Date: Sat, 6 Apr 2019 21:32:00 -0700 (PDT)
Date: 2019-04-06T21:32:00-07:00	[thread overview]
Message-ID: <d4b4e527-9d29-436e-9db7-54780b7e9712@googlegroups.com> (raw)
In-Reply-To: <q8bla8$lmc$1@dont-email.me>

On Saturday, April 6, 2019 at 9:55:21 PM UTC-4, Nick Roberts wrote:
> On 10/01/2019 23:38, cenci.br@gmail.com wrote:
> > Em sábado, 13 de julho de 1996 04:00:00 UTC-3, Mark  McKinney  escreveu:
> >> It has been claimed that the capability to interface with other languages
> >> is a great asset to ada. Sometimes interfacing can be a tremendous
> >> liability. Besides the OS could perform most of work that the language
> >> runtime does. So why not build an OS in ADA?
> > 
> > Is this discussion still active ?
> 
> I have a little bit of a plan for this, but I must admit it is very 
> ambitious. The biggest problem I face is getting help, as well as my own 
> lack of skill in running these projects.
> 
> My current plan goes along these lines:
> 
> I am building a new Ada compiler that will use a new technology for 
> targeting machine architectures. The following is a simplification, but 
> it gives the gist of it.
> 
> 1. The compiler builds Ada source text into an intermediary code, called 
> 'PXC' (a kind of abbreviation for 'extended pseudo-code'). These PXC 
> files are distributed to the target machines. Each PXC file is a module, 
> and a complete program comprises many such modules (perhaps hundreds of 
> them, or even thousands).
> 
> 2. Each target machine itself has a program called the Realizor, which 
> generates a real executable file, comprising actual machine code for the 
> architecture of its own processor(s), from the complete set of PXC 
> modules that go to make up the program.
> 
> One of the big advantages of doing it this way is that global 
> optimisations, including inlining of cross-module calls, can be 
> performed by the Realizor. In addition, the Realizor can implement a 
> strategy of capturing profiling data (execution statistics) for the 
> program, and periodically re-realising it to yield still better 
> optimisations.
> 
> 3. Because of the way the Realizor works, all privilege level-changing 
> calls (e.g. into the kernel) can be removed. Security is, nevertheless, 
> fully maintained.
> 
> (I also intend the technology to remove all use of hardware paging; this 
> will be replaced by a more intelligent software-based segment-swapping 
> mechanism.)
> 
> 4. Because of 3 above, it is possible for the kernel and all the device 
> drivers and other low-level software to be PXC modules, mixed in by the 
> Realizor along with all the other PXC modules. This means that many 
> kernel calls can be inlined, effectively eliminating all call overhead 
> on them.
> 
> I believe these technologies would enable a dedicated piece of software, 
> running 24/7, to run significantly faster.
> 
> When you consider how important performance is on today's vast farms of 
> servers, that could be a pretty compelling reason for people to switch 
> from traditional operating systems.
> 
> All I have to do is to do it :-)
> 
> 
> 
> I'm hoping it could be a way of getting Ada back into the mainstream. We 
> all know in this forum that building future software in Ada, especially 
> server software, would be a big step towards making it more secure and 
> reliable.
> 
> PS: There's a lot more about this scheme that I would like to say, but I 
> don't want to turn this post into a dissertation, and I do want to get 
> to bed soon. If you have any burning questions, please ask.

Why can't LLVM be your PXC?  LLVM already is your PXC and already built out your Realizors for a plethora of ISAs.


  reply	other threads:[~2019-04-07  4:32 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-07-13  0:00 Why couldn't an operating system be written in ada Mark McKinney
1996-07-15  0:00 ` Nasser Abbasi
1996-07-15  0:00   ` Robert Dewar
1996-07-17  0:00     ` Randy Greene
1996-07-17  0:00   ` Hannes Haug
1996-07-15  0:00 ` David Wheeler
1996-07-15  0:00   ` Michael Levasseur
1996-07-25  0:00     ` Greg Harvey
1996-07-26  0:00       ` Kent Mitchell
1996-07-16  0:00   ` Poutanen Olavi
1996-07-15  0:00 ` Jon S Anthony
1996-07-15  0:00   ` Mark Eichin
1996-07-15  0:00   ` Brian Rogoff
1996-07-16  0:00   ` Jon S Anthony
2019-03-02 16:07   ` Optikos
2019-03-03 22:14     ` russ lyttle
2019-01-10 23:38 ` cenci.br
2019-01-10 23:54   ` Lucretia
2019-04-07  1:55   ` Nick Roberts
2019-04-07  4:32     ` Optikos [this message]
2019-04-07 10:35       ` Nick Roberts
2019-04-07 14:06         ` Optikos
2019-01-14 11:26 ` George Shapovalov
2019-02-25  2:25   ` russ lyttle
2019-03-09 18:43     ` Norman Worth
2019-02-25 21:56 ` Rabican
2019-02-26  8:46   ` Niklas Holsti
2019-02-26  9:30     ` Dmitry A. Kazakov
2019-02-26 23:32       ` lyttlec
2019-02-27  2:00         ` Dennis Lee Bieber
2019-02-27  6:20           ` russ lyttle
2019-02-27  8:26             ` Dmitry A. Kazakov
2019-02-27 13:54               ` russ lyttle
2019-02-27 15:55                 ` Dmitry A. Kazakov
2019-02-27 16:46                   ` russ lyttle
2019-02-27 23:52                   ` Randy Brukardt
2019-02-27  8:20         ` Dmitry A. Kazakov
2019-02-27 14:06           ` russ lyttle
2019-02-27 14:23             ` Niklas Holsti
2019-02-27 16:01             ` Dmitry A. Kazakov
2019-02-27 17:04               ` russ lyttle
2019-02-27 17:29                 ` Dmitry A. Kazakov
2019-03-09 18:46         ` Norman Worth
2019-02-26 23:13     ` lyttlec
2019-02-27 19:10       ` Shark8
2019-02-27 19:51         ` russ lyttle
2019-02-27 22:12           ` Niklas Holsti
2019-03-01 15:07             ` fabien.chouteau
2019-02-27 10:47 ` Patrick Jakubowski
2019-02-28  6:23   ` G. B.
2019-02-28  8:28     ` Simon Wright
  -- strict thread matches above, loose matches on Subject: below --
1996-07-15  0:00 Robert C. Leif, Ph.D.
1996-07-17  0:00 ` Mark McKinney
1996-07-20  0:00   ` Michael Feldman
1996-07-22  0:00     ` Theodore E. Dennison
1996-07-22  0:00       ` Larry Kilgallen
1996-07-30  0:00       ` Pascal Martin @lone
1996-08-01  0:00         ` Bob Kitzberger
1996-08-03  0:00           ` Pascal Martin @lone
1996-07-17  0:00 ` wfranck
1996-07-17  0:00 ` wfranck
1996-07-22  0:00   ` Felicia R. Rosemond (214)-462-5371 ple1 SE
1996-07-29  0:00     ` Wallace E. Owen
1996-07-15  0:00 Simon Johnston
1996-07-19  0:00 Marin David Condic, 407.796.8997, M/S 731-93
replies disabled

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