Code example – setting a thread scheduling policy and priority

To help solidify the concepts that we learned about in the previous sections of this chapter, we will design and implement a small demo program, illustrating how a modern Linux pthreads application can set an individual thread's scheduling policy and priority to make threads (soft) real-time.

Our demo app will have a total of three threads. The first is main(), of course. The following bullet points show what the application is designed to do:

  • Thread 0 (main(), really): This runs as a SCHED_OTHER scheduling policy with real-time priority 0, which is the default. It does the following:
    • Queries the priority range of SCHED_FIFO, printing out the values
    • Creates two worker threads ...

Get Hands-On System Programming with Linux now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.