[LITMUS^RT] Want to understand what is Litmus-RT

Björn Brandenburg bbb at mpi-sws.org
Tue Aug 1 18:25:40 CEST 2017


> On 1. Aug 2017, at 18:08, ABHIJIT DHANDHA [cb.en.p2ebs16001] <cb.en.p2ebs16001 at cb.students.amrita.edu> wrote:
> 
> I am Abhijit Dhandha, pursing M.Tech in Embedded Systems from Amrita University, India. My thesis project is based on Fault Tolerant Scheduling, and while I was searching for a testbed I came across Litmus-RT. Reading through it, I found it fascinating but was not able to understand what exactly is does. Thus, I have a few questions, the question may sound naive, but please do bear with me, for my background is Instrumentation and Control and now I have developed a liking towards scheduling.

Welcome!

> 
> 1. What exactly does Litmus-RT do?

It’s a variant of Linux with (more) advanced multiprocessor real-time scheduling policies.

> 2. Can I implement my own algorithms using Litmus-RT ? If yes, How ?

Yes, by modifying the kernel source code. 

> 3. In which language do I have to write code ? ( C, C++, Python ?)

It’s Linux, so C. 

> 4. How do I observe the schedule/implementation of algorithm and monitor its characteristics such as response time?

LITMUS^RT comes with two tracing toolkits: Feather-Trace (for overheads) and sched_trace (for recording the actual schedule). You can find all the details in the documentation that’s linked on the LITMUS^RT homepage.

> 5. Which tasks/process are scheduled using Litmus-RT ? This in context to that I don't have a particular application/test hardware system, so would it schedule my laptop's tasks ?

Just about any Linux process can made a LITMUS^RT real-time task, using the rt_launch utility. If you need a dummy workload, LITMUS^RT comes with a dummy task called rtspin that’s frequently used to emulate CPU-bound real-time tasks. 

> 6. How it can help in fault tolerance ?

I don’t know. LITMUS^RT is currently not targeted at fault tolerance.

Regards,
Björn





More information about the litmus-dev mailing list