#include <preemption.h>
Inheritance diagram for Preemption:
Public Member Functions | |
Preemption (Global_id const id) | |
Preemption sender role constructor. | |
void | set_receiver (Receiver *receiver) |
Set receiver (preempter) which receives preemption IPC. | |
Sched_context * | pending () const |
Return scheduling context for which this role is going to send PIPC. | |
void | set_pending (Sched_context *const sched) |
Set scheduling context for which this role is going to send PIPC. | |
void | queue (Sched_context::Preemption_type type, Cpu_time time, Sched_context *sched) |
Queue a pending preemption event on a Sched_context. | |
Private Member Functions | |
void | preempter_enqueue () |
void | ipc_receiver_ready () |
Callback function for when the receiver of a preemption IPC becomes ready to receive. | |
void | setup_msg (L4_pipc const pipc) const |
Private Attributes | |
Sched_context * | _pending |
|
Preemption sender role constructor.
|
|
Callback function for when the receiver of a preemption IPC becomes ready to receive. Send the IPC and submit the next one. Implements Sender. |
|
Return scheduling context for which this role is going to send PIPC.
|
|
|
|
Queue a pending preemption event on a Sched_context. If there is already a pending event, this new event is resubmitted by find_next_preemption() later.
|
|
Set scheduling context for which this role is going to send PIPC.
|
|
Set receiver (preempter) which receives preemption IPC.
Reimplemented from Sender. |
|
|
|
|