Application Tasks
K
A
DAK
47
AMX Kernel Task Priority
The AMX Kernel Task operates as the highest priority task in your AMX system. Its
execution priority is zero. It has the reserved task tag 'AMXK'.
Occasionally, an application is encountered in which a task must execute at very high
priority in order to cope with the idiosyncrasies of an extremely high speed device. In
such cases, the priority of the AMX Kernel Task can be dropped from zero to some lower
priority determined by you for your application. To do this, you must call AMX
procedure ajtkpry to change the priority of the AMX Kernel Task.
It is recommended that you exhaust all other avenues of approach to the high speed
device handling problem before taking this way out. Usually, high speed devices are best
handled at the interrupt level using the techniques described for special interrupts in
Chapter 4.7.
If you choose to drop the priority of the AMX Kernel Task, you must pay a penalty. Any
task which you place at a priority higher than the AMX Kernel Task is not allowed to use
any of the following AMX services:
Raise privilege level
Timed waits
Interval timer operations
Semaphore Manager services
Event Manager services
Message Exchange Manager services
Memory Manager services