Typically, each FW task repeatedly provides a service, with a clear start and end, in response to inputs from its interacting SW or HW layer. 
in this setting, FW code is inherently associated with an infinite loop structure.