Method for scheduling with deadline constraints, in particular in Linux, carried out in user space
First Claim
Patent Images
1. A method for scheduling tasks with deadline constraints, which is based on a model of independent periodic tasks and entirely performed in user space, in which:
- each task to be scheduled is associated with a data structure, which is defined in user space and contains at least one time information item and an information item that is indicative of a state of activity of the task, said state of activity being chosen from a list comprising at least;
a state of a task being executed;
a state of a task awaiting the end of its execution period; and
a state of a task ready to be executed, awaiting a resumption condition;
in the course of its execution, each task modifies said information item that is indicative of its state of activity and, if need be, according to a predefined scheduling policy, calls a scheduler that is executed entirely in user space;
upon each call, said scheduler;
sets up a queue for the tasks that are ready to be executed, awaiting a resumption condition;
sorts said queue according to a predefined priority criterion;
if necessary, preempts a task being executed by sending it a signal forcing it to change to said state of a task ready to be executed, awaiting a resumption condition; and
sends said resumption condition at least to the task that is at the head of said queue;
said data structure containing information indicative of a thread associated with said task comprising;
a condition associated with said task;
subsequent deadline of said task;
worst case execution time of said task;
best case execution time of said task; and
actual execution time of said task;
said scheduler using a specific function for the allocation of said task on a processor, said method for scheduling tasks being executed under an operating system that is compatible with a POSIX standard, said operating system being a Linux system.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for scheduling tasks with deadline constraints, based on a model of independent periodic tasks and carried out in the user space by means of API POSIX is provided.
9 Citations
17 Claims
-
1. A method for scheduling tasks with deadline constraints, which is based on a model of independent periodic tasks and entirely performed in user space, in which:
-
each task to be scheduled is associated with a data structure, which is defined in user space and contains at least one time information item and an information item that is indicative of a state of activity of the task, said state of activity being chosen from a list comprising at least; a state of a task being executed; a state of a task awaiting the end of its execution period; and a state of a task ready to be executed, awaiting a resumption condition; in the course of its execution, each task modifies said information item that is indicative of its state of activity and, if need be, according to a predefined scheduling policy, calls a scheduler that is executed entirely in user space; upon each call, said scheduler; sets up a queue for the tasks that are ready to be executed, awaiting a resumption condition; sorts said queue according to a predefined priority criterion; if necessary, preempts a task being executed by sending it a signal forcing it to change to said state of a task ready to be executed, awaiting a resumption condition; and sends said resumption condition at least to the task that is at the head of said queue; said data structure containing information indicative of a thread associated with said task comprising; a condition associated with said task; subsequent deadline of said task; worst case execution time of said task; best case execution time of said task; and actual execution time of said task; said scheduler using a specific function for the allocation of said task on a processor, said method for scheduling tasks being executed under an operating system that is compatible with a POSIX standard, said operating system being a Linux system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
Specification