Chapter 12
Proposed Runtime System Structure
with Support of Resilient Concurrency
Abstract This chapter is some kind of summary of Chaps. 6, 7 in terms of
implementation of principles described there at the level of the runtime system.
Here, we summarize new functions and features of runtime system that simply must
be implemented during the design of fault-tolerant and resilient systems. Special
attention was given to concurrency monitoring in the presence of potential threats
and degradation. While it is clear which part of system software has to deal with
this, the whole problem of concurrency never was addressed proper—here we
present our attempt.
12.1 Runtime System Structure
The runtime itself is built in a strictly hierarchical manner and runs completely in its
own resource. Some of them, such as memory management are well known and
need no further explanation. Figure 12.1 illustrates the structure of the runtime
system, while each box is briefly explained when necessary.
FT Interrupt Handler: The interrupt handler serves as the lowest level component
that interacts and handles all hardware interrupt requests including the syndrome
interrupt and forwards the request to the appropriate handler. The interrupt handler
is fault tolerant in that it is part of the syndrome management.
Main Monitor: The lowest level module has no dependencies at all and consists of
the main system monitor, which is responsible for the coordination of all other
modules, such as the initialization of resources, timer services (not shown), interrupt handling, and all the remaining depicted functions.
Resource Management: This module is responsible for resource management, i.e.,
memory allocation, device driver management, and their associated resources, etc.
Reconfiguration Monitor: This module keeps track of the current software configuration, i.e., the current resources configuration and can in case of faults initiate
and perform the software configuration. For each of the available resources, it also
keeps track of its state, according to Sect. 7.4.3.
© Springer Nature Switzerland AG 2020
I. Schagaev et al., Software Design for Resilient Computer Systems,
https://doi.org/10.1007/978-3-030-21244-5_12
177
Précédent

- 189/315

Suivant