![]() |
F´ Flight Software - C/C++ Documentation
NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
|
The Svc::FatalHandler is responsible for handling FATAL event notifications from the system.
The requirements for Svc::FatalHandler are as follows:
| Requirement | Description | Verification Method |
|---|---|---|
| FH-001 | The Svc::FatalHandler component shall handle FATAL notifications | Unit Test |
| FH-002 | The Svc::FatalHandler component shall shut down the Unix process | Unit Test |
| FH-002 | The Svc::FatalHandler component shall suspend the thread calling FATAL | Unit Test |
The Svc::FatalHandler component has the following component diagram:

The Svc::FatalHandler component uses the following port types:
| Port Data Type | Name | Direction | Kind | Usage |
|---|---|---|---|---|
Svc::Fatal | FatalReceive | Input | Synch | Receive FATAL notifications |
For Unix variants, it delays for one second before exiting with a segmentation fault. This allows time for the FATAL to propagate to the ground system so the user can see what event occurred and also generates a core for debugging (assuming ulimit is set correctly). For VxWorks, it suspends the calling thread. Projects can replace this component with another that does project-specific behavior like resets.
The Svc::FatalHandler handles FATAL notifications:

Svc::FatalHandler has no state machines.
Svc::FatalHandler has no significant algorithms.
TBD
| Document | Link |
|---|---|
| Design Checklist | Link |
| Code Checklist | Link |
| Unit Test Checklist | Link |
Coverage Output - CommandDispatcherImpl.cpp
Coverage Output - CommandDispatcherComponentAc.cpp
| Date | Description |
|---|---|
| 9/26/2016 | Design review edits |