home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.sources.unix
- From: pleierc@informatik.tu-muenchen.de (Christoph Pleier)
- Subject: v27i174: distributed-c-2.1 - Distributed C Development Environment, V2.1, Part00/18
- Message-id: <1.756634932.28500@gw.home.vix.com>
- Sender: unix-sources-moderator@gw.home.vix.com
- Approved: vixie@gw.home.vix.com
-
- Submitted-By: pleierc@informatik.tu-muenchen.de (Christoph Pleier)
- Posting-Number: Volume 27, Issue 174
- Archive-Name: distributed-c-2.1/part00
-
- [ i edited several files in this distribution to remove ^G characters since
- not all the gateways that handle this newsgroup can handle nonprintable
- characters. i also had to remove one binary; apparently "make clean" had
- not been run before this was tarmailed to me. finally, i note with concern
- that several Makefiles include nonstandard "include" directives, which will
- work on System V "augmented" make(1)'s but not on BSD's make(1). to fix
- this you can do something like this after unpacking:
-
- perl -pi.bak -e '$_ = ".include \"$1\"\n" if /^include (.*)\n$/' \
- `find . -name Makefile\* -print`
-
- warning: don't type the above command unless you understand what it does!
- (and especially do not type it outside the directory you unpack these
- sources in!)
-
- --vix ]
-
- The Distributed C Development Environment was developed at Technische
- Universitaet Muenchen, Germany, at the chair of Prof. Dr. J. Eickel and is
- a collection of tools for parallel and distributed programming on single-
- processor-, multiprocessor- and distributed-UNIX-systems, especially on
- heterogenous networks of UNIX computers. The environment's main purpose
- is to support and to simplify the development of distributed applications
- on UNIX networks. It consists of a compiler for a distributed programming
- language, called Distributed C, a runtime library and several useful tools.
-
- The programming model is based on explicit concurrency specification in the
- programming language Distributed C, which is an extension of standard C.
- Distributed C makes possible the common programming in C together with the
- user-friendly programming of process management, i. e. the specification,
- creation, synchronization, communication and termination of concurrently
- executed processes.
-
- The Distributed C Development Environment supports and simplifies the dis-
- tributed programming in several ways:
-
- o Development time is reduced by checking Distributed C programs for
- errors during compilation. Because of that, errors within communication
- or synchronization actions can be easier detected and avoided.
- o Programming is simplified by allowing the use of simple pointer types
- even on loosely-coupled systems. This is perhaps the most powerful
- feature of Distributed C. In this way, dynamic structures like linked
- lists or trees can be passed between processes elegantly and easily -
- even in heterogeneous networks. Only the anchor of a dynamic structure
- must be passed to another process. The runtime system automatically
- allocates heap space and copies the complete structure.
- o Developement is user-friendly by supporting the generation and
- installation of the executable files. A special concept was developed
- for performing the generation and storage of binaries by local and
- remote compilation in heterogeneous UNIX-networks.
- o Programming difficulty is reduced by software-aided allocating processes
- at runtime. Only the system administrator needs to have special knowledge
- about the target system's hardware. The user can apply tools to map the
- processes of a Distributed C program to the hosts of a concrete target
- system.
- o Execution time is reduced by allocating processes to nodes of a network
- with a static load balancing strategy.
- o Programming is simplified because singleprocessor-, multiprocessor- and
- distributed-UNIX-systems, especially homogeneous and heterogeneous UNIX-
- networks can be programmed fully transparently in Distributed C.
-
- The environment runs on the following systems:
-
- o Sun SPARCstations (SunOS),
- o Hewlett Packard workstations (HP/UX),
- o IBM workstations (AIX),
- o IBM ATs (SCO XENIX, SCO UNIX, LINUX),
- o Convex supercomputers (ConvexOS),
- o Cray supercomputers (Unicos),
- o homogeneous and heterogeneous networks of the systems as mentioned above.
-
- Moreover the implementation was designed for the use on Intel iPSC/2s.
-
- The Distributed C Development Environment source code is provided "as is"
- as free software and distributed in the hope that it will be useful,
- but without warranty of any kind. See the file 'README' for details.
-
- pleierc@informatik.tu-muenchen.de (Christoph Pleier)
-