******************************************************************************* **** CPS 2.9 README Documentation **** ******************************************************************************* CPS is a package of software tools that makes it easy to split a computational task, referred to as a job, among a set of processes distributed over one or more computers. Apart from considerations of speed, the set of processes will operate identically whether on a single computer or spread across multiple computers. Each process runs a program written by the user. These are called User Processes. The primary tools consist of a Job Manager program, a Shared Memory Manager program, and a set of subroutines, callable from either Fortran or C. The Job Manager (JM) starts the User Processes and Shared Memory Managers, provides common support services, handles errors that occur, and stops all processes when the job is over. The Shared Memory Manager (SHM) directs messages from User Processes to the JM or from User Processes to other User Processes residing on other computers. One SHM is started on each computer where there is at least one User Process. The subroutines provide mechanisms for interprocess communication, remote subroutine calls, and synchronization. These tools support a wide range of models of parallel programming, including remote subroutine calls and message passing. ***************************************************** DART Bootstrap Services (dbs) is the first component of run-control for the DART data acquisi- tion system, though it has potential usefulness as a tool in other applications. dbs is an rlogin session multiplexer. It allows a user, running a single program, to start up any num- ber of remote login sessions, feed shell commands to them, and collect the output from the sessions into one or more logfiles. From dbs, a user can issue commands to these rlogin sessions in one of two ways: either by issuing a dbs command with arguments indicating the session and the actual command, or by first attaching to a session and then issuing the command directly. In the latter case, a user is attached to the session interactively so it appears just like an rlogin session - dbs becomes transparent. When finished with this interactive mode, the user can escape back to dbs and attach to a different session if so desired. The basic commands allow for creating sessions on remote nodes, issuing commands within a session without attaching to it, attaching to a session, and stopping all processes within a session. The program can be driven by commands from a file. The DBS products consists of two parts, the dbs daemon, explained above and the dbs client which interfaces to the daemon, refered to as "dbsc". The bootstrap client communicates to the daemon in one of two modes: command mode or trans-parent (attached) mode. Commands issued in command mode are interpreted by the client and the daemon, while input and output in the transparent mode is passed between the client and the remote rlogin session with no interpretation. In this mode, output from the session is buffered in the daemon and optionally logged to a file. In transparent mode, the local terminal is placed in a "raw" mode so that the local terminal driver does not interpret control characters, etc. - they are passed on to the remote rlogin pseudo-terminal driver. Also, in this mode output from the remote session is copied to the local standard output. In other words, in transparent mode the daemon and client are "invisible" to the rlogin session except for one exception: if the escape character is typed in, the session is detached, the client and daemon switch over to command mode, and output from the rlogin session is once again buffered by the daemon. Supported Platforms Daemon is supported on IRIX 5.3 Client is supported on IRIX 5.3 ****************************************** FRC Product Name: frc (bundle) Product Version: 1.0 Date: October 7, 1994 Contents: vx_frcv2.2, fb_frcv2.1, fbremv1.4 DESCRIPTION ----------- This is a "bundle", containing three separate but related products: vx_frc, fb_frc, and fbrem. The products are related in the following way: fbrem requires fb_frc, and fb_frc requires vx_frc. There are three archive files then, one for each product. See the README files in each archive for all pertinent information about a product, including its compatibility requirements regarding the product it depends upon, if any. A release of the "bundle" will contain compatible releases of each product which have been tested together. The bundle's version number will increment whenever ANY or ALL products within the bundle change. The FASTBUS Readout Controller (FRC) is an embedded processor FASTBUS board based on the LR33000 embedded CPU. It was developed by the Fermilab Computing Division's Data Acquisition Engineering Department. It is now sold commercially by Bi-Ra Systems, under the DOE Technology Transfer Program. This product is the software needed to take advantage of this board's capabilities. frc is a bundle of software with three components: vx_frc, fb_frc and fbrem. vx_frc is the VxWorks Board Support Package (BSP) which is the necessary basic operating software for the FRC board, under which everything else runs. VxWorks is a proprietary real-time operating system, and its use requires appropriate license from its producer, Wind River Systems, Inc. fb_frc is an implementation of the IEEE FASTBUS Standard Routines for the FRC board. fbrem is a client library which provides transparent access to fb_frc over a network via Sun's RPC (Remote Procedure Call) protocol, supported on most UNIX platforms. With an appropriate linking procedure, it should also run on VAX/VMS systems with appropriate third-party networking software. This may be supported in a future release. *********************************************** JUKE Product Name: juke Product Version: v5_0 Abstract The "juke" product is an extensible software package for interfacing with tape, CD, and other media jukeboxes, (however since it currently is used only for tape, media is referred to as tape throughout) This makes it ideal for controlling tape jukeboxes for data analysis, backups, etc. where tape mounts are needed at times when it is inconvenient for human operators to perform them, or for automated labeling of batches of tapes etc. The "juke" package supports controlling multiple jukeboxes per host, multiple hosts per jukebox, etc. with control being shared over a network. "juke" controls only the jukebox media handling mechanism itself, and not any media drives, etc. contained within the jukebox. It deals with multiple jukebox types by treating them all as having simple, abstract components; the tapes themselves, slots to hold the tapes, drives which can play, read, or write the tapes, and "mailbox slots" which can be uncovered for people to take tapes in and out of the jukebox, or covered for the jukebox to be able to manipulate the tapes. A lookup table of tapes is maintained, by a small dbm(3) database, however only 3 short interface routines need to be written to add in interface to an existing tape database. "juke" consists of 5 main binary deliverables, an RPC daemon process which actually controlls the jukebox, an interactive RPC client which allows command line interface to the control of the jukebox, an API library which provides program callable access to jukebox control, and 2 SCSI pass-through drivers, one for Sun Microsystems Solaris systems, and one for AIX 3.* systems. It also comes with an extensive user guide with numerous examples, and an API reference describing the library calls. "juke" is currently being used to control Summus, Exabyte, and DEC DLT media changers at Fermilab. Documentation: User documentation is found in "doc/jukeuser.latex" in the distribution, or via WWW at: http://www.fnal.gov/docs/products/juke Contents: A file list is in the file Manifest. Platforms: juke can currently run Exabyte and DEC tape robots of various sizes on systems with SCSI pass-through devices, and Summus Carousels via serial ports. It provides a framework for adding other device types easily. This has been used on AIX, IRIX, and SunOS systems as an RPC client, and on SunOS 5.x, IRIX 4.x IRIX 5.x and AIX 3.2 systems as an RPC server. Server and client code for VMS exist, but haven't been tested for several releases. Installation instructions can be found in the user documentation. Special installation instructions for the AIX pass-through driver are in the file jukedd/INSTALL in the distribution. Special installation instructions for the Solaris pass-through driver are in the file sst/INSTALL in the distribution. *********************************************** MXYZPTLK ("mix-yezz-pitel-ick") > Product name: MXYPTLK > Version: 3.1 > Documentation: mxyzptlk.ps > List of files: The primary file is a compressed tar file which can be installed under Unix. (See instructions below.) Upon installation, three subdirectories are created: ./demos, ./include, ./docs, and ./src The contained in these directories are as follows: docs: mxyzptlk.ps.Z demos: CMapTest.cc Hermite.cc Inverse_A_Test.cc Inverse_B_Test.cc Inverse_C_Test.cc Inverse_D_Test.cc Inverse_E_Test.cc Lie_A_Test.cc Lie_B_Test.cc Lie_C_Test.cc Lie_D_Test.cc Lie_E_Test.cc Lie_F_Test.cc Lie_G_Test.cc Lie_H_Test.cc Lie_I_Test.cc Lie_K_Test.cc Lie_L_Test.cc Limit_A_Test.cc Limit_B_Test.cc Limit_C_Test.cc Limit_D_Test.cc Limit_E_Test.cc Limit_F_Test.cc Limit_G_Test.cc Limit_H_Test.cc Makefile SVDTest.cc concattest.cc coordTest.cc dfr.cc ev.cc evaltest.cc g5.cc hptest.cc lbtest.cc orthogonalTest.cc pbtest.cc survey.cc include: Barnacle.hxx CLieOperator.hxx Distribution.hxx JL.hxx JLC.hxx Jet.hxx JetC.hxx JetVector.h LieOperator.hxx ML.hxx Map.hxx MathConstants.hxx Matrix.hxx PhysicsConstants.hxx Vector.h c_erf.hxx cc_erf.hxx complexAddon.hxx dlist.hxx f2c.h menu.hxx mxyzptlk.hxx mxyzptlk.rsc slist.hxx src: Barnacle.cc CLieOperator.cc Distribution.cc JL.cc JLC.cc Jet.cc JetC.cc JetCFcns.cc JetFcns.cc JetVector.cc LieOperator.cc ML.cc Makefile Matrix.cc Matrix_SVD.cc Vector.cc binomcoeff_recursive.c c_erf.cc cc_erf.cc cg.c cwerf64.c d_sign.c dlist.cc gcd.c menu.cc mod2pi.c mygaussj.cc nearint.c nexcom.cc normalForm.cc parsef.c rg.c slist.cc strequals.c > Platforms: Unix is the principal platform. The software has been used on DEC/VMS and DOS/Windows platforms with only minor modifications, prompted by the compilers. > Installation Under Unix, first uncompress mxyzptlk.tar.Z and > and build: then enter "tar xf mxyzptlk.tar". The subdirectories will be automatically created and files loaded into them. The Makefile can be used to create the library, libmxyzptlk.a, which is built from the files in the src subdirectory. The user can then build demo files by linking with libmxyzptlk.a. > Example programs: Are contained in the demos subdirectory. > Dependencies: None. > Acknowledgements: Thanks to James Holt for his contributions ****************************************************** NEDIT NEdit V4.0.1 3/21/96 NEdit is a GUI style plain-text editor for X/Motif systems. It is very easy to use, especially for those familiar with the Macintosh or MS Windows style of interface, combining full use of the mouse and window manager, with keystroke efficiency and a full complement of powerful editing commands. Features - Efficient, proven command set - Very complete functionality. NEdit is the primary editor for thousands of Unix and VMS programmers - Thorough consistency with Motif, MS Windows, and Macintosh conventions - Designed for intensive use: fast response time, menu and dialog shortcuts, streamlined interaction - Multi-level undo - Learn/replay - 100% GUI from the ground up - True multi-window, fully graphical design - Mouse based editing - Cut and Paste with other X Windows/Motif programs, full compatibility with all X and Motif selection and text interchange styles - Secondary, quick-action, selections - Rectangular selection mode - Easy to learn - Just point and type - Capabilities are presented clearly in top level menus - Comprehensive on-line help - No special knowledge of X Windows required, all important options can be set from within the program - Features for programmers - Auto-indent - Block indentation adjustment - Parenthesis flashing and matching - Find lines directly from compiler error output - Emulated tabs - Unix ctags support - Client/Server mode for integration with software development tools - Easy installation - Self contained single executable file - Pre-built, tested executables available for Silicon Graphics, Sun (Solaris & SunOS), HP, OSF/1, DEC Ultrix, IBM AIX, Linux, and VMS systems Mark Edel, m/s 234 Fermi National Accelerator Laboratory P.O. Box 500 Batavia, IL 60148 (708)840-2496 edel@fnal.gov