You are required to read and agree to the below before accessing a full-text version of an article in the IDE article repository.

The full-text document you are about to access is subject to national and international copyright laws. In most cases (but not necessarily all) the consequence is that personal use is allowed given that the copyright owner is duly acknowledged and respected. All other use (typically) require an explicit permission (often in writing) by the copyright owner.

For the reports in this repository we specifically note that

  • the use of articles under IEEE copyright is governed by the IEEE copyright policy (available at
  • the use of articles under ACM copyright is governed by the ACM copyright policy (available at
  • technical reports and other articles issued by M‰lardalen University is free for personal use. For other use, the explicit consent of the authors is required
  • in other cases, please contact the copyright owner for detailed information

By accepting I agree to acknowledge and respect the rights of the copyright owner of the document I am about to access.

If you are in doubt, feel free to contact

Multiprocessor Synchronization and Hierarchical Scheduling


Publication Type:

Conference/Workshop Paper


Proceedings of the First IEEE International Workshop on Real-time Systems on Multicore Platforms: Theory and Practice (XRTS-2009) in conjunction with ICPP09


Multi-core architectures have received significant interest as thermal and power consumption problems limit further increase of speed in single-cores. In the multi-core research community a considerable amount of work has been done on real-time multi-core scheduling algorithms where it is assumed tasks are independent. However, synchronization of dependent tasks executing on multi-cores has not received as much attention, even though typical real-time systems in practice include tasks that share resources. In this paper we propose a synchronization protocol for hierarchically scheduledmulti-core systems, and we present a comparison between the presented protocol and existing multi-core synchronization protocols. The presented protocol groups dependent tasks that directly or indirectly share mutually exclusive resources into independent components. Within a component dependent tasks use classical uniprocessor synchronization protocols, such as the Stack-based Resource allocation Protocol. The components are then scheduled on the cores by a global scheduler. There are two major approaches for scheduling multicore: partitioned and global scheduling. While most existing multi-core synchronization protocols support only one category, the protocol presented in this paper is developed to handle both scheduling approaches. The presented approach is developed to allow for co-execution of existing legacy real-time applications along with new applications, i.e., a legacy application is put into one or more components preserving its own (original) scheduling and synchronization protocols.


author = {Farhang Nemati and Moris Behnam and Thomas Nolte},
title = {Multiprocessor Synchronization and Hierarchical Scheduling},
month = {September},
year = {2009},
booktitle = {Proceedings of the First IEEE International Workshop on Real-time Systems on Multicore Platforms: Theory and Practice (XRTS-2009) in conjunction with ICPP09},
url = {}