At Open Source Summit 2024, Codethink Fellow Ben Dooks presented ‘Real-time Scheduling Fault Simulation’. In the talk, Ben gives a brief description of Linux scheduling, a short history of real-time Linux, methods for disruption, and an outline for future work on the project (including investigating scheduler patches).
If you’d like to discuss how Codethink will help you achieve results with real-time Linux, please contact us here.
Talk synopsis:
There is a lot of work around achieving consistent real-time performance on Linux, but not as much on simulating faults such as system jitter, deadline misses, or other faults. Without this, it is difficult to test how your application or entire system copes with these problems.
As part of our work with several clients, especially in the safety sphere, questions have come up about how to test processes that rely on real-time scheduling. If we have a way of injecting faults, we can reliably test error handling and other mitigations, including throttling, restarting, or some measured shutdown of services.
This talk will review some methods we evaluated for fault injection via user and kernel space. We will discuss how existing kernel features can be used and what needs to be done to configure or extend kernel features. We will also discuss how each method works and the comparative merits where overlaps exist.
We hope that this can help promote thinking and improvements in how the scheduler, particularly real-time scheduling, is tested under Linux.
About the speaker
Ben Dooks is a Senior Engineer at Codethink and an experienced open source contributor. He is a longtime contributor to various projects, such as the Linux kernel.
Other Content
- Open Source Summit Europe (OSSEU) 2024
- Improving systemd’s integration testing infrastructure (part 2)
- Meet the Team: Laurence Urhegyi
- A new way to develop on Linux - Part II
- GUADEC 2024
- Developing a cryptographically secure bootloader for RISC-V in Rust
- Meet the Team: Philip Martin
- Improving systemd’s integration testing infrastructure (part 1)
- A new way to develop on Linux
- RISC-V Summit Europe 2024
- Safety Frontier: A Retrospective on ELISA
- Codethink sponsors Outreachy
- The Linux kernel is a CNA - so what?
- GNOME OS + systemd-sysupdate
- Codethink has achieved ISO 9001:2015 accreditation
- Outreachy internship: Improving end-to-end testing for GNOME
- Lessons learnt from building a distributed system in Rust
- FOSDEM 2024
- Introducing Web UI QAnvas and new features of Quality Assurance Daemon
- Outreachy: Supporting the open source community through mentorship programmes
- Using Git LFS and fast-import together
- Testing in a Box: Streamlining Embedded Systems Testing
- SDV Europe: What Codethink has planned
- How do Hardware Security Modules impact the automotive sector? The final blog in a three part discussion
- How do Hardware Security Modules impact the automotive sector? Part two of a three part discussion
- How do Hardware Security Modules impact the automotive sector? Part one of a three part discussion
- Automated Kernel Testing on RISC-V Hardware
- Automated end-to-end testing for Android Automotive on Hardware
- GUADEC 2023
- Embedded Open Source Summit 2023
- RISC-V: Exploring a Bug in Stack Unwinding
- Adding RISC-V Vector Cryptography Extension support to QEMU
- Introducing Our New Open-Source Tool: Quality Assurance Daemon
- Long Term Maintainability
- FOSDEM 2023
- Think before you Pip
- BuildStream 2.0 is here, just in time for the holidays!
- A Valuable & Comprehensive Firmware Code Review by Codethink
- GNOME OS & Atomic Upgrades on the PinePhone
- Flathub-Codethink Collaboration
- Codethink proudly sponsors GUADEC 2022
- Tracking Down an Obscure Reproducibility Bug in glibc
- Web app test automation with `cdt`
- FOSDEM Testing and Automation talk
- Protecting your project from dependency access problems
- Porting GNOME OS to Microchip's PolarFire Icicle Kit
- YAML Schemas: Validating Data without Writing Code
- Deterministic Construction Service
- Codethink becomes a Microchip Design Partner
- Hamsa: Using an NVIDIA Jetson Development Kit to create a fully open-source Robot Nano Hand
- Using STPA with software-intensive systems
- Codethink achieves ISO 26262 ASIL D Tool Certification
- Full archive