comp.lang.ada
 help / color / mirror / Atom feed
* Operating Systems in Ada
@ 1989-10-23 12:42 "EDWARD CRAGG"
  1989-10-25 13:23 ` George Mitchell
  0 siblings, 1 reply; 2+ messages in thread
From: "EDWARD CRAGG" @ 1989-10-23 12:42 UTC (permalink / raw)


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

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~1989-10-25 13:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1989-10-23 12:42 Operating Systems in Ada "EDWARD CRAGG"
1989-10-25 13:23 ` George Mitchell

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