1<?xml version="1.0" encoding="UTF-8" standalone="no"?> 2<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> 3<!-- Generated by Microsoft Visio, SVG Export rcu_general_info.svg Page-1 --> 4 5<!-- SPDX-License-Identifier: BSD-3-Clause --> 6<!-- Copyright(c) 2019 Arm Limited --> 7 8<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" 9 xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="21.5in" height="16.5in" viewBox="0 0 1548 1188" 10 xml:space="preserve" color-interpolation-filters="sRGB" class="st21"> 11 <v:documentProperties v:langID="1033" v:viewMarkup="false"> 12 <v:userDefs> 13 <v:ud v:nameU="msvSubprocessMaster" v:prompt="" v:val="VT4(Rectangle)"/> 14 <v:ud v:nameU="msvNoAutoConnect" v:val="VT0(1):26"/> 15 </v:userDefs> 16 </v:documentProperties> 17 18 <style type="text/css"> 19 <![CDATA[ 20 .st1 {fill:#92d050;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75} 21 .st2 {fill:#ff0000;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75} 22 .st3 {stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75} 23 .st4 {fill:#ffffff;font-family:Calibri;font-size:1.81435em;font-weight:bold} 24 .st5 {fill:#333e48;font-family:Century Gothic;font-size:1.81435em} 25 .st6 {fill:#000000;font-family:Calibri;font-size:1.99578em;font-weight:bold} 26 .st7 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.45071} 27 .st8 {fill:#000000;font-family:Century Gothic;font-size:1.75001em} 28 .st9 {font-size:1em} 29 .st10 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.90143} 30 .st11 {fill:#333e48;font-family:Calibri;font-size:2.11672em;font-weight:bold} 31 .st12 {stroke:#651beb;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.90143} 32 .st13 {stroke:#b31166;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.725356} 33 .st14 {fill:#000000;font-family:Century Gothic;font-size:1.99999em} 34 .st15 {fill:#feffff;font-family:Calibri;font-size:1.99999em;font-weight:bold} 35 .st16 {marker-end:url(#mrkr5-239);marker-start:url(#mrkr5-237);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:3} 36 .st17 {fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.54347826086957} 37 .st18 {marker-end:url(#mrkr5-248);marker-start:url(#mrkr5-246);stroke:#651beb;stroke-linecap:round;stroke-linejoin:round;stroke-width:3} 38 .st19 {fill:#651beb;fill-opacity:1;stroke:#651beb;stroke-opacity:1;stroke-width:0.67567567567568} 39 .st20 {marker-end:url(#mrkr5-239);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:3} 40 .st21 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3} 41 ]]> 42 </style> 43 44 <defs id="Markers"> 45 <g id="lend5"> 46 <path d="M 2 1 L 0 0 L 1.98117 -0.993387 C 1.67173 -0.364515 1.67301 0.372641 1.98465 1.00043 " style="stroke:none"/> 47 </g> 48 <marker id="mrkr5-237" class="st17" v:arrowType="5" v:arrowSize="2" v:setback="3.1" refX="3.1" orient="auto" 49 markerUnits="strokeWidth" overflow="visible"> 50 <use xlink:href="#lend5" transform="scale(1.84) "/> 51 </marker> 52 <marker id="mrkr5-239" class="st17" v:arrowType="5" v:arrowSize="2" v:setback="3.22" refX="-3.22" orient="auto" 53 markerUnits="strokeWidth" overflow="visible"> 54 <use xlink:href="#lend5" transform="scale(-1.84,-1.84) "/> 55 </marker> 56 <marker id="mrkr5-246" class="st19" v:arrowType="5" v:arrowSize="0" v:setback="2.47" refX="2.47" orient="auto" 57 markerUnits="strokeWidth" overflow="visible"> 58 <use xlink:href="#lend5" transform="scale(1.48) "/> 59 </marker> 60 <marker id="mrkr5-248" class="st19" v:arrowType="5" v:arrowSize="0" v:setback="2.59" refX="-2.59" orient="auto" 61 markerUnits="strokeWidth" overflow="visible"> 62 <use xlink:href="#lend5" transform="scale(-1.48,-1.48) "/> 63 </marker> 64 </defs> 65 <g v:mID="0" v:index="1" v:groupContext="foregroundPage"> 66 <v:userDefs> 67 <v:ud v:nameU="msvThemeOrder" v:val="VT0(0):26"/> 68 </v:userDefs> 69 <title>Page-1</title> 70 <v:pageProperties v:drawingScale="1" v:pageScale="1" v:drawingUnits="0" v:shadowOffsetX="9" v:shadowOffsetY="-9"/> 71 <v:layer v:name="Connector" v:index="0"/> 72 <g id="shape3-1" v:mID="3" v:groupContext="shape" transform="translate(327.227,-946.908)"> 73 <title>Sheet.3</title> 74 <path d="M0 1142.11 C0 1137.08 4.14 1132.94 9.17 1132.94 L124.27 1132.94 C129.36 1132.94 133.44 1137.08 133.44 1142.11 75 L133.44 1178.82 C133.44 1183.92 129.36 1188 124.27 1188 L9.17 1188 C4.14 1188 0 1183.92 0 1178.82 L0 1142.11 76 Z" class="st1"/> 77 </g> 78 <g id="shape4-3" v:mID="4" v:groupContext="shape" transform="translate(460.665,-944.869)"> 79 <title>Sheet.4</title> 80 <path d="M0 1142.11 C0 1137.08 4.14 1132.94 9.17 1132.94 L141.59 1132.94 C146.68 1132.94 150.75 1137.08 150.75 1142.11 81 L150.75 1178.82 C150.75 1183.92 146.68 1188 141.59 1188 L9.17 1188 C4.14 1188 0 1183.92 0 1178.82 L0 1142.11 82 Z" class="st2"/> 83 </g> 84 <g id="shape5-5" v:mID="5" v:groupContext="shape" transform="translate(519.302,-950.79)"> 85 <title>Sheet.5</title> 86 <desc>D1</desc> 87 <v:textBlock v:margins="rect(0,0,0,0)"/> 88 <v:textRect cx="23.7162" cy="1169.64" width="47.44" height="36.7141"/> 89 <path d="M47.43 1151.29 L0 1151.29 L0 1188 L47.43 1188 L47.43 1151.29" class="st3"/> 90 <text x="11.34" y="1176.17" class="st4" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>D1</text> </g> 91 <g id="shape6-9" v:mID="6" v:groupContext="shape" transform="translate(612.438,-944.869)"> 92 <title>Sheet.6</title> 93 <path d="M0 1141.6 C0 1136.82 3.88 1132.94 8.66 1132.94 L43.29 1132.94 C48.13 1132.94 51.95 1136.82 51.95 1141.6 L51.95 94 1179.33 C51.95 1184.18 48.13 1188 43.29 1188 L8.66 1188 C3.88 1188 0 1184.18 0 1179.33 L0 1141.6 Z" 95 class="st1"/> 96 </g> 97 <g id="shape7-11" v:mID="7" v:groupContext="shape" transform="translate(664.388,-945.889)"> 98 <title>Sheet.7</title> 99 <path d="M0 1142.11 C0 1137.08 4.14 1132.94 9.17 1132.94 L141.59 1132.94 C146.68 1132.94 150.75 1137.08 150.75 1142.11 100 L150.75 1178.82 C150.75 1183.92 146.68 1188 141.59 1188 L9.17 1188 C4.14 1188 0 1183.92 0 1178.82 L0 1142.11 101 Z" class="st2"/> 102 </g> 103 <g id="shape8-13" v:mID="8" v:groupContext="shape" transform="translate(723.025,-951.494)"> 104 <title>Sheet.8</title> 105 <desc>D2</desc> 106 <v:textBlock v:margins="rect(0,0,0,0)"/> 107 <v:textRect cx="23.7162" cy="1169.64" width="47.44" height="36.7141"/> 108 <path d="M47.43 1151.29 L0 1151.29 L0 1188 L47.43 1188 L47.43 1151.29" class="st3"/> 109 <text x="11.34" y="1176.17" class="st4" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>D2</text> </g> 110 <g id="shape9-17" v:mID="9" v:groupContext="shape" transform="translate(814.123,-945.889)"> 111 <title>Sheet.9</title> 112 <path d="M0 1141.6 C0 1136.82 3.88 1132.94 8.66 1132.94 L43.29 1132.94 C48.13 1132.94 51.95 1136.82 51.95 1141.6 L51.95 113 1179.33 C51.95 1184.18 48.13 1188 43.29 1188 L8.66 1188 C3.88 1188 0 1184.18 0 1179.33 L0 1141.6 Z" 114 class="st1"/> 115 </g> 116 <g id="shape10-19" v:mID="10" v:groupContext="shape" transform="translate(27,-952.759)"> 117 <title>Sheet.10</title> 118 <desc>Reader Thread 1</desc> 119 <v:textBlock v:margins="rect(0,0,0,0)"/> 120 <v:textRect cx="146.259" cy="1169.64" width="292.52" height="36.7136"/> 121 <path d="M292.52 1151.29 L0 1151.29 L0 1188 L292.52 1188 L292.52 1151.29" class="st3"/> 122 <text x="58.76" y="1176.17" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Reader Thread 1</text> </g> 123 <g id="shape11-23" v:mID="11" v:groupContext="shape" transform="translate(379.176,-863.295)"> 124 <title>Sheet.11</title> 125 <path d="M0 1142.11 C0 1137.08 4.14 1132.94 9.17 1132.94 L124.27 1132.94 C129.36 1132.94 133.44 1137.08 133.44 1142.11 126 L133.44 1178.82 C133.44 1183.92 129.36 1188 124.27 1188 L9.17 1188 C4.14 1188 0 1183.92 0 1178.82 L0 1142.11 127 Z" class="st1"/> 128 </g> 129 <g id="shape12-25" v:mID="12" v:groupContext="shape" transform="translate(512.614,-861.255)"> 130 <title>Sheet.12</title> 131 <path d="M0 1142.11 C0 1137.08 4.14 1132.94 9.17 1132.94 L141.59 1132.94 C146.68 1132.94 150.75 1137.08 150.75 1142.11 132 L150.75 1178.82 C150.75 1183.92 146.68 1188 141.59 1188 L9.17 1188 C4.14 1188 0 1183.92 0 1178.82 L0 1142.11 133 Z" class="st2"/> 134 </g> 135 <g id="shape13-27" v:mID="13" v:groupContext="shape" transform="translate(561.284,-867.106)"> 136 <title>Sheet.13</title> 137 <desc>D1</desc> 138 <v:textBlock v:margins="rect(0,0,0,0)"/> 139 <v:textRect cx="23.7162" cy="1169.64" width="47.44" height="36.7141"/> 140 <path d="M47.43 1151.29 L0 1151.29 L0 1188 L47.43 1188 L47.43 1151.29" class="st3"/> 141 <text x="11.34" y="1176.17" class="st4" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>D1</text> </g> 142 <g id="shape14-31" v:mID="14" v:groupContext="shape" transform="translate(664.388,-861.255)"> 143 <title>Sheet.14</title> 144 <path d="M0 1141.6 C0 1136.82 3.88 1132.94 8.66 1132.94 L43.29 1132.94 C48.13 1132.94 51.95 1136.82 51.95 1141.6 L51.95 145 1179.33 C51.95 1184.18 48.13 1188 43.29 1188 L8.66 1188 C3.88 1188 0 1184.18 0 1179.33 L0 1141.6 Z" 146 class="st1"/> 147 </g> 148 <g id="shape15-33" v:mID="15" v:groupContext="shape" transform="translate(716.337,-862.275)"> 149 <title>Sheet.15</title> 150 <path d="M0 1142.11 C0 1137.08 4.14 1132.94 9.17 1132.94 L141.59 1132.94 C146.68 1132.94 150.75 1137.08 150.75 1142.11 151 L150.75 1178.82 C150.75 1183.92 146.68 1188 141.59 1188 L9.17 1188 C4.14 1188 0 1183.92 0 1178.82 L0 1142.11 152 Z" class="st2"/> 153 </g> 154 <g id="shape16-35" v:mID="16" v:groupContext="shape" transform="translate(775.009,-867.81)"> 155 <title>Sheet.16</title> 156 <desc>D2</desc> 157 <v:textBlock v:margins="rect(0,0,0,0)"/> 158 <v:textRect cx="23.7162" cy="1169.64" width="47.44" height="36.7141"/> 159 <path d="M47.43 1151.29 L0 1151.29 L0 1188 L47.43 1188 L47.43 1151.29" class="st3"/> 160 <text x="11.34" y="1176.17" class="st4" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>D2</text> </g> 161 <g id="shape17-39" v:mID="17" v:groupContext="shape" transform="translate(866.073,-862.275)"> 162 <title>Sheet.17</title> 163 <path d="M0 1141.6 C0 1136.82 3.88 1132.94 8.66 1132.94 L43.29 1132.94 C48.13 1132.94 51.95 1136.82 51.95 1141.6 L51.95 164 1179.33 C51.95 1184.18 48.13 1188 43.29 1188 L8.66 1188 C3.88 1188 0 1184.18 0 1179.33 L0 1141.6 Z" 165 class="st1"/> 166 </g> 167 <g id="shape18-41" v:mID="18" v:groupContext="shape" transform="translate(143.348,-873.294)"> 168 <title>Sheet.18</title> 169 <desc>T 2</desc> 170 <v:textBlock v:margins="rect(0,0,0,0)"/> 171 <v:textRect cx="26.9796" cy="1169.64" width="53.96" height="36.7136"/> 172 <path d="M53.96 1151.29 L0 1151.29 L0 1188 L53.96 1188 L53.96 1151.29" class="st3"/> 173 <text x="13.3" y="1176.17" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>T 2</text> </g> 174 <g id="shape19-45" v:mID="19" v:groupContext="shape" transform="translate(474.188,-777.642)"> 175 <title>Sheet.19</title> 176 <path d="M0 1143.01 C0 1138.04 4.07 1133.96 9.04 1133.96 L124.46 1133.96 C129.43 1133.96 133.44 1138.04 133.44 1143.01 177 L133.44 1179.01 C133.44 1183.99 129.43 1188 124.46 1188 L9.04 1188 C4.07 1188 0 1183.99 0 1179.01 L0 1143.01 178 Z" class="st1"/> 179 </g> 180 <g id="shape20-47" v:mID="20" v:groupContext="shape" transform="translate(608.645,-775.602)"> 181 <title>Sheet.20</title> 182 <path d="M0 1142.11 C0 1137.08 4.14 1132.94 9.17 1132.94 L141.59 1132.94 C146.68 1132.94 150.75 1137.08 150.75 1142.11 183 L150.75 1178.82 C150.75 1183.92 146.68 1188 141.59 1188 L9.17 1188 C4.14 1188 0 1183.92 0 1178.82 L0 1142.11 184 Z" class="st2"/> 185 </g> 186 <g id="shape21-49" v:mID="21" v:groupContext="shape" transform="translate(666.862,-781.311)"> 187 <title>Sheet.21</title> 188 <desc>D1</desc> 189 <v:textBlock v:margins="rect(0,0,0,0)"/> 190 <v:textRect cx="23.7162" cy="1169.64" width="47.44" height="36.7141"/> 191 <path d="M47.43 1151.29 L0 1151.29 L0 1188 L47.43 1188 L47.43 1151.29" class="st3"/> 192 <text x="11.34" y="1176.17" class="st4" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>D1</text> </g> 193 <g id="shape22-53" v:mID="22" v:groupContext="shape" transform="translate(760.418,-775.602)"> 194 <title>Sheet.22</title> 195 <path d="M0 1141.6 C0 1136.82 3.88 1132.94 8.66 1132.94 L43.29 1132.94 C48.13 1132.94 51.95 1136.82 51.95 1141.6 L51.95 196 1179.33 C51.95 1184.18 48.13 1188 43.29 1188 L8.66 1188 C3.88 1188 0 1184.18 0 1179.33 L0 1141.6 Z" 197 class="st1"/> 198 </g> 199 <g id="shape23-55" v:mID="23" v:groupContext="shape" transform="translate(812.367,-776.622)"> 200 <title>Sheet.23</title> 201 <path d="M0 1142.11 C0 1137.08 4.14 1132.94 9.17 1132.94 L141.59 1132.94 C146.68 1132.94 150.75 1137.08 150.75 1142.11 202 L150.75 1178.82 C150.75 1183.92 146.68 1188 141.59 1188 L9.17 1188 C4.14 1188 0 1183.92 0 1178.82 L0 1142.11 203 Z" class="st2"/> 204 </g> 205 <g id="shape24-57" v:mID="24" v:groupContext="shape" transform="translate(870.584,-782.015)"> 206 <title>Sheet.24</title> 207 <desc>D2</desc> 208 <v:textBlock v:margins="rect(0,0,0,0)"/> 209 <v:textRect cx="23.7162" cy="1169.64" width="47.44" height="36.7141"/> 210 <path d="M47.43 1151.29 L0 1151.29 L0 1188 L47.43 1188 L47.43 1151.29" class="st3"/> 211 <text x="11.34" y="1176.17" class="st4" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>D2</text> </g> 212 <g id="shape25-61" v:mID="25" v:groupContext="shape" transform="translate(962.103,-776.622)"> 213 <title>Sheet.25</title> 214 <path d="M0 1141.6 C0 1136.82 3.88 1132.94 8.66 1132.94 L43.29 1132.94 C48.13 1132.94 51.95 1136.82 51.95 1141.6 L51.95 215 1179.33 C51.95 1184.18 48.13 1188 43.29 1188 L8.66 1188 C3.88 1188 0 1184.18 0 1179.33 L0 1141.6 Z" 216 class="st1"/> 217 </g> 218 <g id="shape26-63" v:mID="26" v:groupContext="shape" transform="translate(142.645,-787.5)"> 219 <title>Sheet.26</title> 220 <desc>T 3</desc> 221 <v:textBlock v:margins="rect(0,0,0,0)"/> 222 <v:textRect cx="26.9796" cy="1169.64" width="53.96" height="36.7136"/> 223 <path d="M53.96 1151.29 L0 1151.29 L0 1188 L53.96 1188 L53.96 1151.29" class="st3"/> 224 <text x="13.3" y="1176.17" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>T 3</text> </g> 225 <g id="shape28-67" v:mID="28" v:groupContext="shape" transform="translate(882.826,-574.263)"> 226 <title>Sheet.28</title> 227 <desc>Time</desc> 228 <v:textBlock v:margins="rect(0,0,0,0)"/> 229 <v:textRect cx="45.9546" cy="1166.58" width="91.91" height="42.8314"/> 230 <path d="M91.91 1145.17 L0 1145.17 L0 1188 L91.91 1188 L91.91 1145.17" class="st3"/> 231 <text x="21.32" y="1173.77" class="st6" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Time</text> </g> 232 <g id="shape29-71" v:mID="29" v:groupContext="shape" transform="translate(419.545,-660.119)"> 233 <title>Sheet.29</title> 234 <path d="M0 1145.17 L0 1188 L0 1145.17" class="st7"/> 235 </g> 236 <g id="shape30-74" v:mID="30" v:groupContext="shape" transform="translate(419.545,-684.783)"> 237 <title>Sheet.30</title> 238 <path d="M0 1188 L82.7 1187.36 L151.2 1172.07" class="st7"/> 239 </g> 240 <g id="shape31-77" v:mID="31" v:groupContext="shape" transform="translate(214.454,-663.095)"> 241 <title>Sheet.31</title> 242 <desc>Remove reference to entry1</desc> 243 <v:textBlock v:margins="rect(0,0,0,0)"/> 244 <v:textRect cx="96.7728" cy="1169.45" width="193.55" height="37.1049"/> 245 <path d="M193.55 1150.9 L0 1150.9 L0 1188 L193.55 1188 L193.55 1150.9" class="st3"/> 246 <text x="2.39" y="1163.15" class="st8" v:langID="1033"><v:paragraph v:horizAlign="2"/><v:tabList/>Remove reference <tspan 247 x="104.08" dy="1.2em" class="st9">to entry1</tspan></text> </g> 248 <g id="shape33-82" v:mID="33" v:groupContext="shape" transform="translate(571.287,-681.326)"> 249 <title>Sheet.33</title> 250 <path d="M0 738.67 L0 1188" class="st10"/> 251 </g> 252 <g id="shape34-85" v:mID="34" v:groupContext="shape" transform="translate(515.013,-1130.65)"> 253 <title>Sheet.34</title> 254 <desc>Delete</desc> 255 <v:textBlock v:margins="rect(0,0,0,0)"/> 256 <v:textRect cx="60.7243" cy="1166.58" width="121.45" height="42.8314"/> 257 <path d="M121.45 1145.17 L0 1145.17 L0 1188 L121.45 1188 L121.45 1145.17" class="st3"/> 258 <text x="26.02" y="1174.2" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Delete</text> </g> 259 <g id="shape35-89" v:mID="35" v:groupContext="shape" transform="translate(434.372,-1096.8)"> 260 <title>Sheet.35</title> 261 <path d="M0 1154.35 L0 1188 L0 1154.35" class="st7"/> 262 </g> 263 <g id="shape36-92" v:mID="36" v:groupContext="shape" transform="translate(434.372,-1100.37)"> 264 <title>Sheet.36</title> 265 <path d="M0 1171.88 L84.54 1171.24 L136.43 1188" class="st7"/> 266 </g> 267 <g id="shape37-95" v:mID="37" v:groupContext="shape" transform="translate(193.5,-1103.76)"> 268 <title>Sheet.37</title> 269 <desc>Delete entry1 from D1</desc> 270 <v:textBlock v:margins="rect(0,0,0,0)"/> 271 <v:textRect cx="114.75" cy="1175.76" width="229.5" height="24.4771"/> 272 <path d="M229.5 1163.52 L0 1163.52 L0 1188 L229.5 1188 L229.5 1163.52" class="st3"/> 273 <text x="3.88" y="1182.06" class="st8" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Delete entry1 from D1</text> </g> 274 <g id="shape38-99" v:mID="38" v:groupContext="shape" transform="translate(714.3,-675.425)"> 275 <title>Sheet.38</title> 276 <path d="M0 732.77 L0 1188" class="st10"/> 277 </g> 278 <g id="shape39-102" v:mID="39" v:groupContext="shape" transform="translate(795.979,-637.904)"> 279 <title>Sheet.39</title> 280 <path d="M0 1112.54 L0 1188 L0 1112.54" class="st7"/> 281 </g> 282 <g id="shape40-105" v:mID="40" v:groupContext="shape" transform="translate(716.782,-675.425)"> 283 <title>Sheet.40</title> 284 <path d="M79.2 1188 L52.71 1187.94 L0 1147.21" class="st7"/> 285 </g> 286 <g id="shape41-108" v:mID="41" v:groupContext="shape" transform="translate(803.572,-639.285)"> 287 <title>Sheet.41</title> 288 <desc>Free memory for entries1 and 2 after every reader has gone th...</desc> 289 <v:textBlock v:margins="rect(0,0,0,0)"/> 290 <v:textRect cx="172.421" cy="1152.51" width="344.85" height="70.9752"/> 291 <path d="M344.84 1117.02 L0 1117.02 L0 1188 L344.84 1188 L344.84 1117.02" class="st3"/> 292 <text x="0" y="1133.61" class="st8" v:langID="1033"><v:paragraph/><v:tabList/>Free memory for entries1 and 2 <tspan 293 x="0" dy="1.2em" class="st9">after every reader has gone </tspan><tspan x="0" dy="1.2em" class="st9">through at least 1 quiescent state </tspan> </text> </g> 294 <g id="shape46-114" v:mID="46" v:groupContext="shape" transform="translate(680.801,-1130.65)"> 295 <title>Sheet.46</title> 296 <desc>Free</desc> 297 <v:textBlock v:margins="rect(0,0,0,0)"/> 298 <v:textRect cx="42.0169" cy="1166.58" width="84.04" height="42.8314"/> 299 <path d="M84.03 1145.17 L0 1145.17 L0 1188 L84.03 1188 L84.03 1145.17" class="st3"/> 300 <text x="18.89" y="1174.2" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Free</text> </g> 301 <g id="shape48-118" v:mID="48" v:groupContext="shape" transform="translate(811.005,-1110.05)"> 302 <title>Sheet.48</title> 303 <path d="M0 1145.17 L0 1188 L0 1145.17" class="st7"/> 304 </g> 305 <g id="shape49-121" v:mID="49" v:groupContext="shape" transform="translate(658.61,-1083.99)"> 306 <title>Sheet.49</title> 307 <path d="M153.05 1149.63 L113.7 1149.57 L0 1188" class="st7"/> 308 </g> 309 <g id="shape50-124" v:mID="50" v:groupContext="shape" transform="translate(798.359,-1110.46)"> 310 <title>Sheet.50</title> 311 <desc>Grace Period</desc> 312 <v:textBlock v:margins="rect(0,0,0,0)"/> 313 <v:textRect cx="107.799" cy="1167.81" width="215.6" height="40.3845"/> 314 <path d="M215.6 1147.62 L0 1147.62 L0 1188 L215.6 1188 L215.6 1147.62" class="st3"/> 315 <text x="43.79" y="1174.99" class="st6" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Grace Period</text> </g> 316 <g id="shape51-128" v:mID="51" v:groupContext="shape" transform="translate(599.196,-662.779)"> 317 <title>Sheet.51</title> 318 <path d="M0 732.77 L0 1188" class="st12"/> 319 </g> 320 <g id="shape52-131" v:mID="52" v:groupContext="shape" transform="translate(464.931,-1052.95)"> 321 <title>Sheet.52</title> 322 <path d="M0 1154.35 L0 1188 L0 1154.35" class="st7"/> 323 </g> 324 <g id="shape53-134" v:mID="53" v:groupContext="shape" transform="translate(464.931,-1056.52)"> 325 <title>Sheet.53</title> 326 <path d="M0 1171.88 L84.54 1171.24 L136.43 1188" class="st7"/> 327 </g> 328 <g id="shape54-137" v:mID="54" v:groupContext="shape" transform="translate(225,-1058.76)"> 329 <title>Sheet.54</title> 330 <desc>Delete entry2 from D1</desc> 331 <v:textBlock v:margins="rect(0,0,0,0)"/> 332 <v:textRect cx="114.75" cy="1175.76" width="229.5" height="24.4771"/> 333 <path d="M229.5 1163.52 L0 1163.52 L0 1188 L229.5 1188 L229.5 1163.52" class="st3"/> 334 <text x="3.88" y="1182.06" class="st8" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Delete entry2 from D1</text> </g> 335 <g id="shape56-141" v:mID="56" v:groupContext="shape" transform="translate(711.244,-662.779)"> 336 <title>Sheet.56</title> 337 <path d="M0 732.77 L0 1188" class="st12"/> 338 </g> 339 <g id="shape57-144" v:mID="57" v:groupContext="shape" transform="translate(664.897,-1045.31)"> 340 <title>Sheet.57</title> 341 <path d="M-0 1188 L146.76 1112.94" class="st13"/> 342 </g> 343 <g id="shape58-147" v:mID="58" v:groupContext="shape" transform="translate(619.059,-848.701)"> 344 <title>Sheet.58</title> 345 <path d="M432.2 1184.24 L-0 1188" class="st7"/> 346 </g> 347 <g id="shape59-150" v:mID="59" v:groupContext="shape" transform="translate(1038.62,-837.364)"> 348 <title>Sheet.59</title> 349 <desc>Critical sections</desc> 350 <v:textBlock v:margins="rect(0,0,0,0)"/> 351 <v:textRect cx="130" cy="1167.81" width="260.01" height="40.3845"/> 352 <path d="M260 1147.62 L0 1147.62 L0 1188 L260 1188 L260 1147.62" class="st3"/> 353 <text x="52.25" y="1174.99" class="st6" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Critical sections</text> </g> 354 <g id="shape60-154" v:mID="60" v:groupContext="shape" transform="translate(621.606,-848.828)"> 355 <title>Sheet.60</title> 356 <path d="M0 1173.53 L0 1188" class="st7"/> 357 </g> 358 <g id="shape61-157" v:mID="61" v:groupContext="shape" transform="translate(824.31,-849.848)"> 359 <title>Sheet.61</title> 360 <path d="M0 1173.53 L0 1188" class="st7"/> 361 </g> 362 <g id="shape62-160" v:mID="62" v:groupContext="shape" transform="translate(345.944,-933.143)"> 363 <title>Sheet.62</title> 364 <path d="M705.32 1188 L0 1187.43" class="st7"/> 365 </g> 366 <g id="shape63-163" v:mID="63" v:groupContext="shape" transform="translate(1038.62,-915.684)"> 367 <title>Sheet.63</title> 368 <desc>Quiescent states</desc> 369 <v:textBlock v:margins="rect(0,0,0,0)"/> 370 <v:textRect cx="137.691" cy="1167.81" width="275.39" height="40.3845"/> 371 <path d="M275.38 1147.62 L0 1147.62 L0 1188 L275.38 1188 L275.38 1147.62" class="st3"/> 372 <text x="55.18" y="1174.99" class="st6" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Quiescent states</text> </g> 373 <g id="shape64-167" v:mID="64" v:groupContext="shape" transform="translate(346.581,-932.442)"> 374 <title>Sheet.64</title> 375 <path d="M0 1173.53 L0 1188" class="st7"/> 376 </g> 377 <g id="shape65-170" v:mID="65" v:groupContext="shape" transform="translate(621.606,-933.461)"> 378 <title>Sheet.65</title> 379 <path d="M0 1173.53 L0 1188" class="st7"/> 380 </g> 381 <g id="shape66-173" v:mID="66" v:groupContext="shape" transform="translate(856.905,-934.481)"> 382 <title>Sheet.66</title> 383 <path d="M0 1173.53 L0 1188" class="st7"/> 384 </g> 385 <g id="shape67-176" v:mID="67" v:groupContext="shape" transform="translate(472.82,-756.389)"> 386 <title>Sheet.67</title> 387 <path d="M578.44 1188 L0 1187.43" class="st7"/> 388 </g> 389 <g id="shape68-179" v:mID="68" v:groupContext="shape" transform="translate(473.456,-755.688)"> 390 <title>Sheet.68</title> 391 <path d="M0 1173.53 L0 1188" class="st7"/> 392 </g> 393 <g id="shape69-182" v:mID="69" v:groupContext="shape" transform="translate(1016.87,-757.728)"> 394 <title>Sheet.69</title> 395 <path d="M0 1173.53 L0 1188" class="st7"/> 396 </g> 397 <g id="shape70-185" v:mID="70" v:groupContext="shape" transform="translate(1060.04,-738.651)"> 398 <title>Sheet.70</title> 399 <desc>while(1) loop</desc> 400 <v:textBlock v:margins="rect(0,0,0,0)"/> 401 <v:textRect cx="96.7728" cy="1167.81" width="193.55" height="40.3845"/> 402 <path d="M193.55 1147.62 L0 1147.62 L0 1188 L193.55 1188 L193.55 1147.62" class="st3"/> 403 <text x="31.03" y="1174.99" class="st6" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>while(1) loop</text> </g> 404 <g id="shape71-189" v:mID="71" v:groupContext="shape" transform="translate(190.02,-464.886)"> 405 <title>Sheet.71</title> 406 <path d="M0 1151.91 C0 1148.19 3.88 1145.17 8.66 1145.17 L43.29 1145.17 C48.13 1145.17 51.95 1148.19 51.95 1151.91 L51.95 407 1181.26 C51.95 1185.03 48.13 1188 43.29 1188 L8.66 1188 C3.88 1188 0 1185.03 0 1181.26 L0 1151.91 Z" 408 class="st1"/> 409 </g> 410 <g id="shape72-191" v:mID="72" v:groupContext="shape" transform="translate(259.003,-466.895)"> 411 <title>Sheet.72</title> 412 <desc>Reader thread is not accessing any shared data structure. i.e...</desc> 413 <v:textBlock v:margins="rect(0,0,0,0)"/> 414 <v:textRect cx="344.967" cy="1169.45" width="689.94" height="37.1049"/> 415 <path d="M689.93 1150.9 L0 1150.9 L0 1188 L689.93 1188 L689.93 1150.9" class="st3"/> 416 <text x="0" y="1162.25" class="st14" v:langID="1033"><v:paragraph/><v:tabList/>Reader thread is not accessing any shared data structure.<v:newlineChar/><tspan 417 x="0" dy="1.2em" class="st9">i.e. non critical section or quiescent state.</tspan></text> </g> 418 <g id="shape73-196" v:mID="73" v:groupContext="shape" transform="translate(190.02,-389.169)"> 419 <title>Sheet.73</title> 420 <desc>Dx</desc> 421 <v:textBlock v:margins="rect(4,4,4,4)"/> 422 <v:textRect cx="25.9746" cy="1166.58" width="51.95" height="42.8314"/> 423 <path d="M0 1152.31 C0 1148.39 1.43 1145.17 3.16 1145.17 L48.79 1145.17 C50.55 1145.17 51.95 1148.39 51.95 1152.31 L51.95 424 1180.86 C51.95 1184.83 50.55 1188 48.79 1188 L3.16 1188 C1.43 1188 0 1184.83 0 1180.86 L0 1152.31 Z" 425 class="st2"/> 426 <text x="12.9" y="1173.78" class="st15" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Dx</text> </g> 427 <g id="shape74-199" v:mID="74" v:groupContext="shape" transform="translate(259.003,-388.777)"> 428 <title>Sheet.74</title> 429 <desc>Reader thread is accessing the shared data structure Dx. i.e....</desc> 430 <v:textBlock v:margins="rect(0,0,0,0)"/> 431 <v:textRect cx="344.967" cy="1169.45" width="689.94" height="37.1049"/> 432 <path d="M689.93 1150.9 L0 1150.9 L0 1188 L689.93 1188 L689.93 1150.9" class="st3"/> 433 <text x="0" y="1162.25" class="st14" v:langID="1033"><v:paragraph/><v:tabList/>Reader thread is accessing the shared data structure Dx.<v:newlineChar/><tspan 434 x="0" dy="1.2em" class="st9">i.e. critical section.</tspan></text> </g> 435 <g id="shape75-204" v:mID="75" v:groupContext="shape" transform="translate(289.017,-301.151)"> 436 <title>Sheet.75</title> 437 <desc>Point in time when the reference to the entry is removed usin...</desc> 438 <v:textBlock v:margins="rect(0,0,0,0)"/> 439 <v:textRect cx="332.491" cy="1160.47" width="664.99" height="55.0626"/> 440 <path d="M664.98 1132.94 L0 1132.94 L0 1188 L664.98 1188 L664.98 1132.94" class="st3"/> 441 <text x="0" y="1153.27" class="st14" v:langID="1033"><v:paragraph/><v:tabList/>Point in time when the reference to the entry is removed <tspan 442 x="0" dy="1.2em" class="st9">using an atomic operation.</tspan></text> </g> 443 <g id="shape76-209" v:mID="76" v:groupContext="shape" transform="translate(177.543,-315.596)"> 444 <title>Sheet.76</title> 445 <desc>Delete</desc> 446 <v:textBlock v:margins="rect(0,0,0,0)"/> 447 <v:textRect cx="45.9546" cy="1166.58" width="91.91" height="42.8314"/> 448 <path d="M91.91 1145.17 L0 1145.17 L0 1188 L91.91 1188 L91.91 1145.17" class="st3"/> 449 <text x="11.25" y="1174.2" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Delete</text> </g> 450 <g id="shape77-213" v:mID="77" v:groupContext="shape" transform="translate(288,-239.327)"> 451 <title>Sheet.77</title> 452 <desc>Point in time when the writer can free the deleted entry.</desc> 453 <v:textBlock v:margins="rect(0,0,0,0)"/> 454 <v:textRect cx="328.5" cy="1167.81" width="657" height="40.3845"/> 455 <path d="M657 1147.62 L0 1147.62 L0 1188 L657 1188 L657 1147.62" class="st3"/> 456 <text x="0" y="1175.01" class="st14" v:langID="1033"><v:paragraph/><v:tabList/>Point in time when the writer can free the deleted entry.</text> </g> 457 <g id="shape78-217" v:mID="78" v:groupContext="shape" transform="translate(177.543,-240.744)"> 458 <title>Sheet.78</title> 459 <desc>Free</desc> 460 <v:textBlock v:margins="rect(0,0,0,0)"/> 461 <v:textRect cx="34.3786" cy="1166.58" width="68.76" height="42.8314"/> 462 <path d="M68.76 1145.17 L0 1145.17 L0 1188 L68.76 1188 L68.76 1145.17" class="st3"/> 463 <text x="11.25" y="1174.2" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Free</text> </g> 464 <g id="shape79-221" v:mID="79" v:groupContext="shape" transform="translate(289.228,-163.612)"> 465 <title>Sheet.79</title> 466 <desc>Time duration between Delete and Free, during which memory ca...</desc> 467 <v:textBlock v:margins="rect(0,0,0,0)"/> 468 <v:textRect cx="328.5" cy="1167.81" width="657" height="40.3845"/> 469 <path d="M657 1147.62 L0 1147.62 L0 1188 L657 1188 L657 1147.62" class="st3"/> 470 <text x="0" y="1160.61" class="st14" v:langID="1033"><v:paragraph/><v:tabList/>Time duration between Delete and Free, during which <tspan 471 x="0" dy="1.2em" class="st9">memory cannot be freed.</tspan></text> </g> 472 <g id="shape80-226" v:mID="80" v:groupContext="shape" transform="translate(187.999,-162)"> 473 <title>Sheet.80</title> 474 <desc>Grace Period</desc> 475 <v:textBlock v:margins="rect(0,0,0,0)"/> 476 <v:textRect cx="39.5985" cy="1166.58" width="79.2" height="42.8314"/> 477 <path d="M79.2 1145.17 L0 1145.17 L0 1188 L79.2 1188 L79.2 1145.17" class="st3"/> 478 <text x="0" y="1158.96" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Grace <tspan x="0" dy="1.2em" 479 class="st9">Period</tspan></text> </g> 480 <g id="shape83-231" v:mID="83" v:groupContext="shape" transform="translate(572.146,-1080.07)"> 481 <title>Sheet.83</title> 482 <path d="M9.3 1188 L9.66 1188 L132.49 1188" class="st16"/> 483 </g> 484 <g id="shape84-240" v:mID="84" v:groupContext="shape" transform="translate(599.196,-1042.14)"> 485 <title>Sheet.84</title> 486 <path d="M7.41 1188 L7.77 1188 L104.28 1188" class="st18"/> 487 </g> 488 <g id="shape85-249" v:mID="85" v:groupContext="shape" transform="translate(980.637,-595.338)"> 489 <title>Sheet.85</title> 490 <path d="M0 1188 L92.16 1188" class="st20"/> 491 </g> 492 <g id="shape86-254" v:mID="86" v:groupContext="shape" transform="translate(444.835,-603.428)"> 493 <title>Sheet.86</title> 494 <path d="M0 1145.17 L0 1188 L0 1145.17" class="st7"/> 495 </g> 496 <g id="shape87-257" v:mID="87" v:groupContext="shape" transform="translate(444.835,-637.489)"> 497 <title>Sheet.87</title> 498 <path d="M0 1188 L84.43 1186.61 L154.36 1153.31" class="st7"/> 499 </g> 500 <g id="shape88-260" v:mID="88" v:groupContext="shape" transform="translate(241.369,-607.028)"> 501 <title>Sheet.88</title> 502 <desc>Remove reference to entry2</desc> 503 <v:textBlock v:margins="rect(0,0,0,0)"/> 504 <v:textRect cx="96.7728" cy="1169.45" width="193.55" height="37.1049"/> 505 <path d="M193.55 1150.9 L0 1150.9 L0 1188 L193.55 1188 L193.55 1150.9" class="st3"/> 506 <text x="2.39" y="1163.15" class="st8" v:langID="1033"><v:paragraph v:horizAlign="2"/><v:tabList/>Remove reference <tspan 507 x="104.08" dy="1.2em" class="st9">to entry2</tspan></text> </g> 508 </g> 509</svg> 510