×

System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling

  • US 5,179,702 A
  • Filed: 06/11/1990
  • Issued: 01/12/1993
  • Est. Priority Date: 12/29/1989
  • Status: Expired due to Term
First Claim
Patent Images

1. An integrated software architecture for controlling a highly parallel multiprocessor system having multiple tightly-coupled processors that share a common memory, the integrated software architecture comprising:

  • control means for distributively controlling the operation and execution of a plurality of multithreaded programs in the multiprocessor system by executing a symmetrically integrated multithreaded operating system program on one or more of the processors that has an anarchy-based scheduling model for scheduling one or more processes and resources associated with each multithreaded program for execution on one or more of the processors, each processor having access to a single image of the operating system program stored in the common memory that operates on a common set of operating system shared resources, the operating system programming means comprising;

    kernel means for processing multithreaded system services such that any one or more of the system services can be executed concurrently by multiple processors, the system services including;

    parallel process scheduler means for scheduling multiple processes into one or more processors according the anarchy-based scheduling model,parallel memory scheduler means for allocating space in the common memory among one or more processes scheduled for execution in one or more of the processors, andsupport means for providing accounting, control, monitoring, security, administrative and operator information about any one or more of the processors;

    input/output means for processing distributed, multithreaded input/output services such that any one or more of the input/output services can be executed concurrently by multiple ones of the processors and a plurality of input/output resources associated with the multiprocessor system, the input/output resources including a plurality of peripheral devices attached to the multiprocessor system via a plurality of external interfaces, the input/output services includingfile management means for managing the external storage of files containing both data and instructions for the multithreaded programs,input/output management means for distributively processing input/output requests from the processors to the peripheral devices,resource scheduler means for allocating the input/output resources to the processes so as to optimize the usage the input/output resources of the multiprocessor system, andnetwork support means for supporting input/output requests to other remote processors interconnected with the multiprocessor system; and

    multithreaded interface library means for interfacing requests to a plurality of common multithreaded object code files stored in the common memory for performing standard programming library functions; and

    interface means operably associated with the control means for interfacing between one or more developers and users of the multithreaded programs and the control means so as to present a common visual format for all output representations and input commands for the operating system program and a plurality of program development tools that comprise an integrated parallel user environment for providing compilation, execution and debugging of the multithreaded programs.

View all claims
  • 18 Assignments
Timeline View
Assignment View
    ×
    ×