Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Scheduling Support for Concurrency and Parallelism in the Mach Operating System
Black D. Computer23 (5):35-43,1990.Type:Article
Date Reviewed: Sep 1 1991

The main data structure of the Mach scheduler includes 32 queues of runnable threads, called run queues. When a processor needs a new thread to run, it consults the run queues to get a thread according to a thread priority scheme. The priority of a thread is equal to its base priority plus an offset derived from recent processor usage. The system includes several provisions for fine-tuning the priority to adjust to special conditions. Each processor uses a round-robin scheduling scheme (with a time quantum) to minimize the number of context switches.

To achieve efficient synchronization and communication between threads, the Mach scheduler uses hints. Hints essentially help modulate (elevate as well as suppress) the priority and timing of execution of threads to maintain efficient communication and synchronization between the threads. Scheduling information specific to an application can be advantageously used to effectively carry out communication and synchronization among threads. The paper also discusses the results of two experiments on Encore Multimax, which show the performance benefits of hints.

The Mach kernel nicely isolates processor allocation policy and mechanism issues for a greater degree of flexibility. The kernel supports only processor allocation mechanisms; policy issues are relegated to a privileged server. This separation permits easy implementation of a wide array of processor allocation policies because the server can be configured easily as compared to the kernel.

I strongly recommend this paper for anyone who is interested in the details of the Mach scheduler. Black discusses implementation details of the mechanisms used in the Mach scheduler in depth. Although most of the paper is devoted to the Mach scheduler, it also discusses several general concepts such as programming models for parallel programming. The paper could have included more results of experiments with the Mach scheduler.

Reviewer:  M. Singhal Review #: CR123521
Bookmark and Share
 
Concurrency (D.4.1 ... )
 
 
Mach (D.4.0 ... )
 
 
Scheduling (D.4.1 ... )
 
 
General (D.4.0 )
 
 
Multiple Data Stream Architectures (Multiprocessors) (C.1.2 )
 
 
Process Management (D.4.1 )
 
Would you recommend this review?
yes
no
Other reviews under "Concurrency": Date
Integrated concurrency control in shared B-trees
Lausen G. Information Sciences 52(2): 2000. Type: Article
May 1 1985
Software concurrency in real-time control systems: a software nucleus
Sears K., Middleditch A. Software--Practice & Experience 15(9): 739-759, 1985. Type: Article
Jun 1 1986
Understanding concurrency in Ada
Shumate K. (ed), Intertext Pubs./McGraw-Hill Book Co., New York, NY, 1988. Type: Book (9789780070572997)
May 1 1989
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy