CoBaS: Introducing a Component Based Scheduling Framework
- 1 October 2015
- conference paper
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE) in 2015 International Symposium on Computer Architecture and High Performance Computing Workshop (SBAC-PADW)
Abstract
Many-Core systems and heterogeneous systems are getting more and more common and may soon enter the mainstream market. To harvest their capabilities to their full potential, the runtime system's scheduling policies have to be adapted and, in many cases, tailored to the specific system. The runtime system can be both an operating system or management infrastructure of an infrastructure as a service (IaaS) platform. Developing, implementing, and testing those scheduling policies is a challenging task in general. In this work we present CoBaS, a component based scheduling framework for multi and many-core runtime systems. The main purpose of CoBaS is the simplification of the scheduling policy implementation and an increased code reuse to save time during development. CoBaS uses a novel approach to reach that goal. It allows the breakdown of the policy implementation into several components that can be reused. Through composition, a fast prototyping, testing and evaluation of new scheduling policies is possible without implementing every functional part again. CoBaS uses an event based approach to distribute information about system states and state changes between the runtime system and components as well as between components themselves. Furthermore, it has a facility to hand over ordered task sets between components. We have adapted both the Linux and Free BSD kernel to use CoBaS by completely removing the native scheduler. The integration of CoBaS into those kernels shows the feasibility of our approach.Keywords
This publication has 10 references indexed in Scilit:
- PopcornPublished by Association for Computing Machinery (ACM) ,2015
- ACFSPublished by Association for Computing Machinery (ACM) ,2015
- SF3P: a framework to explore and prototype hierarchical compositions of real-time schedulersPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2014
- ExSched: An External CPU Scheduler Framework for Real-Time SystemsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2012
- Hijack: Taking Control of COTS Systems for Real-Time User-Level Services13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07), 2007
- A Framework for Simplifying the Development of Kernel Schedulers: Design and Performance EvaluationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2006
- HLS: a framework for composing soft real-time schedulersPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2005
- The many faces of publish/subscribeACM Computing Surveys, 2003
- Implementing a general real-time scheduling framework in the RED-Linux real-time kernelPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- The Flux OS Toolkit: reusable components for OS implementationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002