Dates and Events: |
OSADL Articles:
2023-11-12 12:00
Open Source License Obligations Checklists even better nowImport the checklists to other tools, create context diffs and merged lists
2022-07-11 12:00
Call for participation in phase #4 of Open Source OPC UA open62541 support projectLetter of Intent fulfills wish list from recent survey
2022-01-13 12:00
Phase #3 of OSADL project on OPC UA PubSub over TSN successfully completedAnother important milestone on the way to interoperable Open Source real-time Ethernet has been reached
2021-02-09 12:00
Open Source OPC UA PubSub over TSN project phase #3 launchedLetter of Intent with call for participation is now available |
Real Time Linux Workshops
1999 - 2000 - 2001 - 2002 - 2003 - 2004 - 2005 - 2006 - 2007 - 2008 - 2009 - 2010
Tenth Real-Time Linux Workshop on October 29 to November 1st, 2008, in Guadalajara, Mexico
Supporting the FRSH real-time framework on top of PaRTiKle
V. Brocal, M. Masmano, I. Ripoll and A. Crespo
FRESCOR is a consortium research project, part of the European Union's Sixth Framework P- gramme, which aims to provide a complete framework to support the whole development of a wide range of realtime embedded applications, including tools to ease the work of developers in the phases of analysis, design and implementation. More precisely, part of this work, which has already been done, consisted in the implementation of a scheduling framework, called FRSH, to provide a clean API which supports a very complex set of functionality to deal with real-time multitasking, QoS, distribution, power management and shared resources amongst others.
The key abstraction in FRSH is the use of a hierarchical scheduling architecture based on virtual resources. In order to keep the framework independent of specific scheduling schemes, it defines an interface between applications and the global scheduler, called the service contract. So, instead of using parameters of a specific scheduler algorithm, the application defines its needs in the form of service contracts. This way, FRSH transparently manages all platform specific details, allowing the developer to concentrate in the specification of the application requirements.
Provided as a user library, the FRSH API needs an underling real-time capable platform to ensure the desired timing behaviour to the application on top of it. The pair PaRTiKle + XtratuM was elected as a target platform to provide such support because of its well-defined and standard interface (PaRTiKle implements the POSIX PSE 5.1).
The main effort in supporting FRSH over PaRTiKle was the implementation of a compatibility layer called "FRSH Adaptation Layer" (FOSA for short), which provides a platform independent interface aimed to permit the FRSH run-time to be ported to other platforms with a minimum effort. Nevertheless, the FRSH run-time, and FOSA at its turn, needed features of PSE5.1, such as real-time signals and thread CPU clocks, that PaRTiKle lacked of. Also, FRSH requires a deep and direct control of the application threads' scheduling actions attached to the FRSH scheduler. In order to accomplish a full scheduling control over these threads, the FOSA layer relies on the Application Defined Scheduling (ADS) mechanism, which was not available for PaRTiKle. Thus, significant work was also done to provide PaRTiKle with these characteristics.
This paper present our experience in both, implementing the FOSA layer on top of PaRTiKle and providing the additional features that FRSH depended on and that were not present in PaRTiKle.