Chapter 10 - M10_STAL6329_06_SE_C10.QXD 2/21/08 9:33 PM...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
M ULTIPROCESSOR AND R EAL -T IME S CHEDULING 10.1 Multiprocessor Scheduling Granularity Granularity Example:Valve Game Software Design Issues Process Scheduling Thread Scheduling 10.2 Real-Time Scheduling Background Characteristics of Real-Time Operating Systems Real-Time Scheduling Deadline Scheduling Rate Monotonic Scheduling Priority Inversion 10.3 Linux Scheduling Real-Time Scheduling Non-Real-Time Scheduling 10.4 Unix SVR4 Scheduling 10.5 Windows Scheduling Process and Thread Priorities Multiprocessor Scheduling 10.6 Summary 10.7 Recommended Reading 10.8 Key Terms, Review Questions, and Problems 452 CHAPTER M10_STAL6329_06_SE_C10.QXD 2/21/08 9:33 PM Page 452
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
10.1 / MULTIPROCESSOR SCHEDULING 453 This chapter continues our survey of process and thread scheduling.We begin with an examination of issues raised by the availability of more than one processor.A number of design issues are explored.This is followed by a look at the scheduling of processes on a multiprocessor system. Then the somewhat different design considerations for multiprocessor thread scheduling are examined.The second section of this chapter cov- ers real-time scheduling. The section begins with a discussion of the characteristics of real-time processes and then looks at the nature of the scheduling process. Two ap- proaches to real-time scheduling, deadline scheduling and rate monotonic scheduling, are examined. 10.1 MULTIPROCESSOR SCHEDULING When a computer system contains more than a single processor, several new issues are introduced into the design of the scheduling function. We begin with a brief overview of multiprocessors and then look at the rather different considerations when scheduling is done at the process level and the thread level. We can classify multiprocessor systems as follows: Loosely coupled or distributed multiprocessor, or cluster: Consists of a collec- tion of relatively autonomous systems, each processor having its own main memory and I/O channels.We address this type of configuration in Chapter 16. Functionally specialized processors: An example is an I/O processor. In this case, there is a master, general-purpose processor; specialized processors are controlled by the master processor and provide services to it. Issues relating to I/O processors are addressed in Chapter 11. Tightly coupled multiprocessing: Consists of a set of processors that share a common main memory and are under the integrated control of an operating system. Our concern in this section is with the last category, and specifically with issues re- lating to scheduling. Granularity A good way of characterizing multiprocessors and placing them in context with other architectures is to consider the synchronization granularity, or frequency of synchronization, between processes in a system. We can distinguish five categories of parallelism that differ in the degree of granularity. These are summarized in Table 10.1, which is adapted from [GEHR87] and [WOOD89].
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 02/10/2010 for the course EXTC 56 taught by Professor Stalling during the Spring '10 term at Abu Dhabi University.

Page1 / 42

Chapter 10 - M10_STAL6329_06_SE_C10.QXD 2/21/08 9:33 PM...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online