From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Bill Findlay Newsgroups: comp.lang.ada Subject: Re: Anti-Ada FUD (rant) Date: Mon, 23 Sep 2013 13:54:43 +0100 Message-ID: References: <2f813569-5ff8-4c20-a5ab-8538e6514906@googlegroups.com> <6a978d1c-1922-448b-91f7-cf8a19eab1fd@googlegroups.com> <1lgdqz079ogp5.1ti8931i9me3x$.dlg@40tude.net> <8203a0cd-5238-4086-8ca0-1c6c1b3fec09@googlegroups.com> <1ixhazoag8y0l.4mpw6pmi83xm.dlg@40tude.net> <51a27fa6-027d-4655-a78c-6a582811e23f@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Trace: individual.net Ch0T/inuTbzd0P8N/ZMGwAII1ssQz28tOA3wmjly3h2qOXA3mF Cancel-Lock: sha1:ijguyY2/T611h2FBiFYNmX/XWV4= User-Agent: Microsoft-Entourage/12.36.0.130206 Thread-Topic: Anti-Ada FUD (rant) Thread-Index: Ac64XBKqW51uhT9FQ0SPILtMT1+JBQ== Xref: news.eternal-september.org comp.lang.ada:17243 Date: 2013-09-23T13:54:43+01:00 List-Id: On 23/09/2013 13:16, in article 51a27fa6-027d-4655-a78c-6a582811e23f@googlegroups.com, "Peter Brooks" wrote: > On Monday, 23 September 2013 11:39:09 UTC+2, Bill Findlay wrote: >> >>> Fork/exec represent a unique combination of total disregard to efficiency >>> with violation of practically any known principle of good software design. >> >> Now there I have to agree with the UNIX critics. >> > Why? I worked with a number of operating systems before encountering unix, and > I've seen a few since. The setup and tear-down work involved with launching > processes was a massive overhead that slowed things down and added very little > value. Fork-exec, on the other hand, is quick because the child process > inherits the environment, which has many other advantages - security, for > example, is resolved at login and then inherited, similarly with I/O. Inheriting (some subset of) the parent context is fine. > What's your objection to it? What dispatching system works better? It duplicates the parent program. It should allow the program to be run to be specified as part of the fork. Postponing that to a following exec imposes costs that are very often unnecessary, and it can lead to race conditions in establishing the new running program's context. > What particular principles of software design does the mechanism violate? Unnecessary coupling. -- Bill Findlay with blueyonder.co.uk; use surname & forename;