last modified: 01-APR-1988 | catalog | categories | new | search |

NESC9684 MULTITASKER.

MULTITASKER, Multitasking Kernel for C and FORTRAN Under UNIX

top ]
1. NAME OR DESIGNATION OF PROGRAM:  MULTITASKER.
top ]
2. COMPUTERS
To submit a request, click below on the link of the version you wish to order. Only liaison officers are authorised to submit online requests. Rules for requesters are available here.
Program name Package id Status Status date
MULTITASKER NESC9684/01 Arrived 01-APR-1988

Machines used:

Package ID Orig. computer Test computer
NESC9684/01 DEC VAX 11/780
top ]
3. DESCRIPTION OF PROGRAM OR FUNCTION

MULTITASKER implements a multitasking kernel for the C and FORTRAN programming languages that runs under UNIX. The kernel provides a multitasking environment which serves two purposes. The first is to provide an efficient portable environment for the development, debugging, and execution of production multiprocessor programs. The second is to provide a means of evaluating the performance of a multitasking program on model multiprocessor hardware. The performance evaluation features require no changes in the application program source and are implemented as a set of compile- and run-time options in the kernel.
top ]
4. METHOD OF SOLUTION

The FORTRAN interface to the kernel is identical in function to the CRI multitasking package provided for the Cray XMP. This provides a migration path to high speed (but small N) multiprocessors once the application has been coded and debugged. With use of the UNIX m4 macro preprocessor, source compatibility can be achieved between the UNIX code development system and the target Cray multiprocessor. The kernel also provides  a means of evaluating a program's performance on model multiprocessors. Execution traces may be obtained which allow the user to determine kernel overhead, memory conflicts between various  tasks, and the average concurrency being exploited. The kernel may also be made to switch tasks every cpu instruction with a random execution ordering. This allows the user to look for unprotected critical regions in the program. These features, implemented as a set of compile- and run-time options, cause extra execution overhead which is not present in the standard production version of the kernel.
top ]
5. RESTRICTIONS ON THE COMPLEXITY OF THE PROBLEM:
top ]
6. TYPICAL RUNNING TIME:
top ]
7. UNUSUAL FEATURES OF THE PROGRAM:
top ]
8. RELATED AND AUXILIARY PROGRAMS:
top ]
9. STATUS
Package ID Status date Status
NESC9684/01 01-APR-1988 Masterfiled Arrived
top ]
10. REFERENCES:
NESC9684/01, included references:
- Eugene D. Brooks III:
  A Multitasking Kernel for the C and Fortran Program Langage
  UCID-20167 (September 1984)
top ]
11. MACHINE REQUIREMENTS:
top ]
12. PROGRAMMING LANGUAGE(S) USED
Package ID Computer language
NESC9684/01 C-LANGUAGE
top ]
13. OPERATING SYSTEM UNDER WHICH PROGRAM IS EXECUTED:  UNIX.
top ]
14. OTHER PROGRAMMING OR OPERATING INFORMATION OR RESTRICTIONS

The multitasking kernel is written almost entirely in C with machine dependencies isolated in just a few routines. Thus, the kernel can be readily moved to new multiprocessors once a C compiler has been developed for the target machine. The kernel is compatible with the  UNIX symbolic debugger, dbx. The compatibility of the kernel with a  symbolic debugger is a very powerful feature which is lacking in most multitasking implementation.
top ]
15. NAME AND ESTABLISHMENT OF AUTHORS

          E.D. Brooks, III
          Lawrence Livermore National Laboratory
          P.O. Box 808
          Livermore, California 94550
top ]
16. MATERIAL AVAILABLE
NESC9684/01
File name File description Records
NESC9684_01.001 Information file 33
NESC9684_01.002 MULTITASKER source,... in UNIX TAR format 224
top ]
17. CATEGORIES
  • P. General Mathematical and Computing System Routines

Keywords: FORTRAN.