Chapter 3 Introduction to MR308
- 35 -
only one forcible wait request to be nested, if sus_tsk is issued to a task in a forcible wait state, the
error E_QOVR is returned. (See Figure 3.25).
READY state
rsm_tsk sus_tsk
0 1 1 0
Number of
suspension
request
Task
sus_tsk
RUNNING
state
SUSPENDED
state
WAITING stateWAI TIN G st ate
WAITING-
SUSPENDED
state
E_QOVR
Figure 3.25 Forcible wait of a task and resume
Forcibly resume suspended task (frsm_tsk, ifrsm_tsk)
Clears the number of suspension requests nested to 0 and forcibly resumes execution of a task.
Since MR308 allows only one suspension request to be nested, this service call behaves the same
way as rsm_tsk and irsm_tsk..(See Figure 3.26).
READYstate
frsm_tsk
0 1 0
Number of
suspension
requests
Task
sus_tsk
READY state SUSPENDED
state
WAI TI NG
state
WAITING state WAITING
SUSPENDED
state
Figure 3.26 Forcible wait of a task and forcible resume
Release task from waiting (rel_wai, irel_wai)
Forcibly frees a task from WAITING state. A task is freed from WAITING state by this service call
when it is in one of the following wait states.