150 likes | 203 Views
Multiprocessor Systems. Outline. Separate Systems. Coordinated job Scheduling. Master/Slave Scheduling. Homogeneous Processor Scheduling. Multiprocessor Systems. To enhance throughput, reliability, computing power and parallelism, additional processors can be added to systems.
E N D
Multiprocessor Systems www.eITnotes.com
Outline • Separate Systems • Coordinated job Scheduling • Master/Slave Scheduling • Homogeneous Processor Scheduling www.eITnotes.com
Multiprocessor Systems • To enhance throughput, reliability, computing power and parallelism, additional processors can be added to systems. • In early multiprocessor systems the additional processors had specialized functions e.q I/O channels. • Later, multiprocessing systems evolved to include the concept of one large CPU and several processors. • These processors may perform quite sophisticated tasks, such as running a display. www.eITnotes.com
A more common type of multiprocessing is a system having two or more processors having equal power • Example • HIS 6180 • IBM 158MP • 168 MP www.eITnotes.com
There are various ways to connect and operate a multiprocessor system • Separate Systems • Coordinated job Scheduling • Master/Slave Scheduling • Homogeneous Processor Scheduling • These techniques differ in degree of scheduling sophistication. www.eITnotes.com
Separate Systems • Some systems, for example, IBM System/360 model, can be logically subdivided into two or more separate systems, each with one processor, some main memory, and other devices. • This is just like having two or more separate computing systems, all in the same room. • The advantage of this organization is that processors, memories and I/O devices can be easily, though manually, switched. • This configuration flexibility is useful if there are some jobs that requires the full complement of memory and/or I/O devices resources. • Alternatively, if one processor is being repaired, all the other resources can be pooled into one large system rather than be allowed to sit. www.eITnotes.com
Coordinated job Scheduling • A variation on the separate system multiprocessor technique is called coordinated job scheduling. • Which is also called Loosely coupled multiprocessing. • In this, each processor is associated with a separate system. When a job is arrives, it may be assigned to any system. • The assignments of a job to a system may be based on a variety of requirements and policies, such as assigning the job to the system with the lightest load. • To accomplish this balancing, all job scheduling must be coordinated. This may be done manually, by a special purpose computer ( Lawrence Radiation Laboratory) or by one of the actual processing system (as done on IBM’s OS/VS-2 Job entry system). www.eITnotes.com
Master/Slave Scheduling • The permanent assignment of the job to a system in the coordinate job scheduling technique, cannot handle short term balancing of resource demand. • In general multiprocessor system all memory and I/O devices are accessible to all processors. • Memory and I/O devices are assigned to the processes, not to the processors. • This is called the Tightly coupled multiprocessing. • The processors are assigned to execute processes as determined by the process scheduler – except that there are now multiple processors available for assignment. www.eITnotes.com
In master/slave scheduling technique, one processor maintains the status of all processes in the system and schedule the work of all the slave processors. • For example, the master processor selects a process to be run, finds the available processor and issue a start processor instruction. • The slave processor starts execution at the indicated memory location. When the slave encounters an exceptional event, such as an I/O request, it generates an interrupt to the master processor and stops to await further order. • Note that different slave processors may be assigned to a process at a different time. www.eITnotes.com
Following example shows In which manner multiple processors may be used for multiprogramming. Processor 1 Processor 2 Memory Processor 1 working on process 1 Processor 2 working on process 4 www.eITnotes.com
Homogeneous Processor Scheduling • The master/slave scheduling technique, besides being conceptually undemocratic, has several performance and operational disadvantages. Under heavy scheduling loads, the master processor may become overloaded and cause a major bottleneck. • A more democratic approach is to treat all processors equally, both master and slave is called homogeneous processor scheduling • Under such conditions, the processor scheduling is logically decentralized. A list of processes and their status are stored so as allow any processor to have access to the list e.q., a common shared area of memory is used. • Whenever a process is stopped due to I/O wait or time limit, etc.. Its processor goes to the process state list and update the process status and finds another process to run. www.eITnotes.com
Each processor uses the same scheduling algorithm to select the process to run the next. • If all processors are handled identically, no policy differences need exist with regard to a single processor or a multiprocessor operating system. www.eITnotes.com