Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI...

36
Outline Problem describtion SART architecture Project results Conclusion Universit` a degli Studi di Genova Semantic-Aware Real-Time Scheduling (An extension of real-time system) Ali Paikan October, 2010 Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Transcript of Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI...

Page 1: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Universita degli Studi di Genova

Semantic-Aware Real-Time Scheduling(An extension of real-time system)

Ali Paikan

October, 2010

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 2: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Problem describtion

SART architecture

Project results

Conclusion

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 3: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

What is SART?

A Semantic-Aware Real-Time scheduler

which addreses the problem of real-time schedulingand reconfiguration of tasks depending on the

current context of the system.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 4: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Common robotic middlewares

I Despite many decades of work in robotics, the researchcommunity is still lacking a well–accepted common roboticmiddleware.

I Most research groups still write their own systems, albeitbased on standards from the software engineering community.Any software developed by these groups tends to be stronglytied to their architecture, their middleware, and their robots.

Orocos, YARP, Player-Stage, ROS, Ethnos and etc.

Why?

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 5: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Common robotic middlewares

I Robotic applications are still specific. [?]

I They are not reliable. [?]

I They are baffling for novice users. [?]

Some users say:

I ”I need something more simple and optimized for myapplication.”

I ”Your middleware does not fulfil my requirements.”

I ”It’s not so easy to go through your middleware. I do nothave time!”

I ”I am not familiar with some technical concepts. How can Iuse it?”

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 6: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

SART’s objectives

Functionality Reliabi l ity Complexity

”everything should be made as simple as possible, but no simpler!”[Albert Einstein]

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 7: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Which functionalities?

SART addresses problems that are usually left in the back-ground by researchers in the field of intelligent robotic sys-tems:that is, the real-time scheduling and reconfiguration of tasksdepending on the current context and user constraint.

I real-time scheduling

I reconfiguration of tasks

I situation management

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 8: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Common problem in robotic applicationsConsider a complex robotic application with different activities andtasks.

Motion Control

Emergencystop

APFNavigate

Path Planning

GPSLocalize

LaserLocalize

OdometryLocalize

SonarReader

BeaconLocalize

ObstacleAvoidance

Battery Recahrge

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 9: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Common problem in robotic applications

I Do all these tasks need to be performed together during arobotic mission?

I Or some of them are preferable for different situations?

I What is the dependencies of a task?

I How much overload they put on the processor?

I Is it possible to feasibly schedule them in a real-time operatingsystem?

I What will happen if some of them miss their deadline in atime-critical application? (e.g Emergency Stop)

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 10: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

What do we need?

I Having a mechanism to describe the semantic of tasks, as wellas users constraints and objectives.

I A data structure to represent, manage and handle theseinformation (KB).

I Informing SART of any change in current context of thesystem.

I Reasoning on the information to find the proper subset of thetasks.

I Easy adaptability to available real-time operating systems andmiddleware.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 11: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

General concepts (Real-time systems)

I Hard real-time, a timing fault may causes some human,economic or ecological disaster.

I Soft real-time, timing faults can be dealt with to a certainextent.

I Scheduling, allow tasks to fulfil these timing constraints whenthe application runs in a nominal mode

I Scheduling properties : Feasible schedule, Schedulable taskset, Schedulability test, Optimal scheduling algorithm.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 12: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

General concepts (Knowledge-based system)

I KBS is a system that uses artificial intelligence techniques inproblem-solving processes to support human decision-making,learning, and action.

I They are artificial intelligent tools working in a narrow domainto provide intelligent decisions with justification.

I The basic advantages offered by such system aredocumentation of knowledge, intelligent decisionsupport, self learning, reasoning and explanation.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 13: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

General concepts (Ontology)

An ontology is a formal representation of knowledge as a set ofconcepts within a domain, and the relationships between thoseconcepts.”Ontology is representing information in a manner that can beunderstand by human and machine.”

I Classes or Concepts (e.g Father, Mother, son, ...)

I Properties or Roles (e.g Has Father, Has Kid, ...)

I Facets or Role restrictions (e.g Father has at least one kid, ...)

I Instances or Individuals (e.g Davide, Fracesca, ...)

An ontology together with a set of individual instances of classesconstitutes a knowledge base.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 14: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

General concepts (Ontology Language)

I Web Ontology Language (OWL)

I Resource Description Framework (RDF)

I RDF Schema (RDF-S)

Class(pp:man complete intersectionOf(pp:personpp:male pp:adult))

Class(pp:woman complete intersectionOf(pp:personpp:female pp:adult))

Class(pp:father partial pp:man)

Class(pp:mother partial pp:woman)

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 15: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

General concepts (Reasoner)

A semantic reasoner, or simply a reasoner, is a piece of softwareable to infer logical consequences from a set of asserted facts.(Inferring implicit knowledge form explicit information)

I Subsumption, check knowledge is correct.

I Equivalence, check knowledge is minimally redundant.

I Consistency, check knowledge is meaningful.

I Instantiation, check if individual i instance of class C.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 16: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

General concepts (Reasoner example)

Assume a ontology of family with these individuals:

Davide is a father.Marta is daughter of Davide.

Marta is daughter of Francesca.Paolo is brother of Marta.

Reasoner must be able to answer following question:

I Who is the father of Marta?

I Who is the mother of Paolo?

I Who is the husband of Francesca?

I Is Marta the sister of Paolo?

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 17: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Task

The concept Task stands for an operating system task or, similarly,for any generic task with basic properties.

I Cost (Ci/Pi ).

I Input

I Output

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 18: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Data and Resources

Resource is usually used to represent inputs from sensors oroutputs to actuators.

I Available

I Provision

Data is the simplest and basic concept in the SART ontology

I Kind is an univocal identifier for Data.

I Quality

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 19: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

SART Ontology

Cost Integer

Input Instance Conjunction

Disjunction

Output Instance* Data

UserConstraint Instance* Disabled

Forced

Hard

Soft

Task

Necessity Instance* Data

Task

Prominence Integer

Activated Boolean

Policy MaxQuality

MinCost

Job

Entity Instance* Conjunction

Data

Disjunction

Conjunction

Available Boolean

Provision Instance Data

Resource

Entity Instance* Conjunction

Data

Disjunction

Disjunction

Kind String

Quality Integer

Data

Soft Hard

Forced Disabled

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 20: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

SART Ontology

SART ontology can be created via one of these two ways:

1. Via an RDF:XML file and using ontology editors (e.g Protege,OntoStudio, etc.)

2. Using SART system calls :

srt task create()srt data create()srt task add input()...

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 21: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

SART architecture

Ontology

RDFParser

ContextAwareness

Reasoner

KBGraph

SART Abstract LayerSART Abstract Layer

Real-Time OS

SART Core

SART system calls

update

request

optional

(SART layer)

(SARTAL layer)

(OS layer)

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 22: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

SART Knowledge-Base graph

I It is allowed to haveindependent task.

I If data Dj is a directsuccessor of data Di thenQ(Dj) >= Q(Di).

I The leaves of the graphmust either be Resourcesor Tasks in a consistentKB.

I It is possible to have loopsin the graph.

Da, 40

T2

0.25

T3

0.2

Dc, 40

T4

0.3

Dc, 60

R1

Dc, 70

R2

C

Db, 30

T1

J

0.2

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 23: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

SART Reasoner

In order to select a subset of tasks which can appropriatelysuit the current context of the system, the SART Core needsto reason and query the SART ontology.

The SART reasoner is a graph-based reasoner using a spe-cific graph search algorithm designed to be complete and op-timized for the SART KB.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 24: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Minimum Dependency Path Algorithm (MDPA)

By representing the SART KBas a graph, the aim of theReasoner is to find a minimumpath from a desired node to allits dependent successor nodes,while being subject to allconstraints introduced by theuser.

MDPA(J1) = MDPA(T1);

MDPA(T1) = MDPA(C);

MDPA(C) = MDPA(Da) + MDPA(Db));

MDPA(Da) = min( MDPA(T2), MDPA(T3) );

...

Da, 40

T2

0.25

T3

0.2

Dc, 40

T4

0.3

Dc, 60

R1

Dc, 70

R2

C

Db, 30

T1

J

0.2

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 25: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Some more criteria for MDPA

I Supporting different Job policy (MinCost, MaxQuality, etc.)

I Considering the user constraints on tasks. (soft or hardreal-time tasks)

I Do not propagate through the nodes has already been visited.(cycle stuck preventing)

I The decision should be made for different task sets with thesame cost.

I etc.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 26: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Complexity and Completeness

The complexity of MDPA highly depends on the KB graph.

I In case of a DAG graph, MDPA time complexity islinear on the number of nodes n and equal to O(n).

I If SART KB graph is a complete graph, it is equal toO(bd). (b is branching factor and d is depth of graph)

Regardless of the type of the graph and in case that a solutionexists, MDPA always converges to the minimum dependencypath and selects the minimum feasible subset of tasks. (Com-pleteness)

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 27: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

SART Abstraction Layer (SARTAL)

SARTAL provides a neat abstract layer over SART to be easilyadapted to real-time operating system.

SART provides system calls to link the Task concept from theontology to the operating system task descriptor.

Basic routines which only needed to be overridden while portingSART to a new operating systems.

I is task active()

I activate task()

I deactivate task()

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 28: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Footprint and performance

I SART small code-size footprint which is around 40KB allowsfor easy portability on different machines and especiallyembedded systems with limited resources.

I For a KB graph with 30 nodes, the reasoning time is around300µs on a 1.8Ghz PC.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 29: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Supported operating systems

SART has been successful ported and tested on three real-timeoperating systems.

I XENOMAI (RTAI)

I Ethnos (POSIX)

I Trampoline(OSEK/VDX) which alsotested on Trampoline forAtmel-SAM7 (ARM).

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 30: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Simulation result of SART on Ethnos

Assume a Navigation problem in autonomous mobile robot wheredifferent tasks are required to be executed to provide robotlocomotion.

Task Ci/Pi Task Ci/Pi

PIDNAV 0.25 XI 0.15BLINDNAV 0.04 PATHFISH 0.03LOCALIZE 0.46 KALMAN 0.65ESLOCAL 0.25 DLPS 0.20MONITOR 0.3

U =∑

Ci/Pi = 2.33 >> 1.00 (NOT feasibly schedulable!!!)

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 31: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Simulation result of SART on Ethnos

XI

C

Motion Data

0.15

PIDNAV

0.25

BLINDNAV

0.04

PATHFISH

0.03

LOCALIZE KALMAN

0.65

ESLOCAL

0.25

DLPS

0.20

Res_Beacons

Navigation MONITOR

DD

0.46

C

0.3

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 32: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Simulation result of SART on Ethnos

SART is assigned to select and execute a task set to performNavigation with minimum cost in both situations whenResource Beacons is available or not.

Res Beacon Task set U

Available MONITOR(5), XI(8), PATHFISH(6),ESLOCAL(1), DLPS(2)

0.66

Disabled MONITOR(5), XI(8), PATHFISH(6),LOCALIZE(4)

0.67

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 33: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Simulation result of SART on Ethnos

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 34: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

SART in a case study with LABMATE robotThanks to easy adaptability of SARTAL, SART has been used withthe available software for LABMATE in a mobile robotic scenario.

(VIDEO)

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 35: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

SART as an open-source project on SourceForge

SART has been developed under GNU Lesser GPL licence and canbe freely downloaded via SourceForge project.

SARTOShttp://sartos.sourceforge.net/

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)

Page 36: Semantic-Aware Real-Time Scheduling (An extension of real ...fulvio/safr20102011/Lecture_05.pdfI Properties or Roles (e.g Has Father, Has Kid, ...) I Facets or Role restrictions (e.g

Outline Problem describtion SART architecture Project results Conclusion

Conclusion

I SART is an architectural solution to address problems that areusually left in the background by researchers in the field ofintelligent robotic systems: that is, the real-time schedulingand reconfiguration of tasks depending on the current context.

I SART produces a significant increment in performance,facilitates management of different tasks in complex intelligentsystem, thus being suited for complex robotic applications.

I Thanks to easy adaptability of SARTAL, it is now available forXenomai, Ethnos and Trampoline operating system.

Ali Paikan : Semantic-Aware Real-Time Scheduling (An extension of real-time system)