KhronosGroup / KhronosGroup/KSCAF_DocGuidelines

Provide initialisation and shutdown functions

Open
#30 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
CSS
Stars
2
Forks
2
PR merge metrics
No merged PRs in 30d

Description

It is generally accepted and advised for safety critical (SC) systems that all resources that are required during the lifetime of a process are allocated, bound to or located before commencing work whenever possible. Should during the initialisation stage of the SC implementation it is found that one or more critical resources are not available for the process to continue and operate as expected efficiently then the initialisation phase should terminate reporting back to the client the error status so that the client application can consider appropriate planned mitigation actions.

It is recommended that a SC API provide an explicit initialisation function which does not have dependencies on other calls in the same API and can be called at the earliest opportunity before commencing work.

The error status should be clear, unique and unambiguous for each and every resource that is not available.

Conversely a SC implementation on termination should release all the resources or bindings acquired during initialisation or during runtime. It is therefore recommended there is a matching shutdown and release function provided in the same SC API to enable an implementation to release its resources. The shutdown functions should return the status on each of the resources which failed to be released.

Contributor guide

No contributing guide indexed for this repository

Research direction

No implementation files, entry points, or tests are named. Start by reviewing the initialization and shutdown requirements in this issue, then locate the relevant safety-critical API specification area. Done means the API defines explicit initialization and shutdown functions with clear per-resource failure statuses.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.