The Linux kernel is mainly used is general-purpose operating system, i.e., in server and/or deskt... more The Linux kernel is mainly used is general-purpose operating system, i.e., in server and/or desktop environments. During the last years, however, academic institutions and companies showed an increasing interest in using it for real-time and control applications as well. However, since Linux has not been designed to be a real-time operating, the best-effort scheduling policy is not suited to provide high utilization and strong guarantees to time-sensitive tasks. We present an enhancement of the Linux scheduler through the implementation of the well known Earliest Deadline First algorithm for real-time tasks, leaving the current behavior of existing policies unchanged. It is integrated with the latest Linux scheduler, support multicore platforms, it is available for embedded architectures (like ARM) and can be used with either periodic or aperiodic workloads.
Increasing interest for real-time support in general purpose operating systems has driven a lot o... more Increasing interest for real-time support in general purpose operating systems has driven a lot of development efforts inside the Linux kernel community. Thus, a Linux based system may be a suitable platform to run heterogeneous real-time and non real-time, periodic and ...
This paper presents a new strategy to arbitrate the access to globally shared resources in hierar... more This paper presents a new strategy to arbitrate the access to globally shared resources in hierarchical EDF sched-uled real-time systems, without needing any information on the duration of each critical section. Previous works addressing this problem assumed each task worst-case ...
The Linux kernel is mainly used is general-purpose operating system, i.e., in server and/or deskt... more The Linux kernel is mainly used is general-purpose operating system, i.e., in server and/or desktop environments. During the last years, however, academic institutions and companies showed an increasing interest in using it for real-time and control applications as well. However, since Linux has not been designed to be a real-time operating, the best-effort scheduling policy is not suited to provide high utilization and strong guarantees to time-sensitive tasks. We present an enhancement of the Linux scheduler through the implementation of the well known Earliest Deadline First algorithm for real-time tasks, leaving the current behavior of existing policies unchanged. It is integrated with the latest Linux scheduler, support multicore platforms, it is available for embedded architectures (like ARM) and can be used with either periodic or aperiodic workloads.
In this paper, we propose to use resource reservations scheduling and feedback-based allocation t... more In this paper, we propose to use resource reservations scheduling and feedback-based allocation techniques for the provisioning of proper timeliness guarantees to audio processing applications. This allows real-time audio tasks to meet the tight timing constraints characterizing them, even if other interactive activities are present in the system. The JACK sound infrastructure has been modified, leveraging the real-time scheduler present in the Adaptive Quality of Service Architecture (AQuoSA). The effectiveness of the proposed approach, which does not require any modifiction to existing JACK clients, is validated through extensive experiments under different load conditions.
An important issue when designing real-time sys- tems is to control the kernel latencies introduc... more An important issue when designing real-time sys- tems is to control the kernel latencies introduced by device drivers. This result can be achieved by transforming the interrupt handlers into schedulable entities (threads). This paper shows how to schedule such threads (using resource reservations) so that both the performance of real-time tasks and the device throughput can be controlled. In particular, some tools based on a kernel tracer (Ftrace) are used to collect timing information about the IRQ threads, and a novel reservation-based scheduler for Linux (SCHED_DEADLINE) is used to schedule them. An implementation of the proposed technique is validated through an extensive set of experiments, using different kinds of resources and of realistic applications.
This paper presents a new strategy to arbitrate the access to globally shared resources in hierar... more This paper presents a new strategy to arbitrate the access to globally shared resources in hierarchical EDF sched-uled real-time systems, without needing any information on the duration of each critical section. Previous works addressing this problem assumed each task worst-case ...
This paper presents an open-source library for the C lan- guage supporting the specification and ... more This paper presents an open-source library for the C lan- guage supporting the specification and management of tim- ing constraints within embedded soft real-time applications. The library provides a set of well-designed C macros that allow developers to associate timing ...
The Linux kernel is mainly used is general-purpose operating system, i.e., in server and/or deskt... more The Linux kernel is mainly used is general-purpose operating system, i.e., in server and/or desktop environments. During the last years, however, academic institutions and companies showed an increasing interest in using it for real-time and control applications as well. However, since Linux has not been designed to be a real-time operating, the best-effort scheduling policy is not suited to provide high utilization and strong guarantees to time-sensitive tasks. We present an enhancement of the Linux scheduler through the implementation of the well known Earliest Deadline First algorithm for real-time tasks, leaving the current behavior of existing policies unchanged. It is integrated with the latest Linux scheduler, support multicore platforms, it is available for embedded architectures (like ARM) and can be used with either periodic or aperiodic workloads.
Increasing interest for real-time support in general purpose operating systems has driven a lot o... more Increasing interest for real-time support in general purpose operating systems has driven a lot of development efforts inside the Linux kernel community. Thus, a Linux based system may be a suitable platform to run heterogeneous real-time and non real-time, periodic and ...
This paper presents a new strategy to arbitrate the access to globally shared resources in hierar... more This paper presents a new strategy to arbitrate the access to globally shared resources in hierarchical EDF sched-uled real-time systems, without needing any information on the duration of each critical section. Previous works addressing this problem assumed each task worst-case ...
The Linux kernel is mainly used is general-purpose operating system, i.e., in server and/or deskt... more The Linux kernel is mainly used is general-purpose operating system, i.e., in server and/or desktop environments. During the last years, however, academic institutions and companies showed an increasing interest in using it for real-time and control applications as well. However, since Linux has not been designed to be a real-time operating, the best-effort scheduling policy is not suited to provide high utilization and strong guarantees to time-sensitive tasks. We present an enhancement of the Linux scheduler through the implementation of the well known Earliest Deadline First algorithm for real-time tasks, leaving the current behavior of existing policies unchanged. It is integrated with the latest Linux scheduler, support multicore platforms, it is available for embedded architectures (like ARM) and can be used with either periodic or aperiodic workloads.
In this paper, we propose to use resource reservations scheduling and feedback-based allocation t... more In this paper, we propose to use resource reservations scheduling and feedback-based allocation techniques for the provisioning of proper timeliness guarantees to audio processing applications. This allows real-time audio tasks to meet the tight timing constraints characterizing them, even if other interactive activities are present in the system. The JACK sound infrastructure has been modified, leveraging the real-time scheduler present in the Adaptive Quality of Service Architecture (AQuoSA). The effectiveness of the proposed approach, which does not require any modifiction to existing JACK clients, is validated through extensive experiments under different load conditions.
An important issue when designing real-time sys- tems is to control the kernel latencies introduc... more An important issue when designing real-time sys- tems is to control the kernel latencies introduced by device drivers. This result can be achieved by transforming the interrupt handlers into schedulable entities (threads). This paper shows how to schedule such threads (using resource reservations) so that both the performance of real-time tasks and the device throughput can be controlled. In particular, some tools based on a kernel tracer (Ftrace) are used to collect timing information about the IRQ threads, and a novel reservation-based scheduler for Linux (SCHED_DEADLINE) is used to schedule them. An implementation of the proposed technique is validated through an extensive set of experiments, using different kinds of resources and of realistic applications.
This paper presents a new strategy to arbitrate the access to globally shared resources in hierar... more This paper presents a new strategy to arbitrate the access to globally shared resources in hierarchical EDF sched-uled real-time systems, without needing any information on the duration of each critical section. Previous works addressing this problem assumed each task worst-case ...
This paper presents an open-source library for the C lan- guage supporting the specification and ... more This paper presents an open-source library for the C lan- guage supporting the specification and management of tim- ing constraints within embedded soft real-time applications. The library provides a set of well-designed C macros that allow developers to associate timing ...
Uploads
Papers by Dario Faggioli