Difference between revisions of "Real-time Linux on RISC-V"
From iis-projects
(Created page with "<!-- Real-time Linux on RISC-V --> Category:Digital Category:Computer Architecture Category:SW/HW Predictability and Security Category:HW/SW Safety and Security...") |
|||
Line 17: | Line 17: | ||
== Status: Available == | == Status: Available == | ||
− | * Type: Semester Thesis | + | * Type: Semester Thesis or Master Thesis |
* Professor: Prof. Dr. L. Benini | * Professor: Prof. Dr. L. Benini | ||
* Supervisors: | * Supervisors: | ||
Line 24: | Line 24: | ||
= Introduction = | = Introduction = | ||
+ | Linux[1] is a monolithic, modular, Unix-like, open-source general-purpose kernel running on servers, workstations, mobile devices and embedded systems. | ||
− | + | Currently, mainline Linux is not suitable for real-time workloads which require a deterministic and predictable behavior. Many design decision rather focus on throughput. There have been various approaches trying to address problem such as RTLinux[4], Xenomai[5] and PREEMPT_RT [2]. This work will focus on PREEMPT_RT. | |
− | + | PREEMPT_RT is a set of patches for Linux to turn into a kernel that is more suitable for real-time applications. These changes try to ''minimize the amount of kernel code that is non-preemptible'' which translates directly into a more reactive system. | |
− | |||
− | + | Cheshire | |
− | |||
− | |||
= Project = | = Project = | ||
− | The goal of this project is to port | + | The goal of this project is to port PREEMPT_RT Linux to run on 64-bit RISC-V Linux. |
* a | * a | ||
* b | * b | ||
* c | * c | ||
+ | cyclitest | ||
Line 47: | Line 46: | ||
* 15% Literature / architecture review | * 15% Literature / architecture review | ||
− | * 65% | + | * 65% C programming |
* 20% Evaluation | * 20% Evaluation | ||
Line 58: | Line 57: | ||
[1] https://www.kernel.org/ | [1] https://www.kernel.org/ | ||
+ | [2] https://wiki.linuxfoundation.org/realtime/start | ||
+ | [3] https://lwn.net/Articles/146861/ | ||
+ | [4] https://www.yodaiken.com/papers/rtlmanifesto.pdf | ||
+ | [5] https://source.denx.de/Xenomai/xenomai/-/wikis/home |
Revision as of 18:06, 7 July 2023
Contents
Overview
Status: Available
- Type: Semester Thesis or Master Thesis
- Professor: Prof. Dr. L. Benini
- Supervisors:
Introduction
Linux[1] is a monolithic, modular, Unix-like, open-source general-purpose kernel running on servers, workstations, mobile devices and embedded systems.
Currently, mainline Linux is not suitable for real-time workloads which require a deterministic and predictable behavior. Many design decision rather focus on throughput. There have been various approaches trying to address problem such as RTLinux[4], Xenomai[5] and PREEMPT_RT [2]. This work will focus on PREEMPT_RT.
PREEMPT_RT is a set of patches for Linux to turn into a kernel that is more suitable for real-time applications. These changes try to minimize the amount of kernel code that is non-preemptible which translates directly into a more reactive system.
Cheshire
Project
The goal of this project is to port PREEMPT_RT Linux to run on 64-bit RISC-V Linux.
- a
- b
- c
cyclitest
Character
- 15% Literature / architecture review
- 65% C programming
- 20% Evaluation
Prerequisites
- Experience with digital design in SystemVerilog as taught in VLSI I
- Basic knowledge of operating systems
- Knowledge of C programming language and UNIX tooling as from previous bachelor/master courses
References
[1] https://www.kernel.org/ [2] https://wiki.linuxfoundation.org/realtime/start [3] https://lwn.net/Articles/146861/ [4] https://www.yodaiken.com/papers/rtlmanifesto.pdf [5] https://source.denx.de/Xenomai/xenomai/-/wikis/home