The invention relates to a process for assigning tasks in a multiprocessor digital
data processing system having a preemptive operating system, and an architecture
for implementing the process. The system comprises processors (200-203, 210-213)
capable of processing the tasks in parallel, divided into groups (200-201, 202-203).
An elementary queue (5a, 5b) is associated with each
of the processor groups (200-201, 202-203) and stores tasks to be executed.
All the tasks to be executed (T1 through T10) are stored in a table
(4). Each of the tasks (T1 through T10) of the table (4)
is associated with one of the queues (5a, 5b) and each
of the tasks stored in the queues (5a, 5b) is associated
with one of the processors (200 through 201). The associations are
made by sets of cross pointers (p200 through p203, pp5a,
pp5b, pT1, pT5, pT10, p5a1
through p5a4, and p5b1 through p5b10).
In an additional embodiment, according to several variants, a (re-)balancing of
the load of the system among elementary queues is performed.