beautypg.com

Renesas 70 User Manual

Page 149

background image

Chapter 7 Application Creation Guide

- 139 -

7.1.3

System Calls from a Handler That Caused an Interrupt during Handler

Execution

Let us think of a situation in which an interrupt occurs during handler execution (this handler is hereinafter re-
ferred to as handler A for explanation purposes). When task switching is called for as a handler (hereinafter re-
ferred to as handler B) that caused an interrupt during handler A execution issued a service call, task switching
does not take place during the execution of the service call (ret_int service call) returned from handler B, but is
effected by the ret_int service call from handler A (See Figure 7.3).

ret_int

ret_int

iset_flg

Interrupt

Interrupt

TaskA

Interrupt handler A

Save Registers

System call processing

OS

Restore Register

SP <= User

Restore Registers

Task selection

TaskB

Save Registers

SP <= System

Interrupt handler A

Restore Register

Figure 7.3 Processing Procedure for a service call from a Multiplex interrupt Handler