Changes for page Interfaces and Rulesets
Last modified by cbu on 2025/01/30 12:05
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -93,44 +93,46 @@ 93 93 94 94 === Stations === 95 95 96 -* Each station has one drive-through track for each possible direction: 96 +* --Each station has one drive-through track for each possible direction:-- 97 97 98 98 |=(% style="margin-left: 60.0px;" %)(% style="margin-left: 60.0px;" %) 99 99 ((( 100 -station 100 +--station-- 101 101 )))|=(% style="margin-left: 30.0px;" %)(% style="margin-left: 30.0px;" %) 102 102 ((( 103 -drive-through track 103 +--drive-through track-- 104 104 ))) 105 105 (% style="margin-left: 30.0px;" %)|(% style="margin-left: 30.0px;" %)(% style="margin-left: 30.0px;" %) 106 106 ((( 107 -IC_station 107 +--IC_station-- 108 108 )))|(% style="margin-left: 30.0px;" %)(% style="margin-left: 30.0px;" %) 109 109 ((( 110 -IC_ST_1 110 +--IC_ST_1-- 111 111 ))) 112 112 (% style="margin-left: 30.0px;" %)|(% style="margin-left: 30.0px;" %)(% style="margin-left: 30.0px;" %) 113 113 ((( 114 -OC_station 114 +--OC_station-- 115 115 )))|(% style="margin-left: 30.0px;" %)(% style="margin-left: 30.0px;" %) 116 116 ((( 117 -OC_ST_3 117 +--OC_ST_3-- 118 118 ))) 119 119 (% style="margin-left: 30.0px;" %)|(% style="margin-left: 30.0px;" %)(% style="margin-left: 30.0px;" %) 120 120 ((( 121 -KH_station 121 +--KH_station-- 122 122 )))|(% style="margin-left: 30.0px;" %)(% style="margin-left: 30.0px;" %) 123 123 ((( 124 -KH_ST_5 124 +--KH_ST_5-- 125 125 ))) 126 126 (% style="margin-left: 30.0px;" %)|(% colspan="1" style="margin-left: 30.0px;" %)(% colspan="1" style="margin-left: 30.0px;" %) 127 127 ((( 128 -KH_station(r) 128 +--KH_station(r)-- 129 129 )))|(% colspan="1" style="margin-left: 30.0px;" %)(% colspan="1" style="margin-left: 30.0px;" %) 130 130 ((( 131 -KH_ST_1 131 +--KH_ST_1-- 132 132 ))) 133 133 134 +* If the preferred station track is blocked the trains can switch to any other free track. 135 + 134 134 == Rulesets == 135 135 136 136 === Logging === ... ... @@ -146,3 +146,12 @@ 146 146 147 147 * Use entry-/exit-actions instead of actions on transitions, if possible. 148 148 * If using hostcode, only use functions delivered by our own C-Interface and not the Höhrmann-API. 151 + 152 +=== Deadlock Prevention === 153 + 154 +* When attempting to reserve more than one segment (Entering a station, passing a junction) a separate protocol for deadlock prevention must be adhered to. 155 +* In each tick the controller must check if only partial permissions were granted. 156 +* If partial permission was granted the train waits for one tick and releases all locks. 157 +* In the following tick the locks are requested again. 158 +* As a special case the controllers passing through KIO_LN_0 or KIO_LN_1 must wait an additional tick after releasing the requests. 159 +* A sample controller can be found in the repository at [[/doc/deadlocks/resolve_deadlock.sct>>url:https://git.rtsys.informatik.uni-kiel.de/projects/PRAK/repos/14ss-railway/browse/doc/deadlocks/resolve_deadlock.sct||shape="rect"]]
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -9471 0351 +9471287 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/SS14Railway/pages/9471 035/Interfaces and Rulesets1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/SS14Railway/pages/9471287/Interfaces and Rulesets