1. A method for scheduling a processing entity task for execution by a processing entity of multiple processing entities in a multiple-processing entity system, the multiple-processing entity system comprising a scheduler, the method comprising: initializing the scheduler by performing initialization selected from a group consisting of: powering up the multiple-processing entity system, resetting the scheduler, and providing initializing information to the scheduler; receiving at the scheduler a task data structure comprising a pre-requisite indicator indicative that a pre-requisite to an execution of the processing entity task to be executed by the processing entity is a completion of a peripheral task that is executed by a hardware peripheral, wherein the hardware peripheral updates a peripheral task completion indicator once the peripheral task is completed, wherein the peripheral task completion indicator is stored in a memory unit accessible to the scheduler and to the hardware peripheral; scheduling by the scheduler, the processing entity task in response to the peripheral task completion indicator; and updating a compact pre-requisite completion data structure stored in the memory unit, wherein a first portion of the compact pre-requisite completion data structure is accessible by the hardware peripheral and wherein another portion of the compact pre-requisite completion data structure is accessible by at least one processing entity of the multiple-processing entities of the multiple-processing entity system.