Raising the abstraction level is widely seen as a solution to increase productivity, in order to handle the growing complexity of real-time embedded applications and the time-to-market pressures. In this context, the use of a real-time operating system (RTOS) becomes extremely important to the development of applications with real-time systems requirements. However, the use of a detailed RTOS at early design phases is a contra sense, and the existing system level description languages (SLDL) lack support for RTOS modeling at higher abstraction levels. In this paper, we introduce an abstract RTOS model, and a set of refinement steps that allows refining the abstract model to an implementation model at lower abstraction levels. This abstract RTOS model provides the main features available in a typical RTOS, permitting the designer to model parallel and concurrent behavior of real-time embedded applications at higher abstraction levels. We use SystemC language with some extensions to build the abstract RTOS model, allowing a quick evaluation of different scheduling algorithms and synchronization mechanisms at the early stage of system design. An experimental result with a telecom system that consists of fifty tasks with four priority levels shows the usefulness of this model.
['Fabiano Hessel', 'V.M. da Rosa', 'Igor M. Reis', 'Robert S. Planner', 'César A. M. Marcon', 'Altamiro Amadeu Susin']
Abstract RTOS modeling for embedded systems