diff options
Diffstat (limited to 'doc/puml/exec-seq.puml')
-rw-r--r-- | doc/puml/exec-seq.puml | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/doc/puml/exec-seq.puml b/doc/puml/exec-seq.puml new file mode 100644 index 0000000..cffc5b0 --- /dev/null +++ b/doc/puml/exec-seq.puml @@ -0,0 +1,37 @@ +@startuml exec-seq +"A" -> "S": +RUN_CMD +"A" -> "S": Command Frame +Create P +"S" -> "P": fork(), exec() + +"A" -> "S": +STDIO +"A" -> "S": STDIO Frame +"A" -> "S": STDIO Data + +"S" -> "P": STDIO Data +"P" -> "S": STDIO Data + +"S" --> "A": STDIO +"S" --> "A": STDIO Frame +"S" --> "A": STDIO Data + +Note across: Repeat ... + +"A" -> "S": +STDIO +"A" -> "S": STDIO Frame len=0, fin +"S" -> "P": STDIN EOF + +"P" -> "S": STDOUT EOF +"S" --> "A": STDIO +"S" --> "A": STDIO Frame len=0, fin + +"P" -> "S": STDERR EOF +"S" --> "A": STDIO +"S" --> "A": STDIO Frame len=0, err, fin + +"P" -> "P": exit() +"S" <-> "P" !!: waitpid() +Note over "P": Process reaped +"S" --> "A": Status +"S" --> "A": Status Frame +@enduml |