Tri-Pacific Home Page   TECHNOLOGY      
Blue Fill Corporate InformationDownload SoftwareOrder SoftwareCareersContactsSite Map      
News
Products and Solutions
Partners and Alliances
Support, Education, and Consulting
Technolgy
Menu Fill
 
Real-Time Scheduling Solutions
                                                                                                                       

TECHNOLOGY BACKGROUNDER

Algorithms and Protocols

This paper briefly describes several scheduling algorithms and prioritization protocols and indicates how they are used in RAPID RMA.

Descriptions of Algorithms

Rate Monotonic (RM)
A term applied to the method of assigning priorities to responses implemented by tasks according to the frequency or rate of the tasks. Tasks that execute at a higher rate are assigned a higher priority than tasks that execute at a lower rate.

Deadline Monotonic (DM)
A term applied to the method of assigning priorities to tasks according to the deadline of the responses implemented by tasks. Tasks with shorter deadlines are assigned higher priorities than tasks with longer deadlines.

Earliest Deadline First (EDF)
RM scheduling generally prioritizes tasks by the length of time it takes to complete them, with the shortest task having the highest priority. EDF allows designers to evaluate their model based on task deadlines and ensures that tasks whose deadlines are coming up first have priority in the design sequence. EDF provides designers with a more dynamic analysis that allows them to evaluate whether their design can execute in a timely manner. It provides a way to validate a system's architecture, instead of its functionality, in either single-node or end-to-end scenarios.

Cyclic Executive (CE)
While RMA uses strict mathematical approaches to determine a design's worst case performance, CE Analysis allows developers to validate their designs using simulation techniques and round-robin scheduling paradigms.

HKL, SGL
Algorithms especially tuned for single instance tasks that have explicit dependencies between them.

Descriptions of Protocols

Priority Ceiling Protocol (PCP)
A synchronization protocol that avoids deadlocks and ensures that a task will be blocked once (at most) by the duration of a single critical section. PCP can be used in Single Node, Multi-Node, and End-to-End analysis.

Stack Based Protocol (SBP)
When used with rate monotonic, deadline monotonic, and earliest deadline first algorithms, this protocol assigns a fixed preemption level to every task based on its relative deadline. The smaller the deadline, the higher the preemption level. Note that the preemption level of a task is not related to the priority of the task. Like PCP, this protocol avoids deadlocks and multiple blocking; SBP blocks a task earlier, at the start of the execution. Once the task starts executing, it will never be blocked (but it can be preempted). This protocol is only applicable to Single Node systems. SBP cannot be used in Multi-Node analysis.

Basic Interitance Protocol (BIP)
This protocol is identical to PCP modulo the guarantee for deadlock avoidance and blocked-at-most-once. This algorithm can produce chained blocking. It has been implemented in a great many real time systems, and is the default resource sharing protocol in Wind River's VxWorks real-time operating system.

Combinations Used in RAPID RMA

RM + PCP
Rate Monotonic with Priority Ceiling Protocol scheduling

RM + SBP
Rate Monotonic with Stack Based Protocol scheduling (not for Multi-Node systems)

RM + BIP
Rate Monotonic with Basic Interitance Protocol scheduling

DM + PCP
Deadline Monotonic with Priority Ceiling Protocol scheduling

DM + SBP
Deadline Monotonic with Stack Based Protocol scheduling (not for Multi-Node systems)

DM + BIP
Deadline Monotonic with Basic Inheritance Protocol scheduling

EDF + SBP
Earliest Deadline First with Stack Based Protocol scheduling (only for Single Node systems)

CE
Cyclic Executive (only for Single Node systems)

HKL
Single instance tasks with dependencies (only for Single Node systems)

SGL
Single instance tasks with dependencies (only for Single Node systems)

 

     


 [ News ]   [ Products ]   [ Partners ]   [ Support ]   [ Education ]   [ Consulting ]   [ Technology 
 [ Corporate Information ]   [ Downloads ]   [ Orders ]   [ Careers ]   [ Contacts ]   [ Site Map 

URL: http://www.tripac.com/html/tech-bkgd-algorithms.html
Last Updated: 1999-Oct-14
Contact: webmaster@tripac.com
Copyright: © 1999 Tri-Pacific Software, Inc. All rights reserved.
Trademarks: All brand names and product names are trademarks or registered trademarks of their owners.
 [ Top of Page ]