|
Resource management components
|
|
Generic Scheduler patch for Linux kernel
|
Description:
|
It is a small patch for the Linux kernel that provides "hooks" for modules implementing generic scheduling policies. In our particular applications, it is used to implement the resource reservation scheduling module.
|
Keywords:
|
Linux, Scheduling, Loadable modules
|
Version:
|
1.0-1
|
Status:
|
Beta
|
[more ...]
|
|
Preemption Compatibility patch for Linux and RTLinux
|
Description:
|
The aim of this component is to make two different patches to the Linux kernel, the Preemption Patch [PRK] and the RTLinux patch, work together. The RTLinux patch is necessary to make RTLinux work. The Preemption Patch, based upon Robert Love's Preemptible Kernel work, reduces the latency of Linux by allowing preemption to occur inside Linux. By using the Preemption Patch and the Low Latency Patch [LLP], the latency of many Linux operations is significantly reduced. Therefore, both patches are very important for soft real-time scheduling at the Linux user level. In the mixed OCERA configuration, both hard real-time with RTLinux and soft real-time with Linux are required at the same time. Therefore, we need to apply all three patches. However, while the Low Latency Patch does not interfere with the RTLinux patch, both the Preemption Patch and the RTLinux patch modify the interrupt handling code. If the two patches are applied at the same time, Linux crashes. Thus this component is yet another patch that combines the two patches, RTLinux patch and Preemption Patch, while retaining -to a reasonable extent- the advantages of both.
|
Keywords:
|
Real-Time, Linux, RTLinux, Scheduling
|
Version:
|
1.0-1
|
Status:
|
Alpha
|
[more ...]
|
|
RTLinux compatibility library for Linux
|
Description:
|
This component is a library of functions for threads in user space that tries to replicate, as much as it is possible the RTLinux API. The objective of this component is to let an user to test a real-time application in user space. The motivation is that Linux user space is a much more controlled environment, where each application has its own memory space and faulty application cannot harm the functionality of the entire system. Also, in user space it is possible to specify access permissions for each user, so that a common user cannot access critical services and compromise the functionality of the system.
|
Keywords:
|
Real-Time, RTLinux API, Linux
|
Version:
|
1.0-1
|
Status:
|
Alpha
|
[more ...]
|
|
Quality of Service Manager for Linux
|
Description:
|
The use of computer based solutions for time-sensitive applications is increasingly popular. Important examples include multimedia streaming, video-conference, CD/DVD burning and so forth. Such applications are certainly time-sensitive but classical hard real-time techniques prove unsuitable to support them. Soft real-time scheduling solutions are commonly regarded as a better solution since they provide temporal isolation, thus allowing for individual task timing guarantees. Moreover, they approximate a fluid allocation of resources, which is certainly a desirable feature to have, for instance, in multimedia applications. However, the problem of finding a correct allocation of bandwidth to the different tasks is still to be considered as a tough problem. This problem is addressed in this software components and it essentially amounts to finding an appropriate allocation of resources to competing activities. To this regard, a static policy, in our evaluation, confronts unfavorably to a dynamic one. The main argument to support this point of view is that there is often a structure in the dynamic variations of resource requirements for tasks. For instance a typical movie alternates ''fast scenes'' (which induce a heavy computation workload) to ''slow'' dialogues between the characters (which on the contrary require a light computation). To take advantage of this structure, we propose 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.
|
Keywords:
|
Real-Time, QoS, Resource Reservation management, Linux
|
Version:
|
1.0-1
|
Status:
|
Alpha
|
[more ...]
|
|
Constant Bandwith Server (CBS) for Linux
|
Description:
|
This component implements a resource reservation scheduler. The algorithm is based on the Constant Bandwidth Server (CBS) algorithm [Abe98]. However, we modified and extended the original algorithm to take into account several practical issues. In our implementation, a server can handle more than one task; an automatic reclamation mechanism [Lip00] can be optionally activated; bandwidths can be tightly bounded through a self suspension mechanism. All these features are currently available on a single software module and they can be enabled/disabled through conditional compilation.
|
Keywords:
|
Real-Time, QoS, Resource Reservation, Linux
|
Version:
|
1.0-1
|
Status:
|
Beta
|
[more ...]
|
|
Status codes:
Analysis
>>
Design
>>
Alpha
>>
Beta
>>
Testing
>>
Stable
|