OCERA Overview (3)
  OCERA Home  /  OCERA Tour  /  OCERA Overview
  Information
    What is OCERA? 
    OCERA Tour 
    Partners 
    Technical support 
    License issues 
    Links 
    Web statistics 

  Download
    Documents 
    Components 
    Distributions 
    Tools 

   

Soft real-time profile

To provide and support all features expected by the OCERA kernel, the Linux kernel needed to be modified accordingly. Such modifications are known as “patches”. Such modifications improve substantially some aspect of the kernel and prepare it for the features provided by our components.
However, applying a software patch is not an easy task. In fact, when many patches need to be applied on the same software, many conflicts and incompatibilities can arise. The OCERA kernels includes the appropriated patches avoiding these problems (list of patches included).

This profile is intented to offer soft real-time system with Resource management.

 

The aim of the Resource management components is to assign the system resources to tasks so that predictable Quality of Service (QoS) guarantees can be provided to real-time tasks. The Resource Management components are especially useful for soft real-time tasks, like for example multimedia applications. These applications are usually implemented as normal Linux processes. In fact, Linux offers a large number of libraries, drivers and tools to support this kind of applications, like sound and video drivers, a standard network protocol stack, etc. These services cannot be found in RTLinux and it is unfeasible to port them.

Therefore, in the OCERA Architecture, the Resource Management components are provided at the Linux layer as additional services of the Linux kernel. They can be used both in the soft real-time configuration (if no hard real-time service is needed), or in the mixed hard/soft configuration (when both hard real-time and soft real-time tasks coexists in the system).

Applications:

  • Multimedia
  • Video survillance
  • Video monitoring
  • Real-time with low temporal constrains

 

Resource management components include:

QoS Manager: The problem of finding a correct allocation of bandwidth to the different tasks is still to be considered as a tough problem. It implements a dynamic adjustment of the bandwidth, in which a software module complementary to the scheduler collects QoS measures for the executing tasks and varies the assigned bandwidth accordingly. A key advantage of this idea is that the system is self-tuning: the user is not required to provide parameters he/she has little knowledge of.

Feedback scheduling: One of the biggest problems of CPU reservation systems is the selection of the fraction (or bandwidth) of the CPU assigned to each task. To cope with this problem, many authors proposed the use of feedback control mechanism inside the operating system. A task (process) that wants to use the QoS services, will have to send a "request" to the module. The request can be accepted or refused. In case it is accepted, the service will be guaranteed.

There will be two classes of service: guaranteed service, and best-effort service. In the guaranteed class, a task has to specify its temporal parameters as an initial contract. This request can be accepted, if there are enough resources to guarantee a minimum amount of service, or refused in case there is not enough bandwidth. The task can optionally specify a "responsiveness parameter", which represents the level of responsiveness of the feedback controller.

In the best-effort service class, a task is always accepted unless the system is in permanent overload situation. Clearly, it will recieve an acceptable service (i.e. enough bandwidth) only when the system load is below a threshold.

IRIS constant bandwith server: This server policy guarantees to a task the use of a fraction (budget) of the CPU each period. When the budget is exhausted, the task is blocked until the next period if there are other tasks ready in the system. As soon as the CPU is idle, the next period is shrinked.


© OCERA Project. webmaster@ocera.org
Maintained by: Sergio Sáez   Last update: Wed Jan 10 16:56:54 2007