mirror of
https://github.com/troglobit/finit.git
synced 2026-10-01 05:22:48 +07:00
doc: Add service state machine documentation
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
# Services
|
||||
|
||||
## State Machine
|
||||
|
||||

|
||||
|
||||
A service is bound to a state machine that is in one of six (6)
|
||||
states. For `run`s and `task`s there is an additional end state called
|
||||
`DONE`, not shown in the diagram for brevity. All services start in
|
||||
the `HALTED` state.
|
||||
|
||||
The current state depends on the two following conditions:
|
||||
|
||||
* `E`: Service enabled. In order for `E` to be satisfied, the service
|
||||
must be allowed to run in the current runlevel and must not be
|
||||
blocked. A service may be blocked for several reasons:
|
||||
|
||||
- The user has manually stopped the service using `initctl stop
|
||||
JOB`.
|
||||
|
||||
- The binary repeatedly dies after being started. I.e. keeps
|
||||
crashing.
|
||||
|
||||
- The binary is missing in the filesystem.
|
||||
|
||||
* `C`: Service conditions are satisfied.
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
Reference in New Issue
Block a user