@startuml scale 5 as 100 pixels robust "PD 1" as pd1 robust "PD 2" as pd2 robust "seL4" as kernel concise "Buffer" as buf kernel has running,stopped pd1 has running,ready,stopped pd2 has running,ready,stopped @0 pd2 is running pd1 is stopped kernel is stopped buf is {-} @5 buf is A @10 pd2 is ready kernel is running @11 kernel is stopped pd1 is ready pd2 is running @15 pd2 is stopped kernel is running @16 pd1 is running kernel is stopped @18 pd1 is ready kernel is running @19 kernel is stopped pd2 is running @20 pd2 is stopped pd2 is ready kernel is running @21 kernel is stopped pd1 is running pd2@10 -> pd1@11 : Notification pd1@5 -> buf@5.5 : Write 'A' buf@16 -> pd1@16.5 : Read 'A' pd1@18 -> pd2@19 : Notification caption When PD 2 sends a notification to the lower priority PD 1, it continues running, PD 1 only gets eventually scheduled, later. PD 2 must not overwrite Buffer until having received acknowledgment of receival from PD 1, so no earlier than at t=19. end caption @enduml
Decode URL
Submit
amiga
aws-orange
black-knight
bluegray
blueprint
cerulean-outline
cerulean
crt-amber
crt-green
cyborg-outline
cyborg
hacker
lightgray
mars
materia-outline
materia
metal
mimeograph
minty
plain
reddress-darkblue
reddress-darkgreen
reddress-darkorange
reddress-darkred
reddress-lightblue
reddress-lightgreen
reddress-lightorange
reddress-lightred
sandstone
silver
sketchy-outline
sketchy
spacelab
spacelab-white
superhero-outline
superhero
toy
united
vibrant
🎉 Discover the future PlantUML Web Editor! 🚀
PNG
SVG
ASCII Art