20 lines
707 B
Plaintext
20 lines
707 B
Plaintext
@startuml
|
|
!include card-uml-style.iuml
|
|
scale 620 width
|
|
top to bottom direction
|
|
|
|
class "01 Hazard3 timer\nmtime · mtimecmp" as Timer <<hardware>>
|
|
class "02 RV32I FreeRTOS port\nmachine-timer trap · tick hook" as Port <<boundary>>
|
|
class "03 FreeRTOS scheduler\nReady lists · priorities · time slice" as Scheduler <<kernel>>
|
|
class "04 C application tasks\npeerA · peerB · high probe · verifier" as Application <<application>>
|
|
|
|
Timer --> Port : interrupt when mtime >= mtimecmp
|
|
Port --> Scheduler : xTaskIncrementTick()
|
|
Scheduler --> Application : select highest-priority Ready task
|
|
|
|
note right of Port
|
|
Tick hook records bounded evidence only.
|
|
Application uses public task APIs.
|
|
end note
|
|
@enduml
|