[comp.lang.ada] Operating Systems in Ada

ecragg@GMUVAX.GMU.EDU ("EDWARD CRAGG") (10/23/89)

From: wytten@UMN-CS.CS.UMN.EDU  (Dale R. Wyttenbach)
>I would like the topic to be either "writing operating systems in ADA", or 
>"why ADA is not appropriate for writing operating systems".  I'll know
>which when I'm through writing it ;-)

    The question is really whether modern software engineering practices
    and high-level languages are appropriate for writing operating systems.
    I know of three examples where they weren't--one in COBOL, one in
    Pascal, and one in CMS-2--and none where they were.  Note that I'm
    excluding C as a high-level language in this context, although
    performance of C-based operating systems has been generally poor.
    The problems with writing an OS in an HOL are as follows:
        1.  The layering inherent in modern software engineering
            practices generally leads to poor performance.
        2.  Most hardware interfaces require a "handshake" protocol
            with timing constraints.  This requires a "coroutine"
            approach on the software side.  Except for OO languages,
            support to coroutine approaches is minimal in modern HOLs.
        3.  It's difficult to program in an HOL and gain reliable
            performance.  You generally run into special cases that
            take a long time.  That is unacceptable in an OS, which must
            provide guaranteed performance for many service calls.

Harry Erwin crash!pro-novapple!herwin or herwin@pro-novapple.cts.com

mitchell@community-chest.uucp (George Mitchell) (10/25/89)

In article <8910231246.AA06300@ajpo.sei.cmu.edu> ecragg@GMUVAX.GMU.EDU ("EDWARD CRAGG") writes:
>    The question is really whether modern software engineering practices
>    and high-level languages are appropriate for writing operating systems.
>    I know of three examples where they weren't--one in COBOL, one in
>    Pascal, and one in CMS-2--and none where they were.

I believe that the first (and certainly not the only) success was the
Burroughs Master Control Program (MCP) written in the 70's for the B3500
(and other) processors using a proprietary version of ALGOL.
--
/s/ George   vmail: 703/883-6029
email:  mitchell@community-chest.mitre.org    [alt: gmitchel@mitre.arpa]
snail:  GB Mitchell, MITRE, MS Z676, 7525 Colshire Dr, McLean, VA  22102