aboutsummaryrefslogtreecommitdiffstats
path: root/doc/guides/prog_guide/img
diff options
context:
space:
mode:
Diffstat (limited to 'doc/guides/prog_guide/img')
-rw-r--r--doc/guides/prog_guide/img/event_crypto_adapter_op_forward.svg1078
-rw-r--r--doc/guides/prog_guide/img/event_crypto_adapter_op_new.svg1061
-rw-r--r--doc/guides/prog_guide/img/malloc_heap.svg1348
-rw-r--r--doc/guides/prog_guide/img/stateful-op.svg116
-rw-r--r--doc/guides/prog_guide/img/stateless-op-shared.svg124
-rw-r--r--doc/guides/prog_guide/img/stateless-op.svg140
6 files changed, 2849 insertions, 1018 deletions
diff --git a/doc/guides/prog_guide/img/event_crypto_adapter_op_forward.svg b/doc/guides/prog_guide/img/event_crypto_adapter_op_forward.svg
new file mode 100644
index 00000000..54466f2e
--- /dev/null
+++ b/doc/guides/prog_guide/img/event_crypto_adapter_op_forward.svg
@@ -0,0 +1,1078 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="720px"
+ height="486px"
+ id="svg13237"
+ version="1.1"
+ inkscape:version="0.48.4 r9939"
+ sodipodi:docname="event_crypto_adapter_enq_deq.svg">
+ <defs
+ id="defs13239">
+ <marker
+ inkscape:stockid="Arrow1Sstart"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Sstart"
+ style="overflow:visible">
+ <path
+ id="path8416"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.2) translate(6,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Send"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Send"
+ style="overflow:visible;">
+ <path
+ id="path8419"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
+ transform="scale(0.2) rotate(180) translate(6,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="DiamondL"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="DiamondL"
+ style="overflow:visible">
+ <path
+ id="path8483"
+ d="M 0,-7.0710768 L -7.0710894,0 L 0,7.0710589 L 7.0710462,0 L 0,-7.0710768 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8)" />
+ </marker>
+ <marker
+ inkscape:stockid="DotL"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="DotL"
+ style="overflow:visible">
+ <path
+ id="path8465"
+ d="M -2.5,-1.0 C -2.5,1.7600000 -4.7400000,4.0 -7.5,4.0 C -10.260000,4.0 -12.5,1.7600000 -12.5,-1.0 C -12.5,-3.7600000 -10.260000,-6.0 -7.5,-6.0 C -4.7400000,-6.0 -2.5,-3.7600000 -2.5,-1.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8) translate(7.4, 1)" />
+ </marker>
+ <marker
+ inkscape:stockid="SquareL"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="SquareL"
+ style="overflow:visible">
+ <path
+ id="path8474"
+ d="M -5.0,-5.0 L -5.0,5.0 L 5.0,5.0 L 5.0,-5.0 L -5.0,-5.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8)" />
+ </marker>
+ <marker
+ inkscape:stockid="TriangleOutL"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="TriangleOutL"
+ style="overflow:visible">
+ <path
+ id="path8546"
+ d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lstart"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Lstart"
+ style="overflow:visible">
+ <path
+ id="path8404"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8) translate(12.5,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Mend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Mend"
+ style="overflow:visible;">
+ <path
+ id="path8413"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
+ transform="scale(0.4) rotate(180) translate(10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow2Lend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow2Lend"
+ style="overflow:visible;">
+ <path
+ id="path8425"
+ style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
+ d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+ transform="scale(1.1) rotate(180) translate(1,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Lend"
+ style="overflow:visible;">
+ <path
+ id="path8407"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
+ transform="scale(0.8) rotate(180) translate(12.5,0)" />
+ </marker>
+ <filter
+ id="filter_2"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15" />
+ </filter>
+ <filter
+ id="filter_2-3"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1" />
+ </filter>
+ <filter
+ id="filter_2-0"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-7" />
+ </filter>
+ <filter
+ id="filter_2-0-8"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-7-7" />
+ </filter>
+ <filter
+ id="filter_2-3-9"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-6" />
+ </filter>
+ <filter
+ id="filter_2-3-6"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-63" />
+ </filter>
+ <filter
+ id="filter_2-3-91"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-3" />
+ </filter>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-5"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-3"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-6"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-0"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lstart"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lstart-7"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8404-0"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(0.8,0,0,0.8,10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-51"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-1"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-3"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-6"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-62"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-9"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-2"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-7"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lstart"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lstart-7-9"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8404-0-3"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(0.8,0,0,0.8,10,0)" />
+ </marker>
+ <filter
+ id="filter_2-3-6-1"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-63-8" />
+ </filter>
+ <filter
+ id="filter_2-3-92"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-2" />
+ </filter>
+ <filter
+ id="filter_2-3-94"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-7" />
+ </filter>
+ <marker
+ inkscape:stockid="Arrow1Lstart"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lstart-7-6"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8404-0-1"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(0.8,0,0,0.8,10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-55"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-4"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="359.77003"
+ inkscape:cy="287.74194"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1200"
+ inkscape:window-height="898"
+ inkscape:window-x="0"
+ inkscape:window-y="31"
+ inkscape:window-maximized="1"
+ inkscape:snap-nodes="false">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13454" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13242">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <g
+ style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"
+ id="shape1-1-2-4"
+ v:mID="1"
+ v:groupContext="shape"
+ transform="matrix(2.1604167,0,0,1.5671361,88.874699,-812.39909)">
+ <title
+ id="title22-7-5">Square</title>
+ <desc
+ id="desc24-7-8">Atomic Queue #1</desc>
+ <v:userDefs>
+ <v:ud
+ v:nameU="visVersion"
+ v:val="VT0(15):26" />
+ </v:userDefs>
+ <v:textBlock
+ v:margins="rect(4,4,4,4)" />
+ <v:textRect
+ cx="30.75"
+ cy="581.25"
+ width="61.5"
+ height="61.5" />
+ <g
+ id="shadow1-2-9-5"
+ v:groupContext="shadow"
+ v:shadowOffsetX="0.345598"
+ v:shadowOffsetY="-1.97279"
+ v:shadowType="1"
+ transform="translate(0.345598,1.97279)"
+ class="st1"
+ style="visibility:visible">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st2"
+ id="rect27-8-7"
+ style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2-3-91)" />
+ </g>
+ <g
+ id="g13515-33">
+ <g
+ id="g13534-8">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st3"
+ id="rect29-1-95"
+ style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" />
+ </g>
+ </g>
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.71226478;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Lstart-7);marker-end:none"
+ d="m 312.28671,240.74335 -84.28774,0"
+ id="path17209"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.71898615px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-mid:none;marker-end:url(#Arrow1Lend)"
+ d="m 221.6484,77.57125 94.28101,0"
+ id="path17209-8"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <g
+ style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"
+ id="shape1-1-2"
+ v:mID="1"
+ v:groupContext="shape"
+ transform="matrix(2.1604167,0,0,1.5671361,314.24227,-811.89589)">
+ <title
+ id="title22-7">Square</title>
+ <desc
+ id="desc24-7">Atomic Queue #1</desc>
+ <v:userDefs>
+ <v:ud
+ v:nameU="visVersion"
+ v:val="VT0(15):26" />
+ </v:userDefs>
+ <v:textBlock
+ v:margins="rect(4,4,4,4)" />
+ <v:textRect
+ cx="30.75"
+ cy="581.25"
+ width="61.5"
+ height="61.5" />
+ <g
+ id="shadow1-2-9"
+ v:groupContext="shadow"
+ v:shadowOffsetX="0.345598"
+ v:shadowOffsetY="-1.97279"
+ v:shadowType="1"
+ transform="translate(0.345598,1.97279)"
+ class="st1"
+ style="visibility:visible">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st2"
+ id="rect27-8"
+ style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2-3)" />
+ </g>
+ <g
+ id="g13515">
+ <g
+ id="g13534">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st3"
+ id="rect29-1"
+ style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" />
+ </g>
+ </g>
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.72471404;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);marker-end:none"
+ d="m 89.025329,74.39932 -64.275286,0"
+ id="path17209-3"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,-4.325033,28.642983)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-3"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,-1.93108,192.80833)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-1"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.75141162;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Lstart-7);marker-end:none"
+ d="m 18.763392,120.7432 68.995153,0"
+ id="path17209-3-0"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z"
+ transform="matrix(0.73232502,0,0,0.75477602,-218.16394,72.68276)" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-2"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z"
+ transform="matrix(0.73232502,0,0,0.75477602,-217.40136,26.716271)" />
+ <g
+ id="g29167-4"
+ transform="matrix(0.73232502,0,0,0.75477602,-217.31662,28.007562)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-9"
+ sodipodi:role="line">1</tspan></text>
+ </g>
+ <g
+ id="g29167-9"
+ transform="matrix(0.73232502,0,0,0.75477602,-4.9726112,28.689051)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-3"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-3"
+ sodipodi:role="line">2</tspan></text>
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.67803264px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Lstart-7);marker-end:none"
+ d="m 181,214.66098 0,-69.32196"
+ id="path17211-7-1-6"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <g
+ id="g29167"
+ transform="matrix(0.73232502,0,0,0.75477602,-218.07919,73.10621)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165"
+ sodipodi:role="line">8</tspan></text>
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.67803264px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Lstart-7);marker-end:none"
+ d="m 131,145.8531 0,69.32197"
+ id="path17211-7-1"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,-140.37076,129.97088)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-8"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <g
+ id="g29167-2"
+ transform="matrix(0.73232502,0,0,0.75477602,-140.28602,131.01695)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-92"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-8"
+ sodipodi:role="line">7</tspan></text>
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.71898615px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-mid:none;marker-end:url(#Arrow1Lend)"
+ d="m 317.1405,116 -94.281,0"
+ id="path17209-8-0"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,-3.4914,66.68745)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-6"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <g
+ id="g29167-46"
+ transform="matrix(0.73232502,0,0,0.75477602,-4.40666,67.48829)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-1"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-5"
+ sodipodi:role="line">3</tspan></text>
+ </g>
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,-90.692582,130.31695)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-8-6"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <g
+ id="g29167-6"
+ transform="matrix(0.73232502,0,0,0.75477602,-90.84634,131.60918)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-17"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-2"
+ sodipodi:role="line">4</tspan></text>
+ </g>
+ <g
+ id="g29167-2-0"
+ transform="matrix(0.73232502,0,0,0.75477602,-2.424397,194.0216)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-92-6"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-8-2"
+ sodipodi:role="line">5</tspan></text>
+ </g>
+ <g
+ style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"
+ id="shape1-1-2-8"
+ v:mID="1"
+ v:groupContext="shape"
+ transform="matrix(2.1604167,0,0,1.5671361,93.82055,-648.98949)">
+ <title
+ id="title22-7-97">Square</title>
+ <desc
+ id="desc24-7-3">Atomic Queue #1</desc>
+ <v:userDefs>
+ <v:ud
+ v:nameU="visVersion"
+ v:val="VT0(15):26" />
+ </v:userDefs>
+ <v:textBlock
+ v:margins="rect(4,4,4,4)" />
+ <v:textRect
+ cx="30.75"
+ cy="581.25"
+ width="61.5"
+ height="61.5" />
+ <g
+ id="shadow1-2-9-6"
+ v:groupContext="shadow"
+ v:shadowOffsetX="0.345598"
+ v:shadowOffsetY="-1.97279"
+ v:shadowType="1"
+ transform="translate(0.345598,1.97279)"
+ class="st1"
+ style="visibility:visible">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st2"
+ id="rect27-8-12"
+ style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2-3-92)" />
+ </g>
+ <g
+ id="g13515-9">
+ <g
+ id="g13534-3">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st3"
+ id="rect29-1-1"
+ style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" />
+ </g>
+ </g>
+ </g>
+ <g
+ style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"
+ id="shape1-1-2-84"
+ v:mID="1"
+ v:groupContext="shape"
+ transform="matrix(2.1604167,0,0,1.5671361,314.82055,-648.98949)">
+ <title
+ id="title22-7-50">Square</title>
+ <desc
+ id="desc24-7-36">Atomic Queue #1</desc>
+ <v:userDefs>
+ <v:ud
+ v:nameU="visVersion"
+ v:val="VT0(15):26" />
+ </v:userDefs>
+ <v:textBlock
+ v:margins="rect(4,4,4,4)" />
+ <v:textRect
+ cx="30.75"
+ cy="581.25"
+ width="61.5"
+ height="61.5" />
+ <g
+ id="shadow1-2-9-1"
+ v:groupContext="shadow"
+ v:shadowOffsetX="0.345598"
+ v:shadowOffsetY="-1.97279"
+ v:shadowType="1"
+ transform="translate(0.345598,1.97279)"
+ class="st1"
+ style="visibility:visible">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st2"
+ id="rect27-8-0"
+ style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2-3-94)" />
+ </g>
+ <g
+ id="g13515-6">
+ <g
+ id="g13534-32">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st3"
+ id="rect29-1-0"
+ style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" />
+ </g>
+ </g>
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.71226478;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:none;marker-end:url(#Arrow1Lend)"
+ d="m 313.14387,285 -84.28774,0"
+ id="path17209-7"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,-2.692582,236.31695)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-1-6"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <g
+ id="g29167-2-0-5"
+ transform="matrix(0.73232502,0,0,0.75477602,-2.424397,237.0216)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-92-6-6"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-8-2-9"
+ sodipodi:role="line">6</tspan></text>
+ </g>
+ <g
+ id="g29167-4-3"
+ transform="matrix(0.73232502,0,0,0.75477602,-154.60784,51.117791)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-9-7"
+ sodipodi:role="line">Eventdev</tspan></text>
+ </g>
+ <g
+ id="g29167-4-3-5"
+ transform="matrix(0.73232502,0,0,0.75477602,-144.65044,201.97821)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6-3"
+ y="70"
+ x="412.93716"
+ style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="412.93716"
+ id="tspan29165-9-7-5"
+ sodipodi:role="line">Crypto</tspan><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="100.26366"
+ x="412.93716"
+ sodipodi:role="line"
+ id="tspan3201">Adapter</tspan></text>
+ </g>
+ <g
+ id="g29167-4-3-5-6"
+ transform="matrix(0.73232502,0,0,0.75477602,79.53518,46.62529)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6-3-2"
+ y="48.801659"
+ x="412.93716"
+ style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="48.801659"
+ x="412.93716"
+ sodipodi:role="line"
+ id="tspan3155">Application</tspan><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="79.065323"
+ x="412.93716"
+ sodipodi:role="line"
+ id="tspan3201-1">in ordered</tspan><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="109.32899"
+ x="412.93716"
+ sodipodi:role="line"
+ id="tspan3161">stage</tspan></text>
+ </g>
+ <g
+ id="g29167-4-3-5-2"
+ transform="matrix(0.73232502,0,0,0.75477602,77.535182,213.62529)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6-3-7"
+ y="70"
+ x="412.93716"
+ style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="412.93716"
+ sodipodi:role="line"
+ id="tspan3201-9">Cryptodev</tspan></text>
+ </g>
+ <g
+ id="g29167-4-3-5-3"
+ transform="matrix(0.73232502,0,0,0.75477602,188.53518,-3.37471)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6-3-6"
+ y="70"
+ x="375.65271"
+ style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3201-6">1. Events from the previous stage.</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="93.538406"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3260" /><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="117.07681"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3262">2. Application in ordered stage</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="140.61522"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3288"> dequeues events from eventdev.</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="164.15363"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3264" /><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="187.69203"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3266">3. Application enqueues crypto</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="211.23044"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3290"> operations as events to eventdev.</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="234.76884"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3268" /><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="258.30725"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3270">4. Crypto adapter dequeues event</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="281.84564"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3292"> from eventdev.</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="305.38406"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3272" /><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="328.92245"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3274">5. Crypto adapter submits crypto</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="352.46088"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3294"> operations to cryptodev (Atomic</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="375.99927"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3296"> stage)</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="399.53769"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3276" /><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="423.07608"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3278">6. Crypto adapter dequeues crypto</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="446.6145"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3298"> completions from cryptodev</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="470.15289"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3280" /><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="493.69131"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3282">7. Crypto adapter enqueues events</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="517.22974"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3300"> to the eventdev</tspan><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="540.76813"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3284" /><tspan
+ style="font-size:18.83072472px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="564.30652"
+ x="375.65271"
+ sodipodi:role="line"
+ id="tspan3286">8. Events to the next stage</tspan></text>
+ </g>
+ </g>
+</svg>
diff --git a/doc/guides/prog_guide/img/event_crypto_adapter_op_new.svg b/doc/guides/prog_guide/img/event_crypto_adapter_op_new.svg
new file mode 100644
index 00000000..256862ed
--- /dev/null
+++ b/doc/guides/prog_guide/img/event_crypto_adapter_op_new.svg
@@ -0,0 +1,1061 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="720px"
+ height="486px"
+ id="svg13237"
+ version="1.1"
+ inkscape:version="0.48.4 r9939"
+ sodipodi:docname="event_crypto_adapter_deq_only.svg">
+ <defs
+ id="defs13239">
+ <marker
+ inkscape:stockid="Arrow1Sstart"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Sstart"
+ style="overflow:visible">
+ <path
+ id="path8416"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.2) translate(6,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Send"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Send"
+ style="overflow:visible;">
+ <path
+ id="path8419"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
+ transform="scale(0.2) rotate(180) translate(6,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="DiamondL"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="DiamondL"
+ style="overflow:visible">
+ <path
+ id="path8483"
+ d="M 0,-7.0710768 L -7.0710894,0 L 0,7.0710589 L 7.0710462,0 L 0,-7.0710768 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8)" />
+ </marker>
+ <marker
+ inkscape:stockid="DotL"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="DotL"
+ style="overflow:visible">
+ <path
+ id="path8465"
+ d="M -2.5,-1.0 C -2.5,1.7600000 -4.7400000,4.0 -7.5,4.0 C -10.260000,4.0 -12.5,1.7600000 -12.5,-1.0 C -12.5,-3.7600000 -10.260000,-6.0 -7.5,-6.0 C -4.7400000,-6.0 -2.5,-3.7600000 -2.5,-1.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8) translate(7.4, 1)" />
+ </marker>
+ <marker
+ inkscape:stockid="SquareL"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="SquareL"
+ style="overflow:visible">
+ <path
+ id="path8474"
+ d="M -5.0,-5.0 L -5.0,5.0 L 5.0,5.0 L 5.0,-5.0 L -5.0,-5.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8)" />
+ </marker>
+ <marker
+ inkscape:stockid="TriangleOutL"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="TriangleOutL"
+ style="overflow:visible">
+ <path
+ id="path8546"
+ d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lstart"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Lstart"
+ style="overflow:visible">
+ <path
+ id="path8404"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt"
+ transform="scale(0.8) translate(12.5,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Mend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Mend"
+ style="overflow:visible;">
+ <path
+ id="path8413"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
+ transform="scale(0.4) rotate(180) translate(10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow2Lend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow2Lend"
+ style="overflow:visible;">
+ <path
+ id="path8425"
+ style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
+ d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+ transform="scale(1.1) rotate(180) translate(1,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Lend"
+ style="overflow:visible;">
+ <path
+ id="path8407"
+ d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
+ transform="scale(0.8) rotate(180) translate(12.5,0)" />
+ </marker>
+ <filter
+ id="filter_2"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15" />
+ </filter>
+ <filter
+ id="filter_2-3"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1" />
+ </filter>
+ <filter
+ id="filter_2-0"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-7" />
+ </filter>
+ <filter
+ id="filter_2-0-8"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-7-7" />
+ </filter>
+ <filter
+ id="filter_2-3-9"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-6" />
+ </filter>
+ <filter
+ id="filter_2-3-6"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-63" />
+ </filter>
+ <filter
+ id="filter_2-3-91"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-3" />
+ </filter>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-5"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-3"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-6"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-0"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lstart"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lstart-7"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8404-0"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(0.8,0,0,0.8,10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-51"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-1"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-3"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-6"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-62"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-9"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend-2"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path8407-7"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ <filter
+ id="filter_2-3-91-3"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ stdDeviation="2"
+ id="feGaussianBlur15-1-3-6" />
+ </filter>
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="511.66308"
+ inkscape:cy="233.69667"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1200"
+ inkscape:window-height="898"
+ inkscape:window-x="0"
+ inkscape:window-y="31"
+ inkscape:window-maximized="1"
+ inkscape:snap-nodes="false">
+ <inkscape:grid
+ type="xygrid"
+ id="grid13454" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata13242">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <g
+ style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"
+ id="shape1-1-2-0"
+ v:mID="1"
+ v:groupContext="shape"
+ transform="matrix(2.1604167,0,0,1.5671361,323.2187,-540.25927)">
+ <title
+ id="title22-7-6">Square</title>
+ <desc
+ id="desc24-7-4">Atomic Queue #1</desc>
+ <v:userDefs>
+ <v:ud
+ v:nameU="visVersion"
+ v:val="VT0(15):26" />
+ </v:userDefs>
+ <v:textBlock
+ v:margins="rect(4,4,4,4)" />
+ <v:textRect
+ cx="30.75"
+ cy="581.25"
+ width="61.5"
+ height="61.5" />
+ <g
+ id="shadow1-2-9-0"
+ v:groupContext="shadow"
+ v:shadowOffsetX="0.345598"
+ v:shadowOffsetY="-1.97279"
+ v:shadowType="1"
+ transform="translate(0.345598,1.97279)"
+ class="st1"
+ style="visibility:visible">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st2"
+ id="rect27-8-9"
+ style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2-3-9)" />
+ </g>
+ <g
+ id="g13515-4">
+ <g
+ id="g13534-5">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st3"
+ id="rect29-1-4"
+ style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" />
+ </g>
+ </g>
+ </g>
+ <g
+ style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"
+ id="shape1-1-2-4"
+ v:mID="1"
+ v:groupContext="shape"
+ transform="matrix(2.1604167,0,0,1.165886,88.874699,-447.8809)">
+ <title
+ id="title22-7-5">Square</title>
+ <desc
+ id="desc24-7-8">Atomic Queue #1</desc>
+ <v:userDefs>
+ <v:ud
+ v:nameU="visVersion"
+ v:val="VT0(15):26" />
+ </v:userDefs>
+ <v:textBlock
+ v:margins="rect(4,4,4,4)" />
+ <v:textRect
+ cx="30.75"
+ cy="581.25"
+ width="61.5"
+ height="61.5" />
+ <g
+ id="shadow1-2-9-5"
+ v:groupContext="shadow"
+ v:shadowOffsetX="0.345598"
+ v:shadowOffsetY="-1.97279"
+ v:shadowType="1"
+ transform="translate(0.345598,1.97279)"
+ class="st1"
+ style="visibility:visible">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st2"
+ id="rect27-8-7"
+ style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2-3-91)" />
+ </g>
+ <g
+ id="g13515-33">
+ <g
+ id="g13534-8">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st3"
+ id="rect29-1-95"
+ style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" />
+ </g>
+ </g>
+ </g>
+ <g
+ style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"
+ id="shape1-1-2-9"
+ v:mID="1"
+ v:groupContext="shape"
+ transform="matrix(2.1604167,0,0,1.5671361,88.874699,-538.24651)">
+ <title
+ id="title22-7-9">Square</title>
+ <desc
+ id="desc24-7-5">Atomic Queue #1</desc>
+ <v:userDefs>
+ <v:ud
+ v:nameU="visVersion"
+ v:val="VT0(15):26" />
+ </v:userDefs>
+ <v:textBlock
+ v:margins="rect(4,4,4,4)" />
+ <v:textRect
+ cx="30.75"
+ cy="581.25"
+ width="61.5"
+ height="61.5" />
+ <g
+ id="shadow1-2-9-2"
+ v:groupContext="shadow"
+ v:shadowOffsetX="0.345598"
+ v:shadowOffsetY="-1.97279"
+ v:shadowType="1"
+ transform="translate(0.345598,1.97279)"
+ class="st1"
+ style="visibility:visible">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st2"
+ id="rect27-8-1"
+ style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2-3-6)" />
+ </g>
+ <g
+ id="g13515-3">
+ <g
+ id="g13534-0">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st3"
+ id="rect29-1-9"
+ style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" />
+ </g>
+ </g>
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.74346578px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-mid:none;marker-end:url(#Arrow1Lend)"
+ d="m 220.66064,98.57125 101.22528,0"
+ id="path17209-8"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <g
+ style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"
+ id="shape1-1-2"
+ v:mID="1"
+ v:groupContext="shape"
+ transform="matrix(2.1604167,0,0,1.5671361,322.24227,-811.89589)">
+ <title
+ id="title22-7">Square</title>
+ <desc
+ id="desc24-7">Atomic Queue #1</desc>
+ <v:userDefs>
+ <v:ud
+ v:nameU="visVersion"
+ v:val="VT0(15):26" />
+ </v:userDefs>
+ <v:textBlock
+ v:margins="rect(4,4,4,4)" />
+ <v:textRect
+ cx="30.75"
+ cy="581.25"
+ width="61.5"
+ height="61.5" />
+ <g
+ id="shadow1-2-9"
+ v:groupContext="shadow"
+ v:shadowOffsetX="0.345598"
+ v:shadowOffsetY="-1.97279"
+ v:shadowType="1"
+ transform="translate(0.345598,1.97279)"
+ class="st1"
+ style="visibility:visible">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st2"
+ id="rect27-8"
+ style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2-3)" />
+ </g>
+ <g
+ id="g13515">
+ <g
+ id="g13534">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st3"
+ id="rect29-1"
+ style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" />
+ </g>
+ </g>
+ </g>
+ <g
+ id="g13518"
+ transform="matrix(0.73232502,0,0,0.75477602,25.29268,348.89752)">
+ <g
+ id="g13526">
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot13464-9"
+ style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ transform="translate(-12.00521,-129.65179)"><flowRegion
+ id="flowRegion13466-1"><rect
+ id="rect13468-2"
+ width="195.99997"
+ height="112.00001"
+ x="273.33334"
+ y="175.33333"
+ style="text-align:center;text-anchor:middle" /></flowRegion><flowPara
+ style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ id="flowPara13511" /></flowRoot> </g>
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.75145501;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);marker-end:none"
+ d="m 176.26096,124.64833 0,69.24854"
+ id="path17209-3"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,-4.325033,50.642983)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-3"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.74346578px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-mid:none;marker-end:url(#Arrow1Lend)"
+ d="m 322.61264,375 -101.22528,0"
+ id="path17209-8-0"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,0.0689171,324.80833)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-1"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.62908167px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Lend)"
+ d="m 155,324.19955 0,-59.37092"
+ id="path17211-7-1"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,-116.37076,245.97088)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-8"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:0.75058991;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow1Lstart-7);marker-end:none"
+ d="m 126.26097,124.99178 0,69.24941"
+ id="path17209-3-0"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z"
+ transform="matrix(0.73232502,0,0,0.75477602,-146.16394,110.68276)" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-2"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z"
+ transform="matrix(0.73232502,0,0,0.75477602,-95.40136,110.71627)" />
+ <g
+ id="g29167-4"
+ transform="matrix(0.73232502,0,0,0.75477602,-95.31662,112.00756)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-9"
+ sodipodi:role="line">1</tspan></text>
+ </g>
+ <g
+ id="g29167-9"
+ transform="matrix(0.73232502,0,0,0.75477602,-4.9726112,50.689051)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-3"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-3"
+ sodipodi:role="line">2</tspan></text>
+ </g>
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1.04032874px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Lend)"
+ d="m 388.20118,147.93341 0,173.95967"
+ id="path17211-7"
+ inkscape:connector-type="orthogonal"
+ inkscape:connector-curvature="0" />
+ <path
+ transform="matrix(0.73232502,0,0,0.75477602,116.5086,136.68745)"
+ sodipodi:type="arc"
+ style="fill:#539de6;fill-opacity:1;stroke:#0000ea;stroke-width:1;stroke-linecap:square;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path29161-6"
+ sodipodi:cx="371"
+ sodipodi:cy="64.5"
+ sodipodi:rx="17"
+ sodipodi:ry="15.5"
+ d="m 388,64.5 a 17,15.5 0 1 1 -34,0 17,15.5 0 1 1 34,0 z" />
+ <g
+ id="g29167-46"
+ transform="matrix(0.73232502,0,0,0.75477602,116.59334,137.48829)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-1"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-5"
+ sodipodi:role="line">3</tspan></text>
+ </g>
+ <g
+ id="g29167-6"
+ transform="matrix(0.73232502,0,0,0.75477602,0.1536639,325.60918)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-17"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-2"
+ sodipodi:role="line">4</tspan></text>
+ </g>
+ <g
+ id="g29167"
+ transform="matrix(0.73232502,0,0,0.75477602,-146.07919,111.10621)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165"
+ sodipodi:role="line">6</tspan></text>
+ </g>
+ <g
+ id="g29167-4-3"
+ transform="matrix(0.73232502,0,0,0.75477602,-117.60784,180.11779)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6"
+ y="70"
+ x="321.30356"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="321.30356"
+ id="tspan29165-9-7"
+ sodipodi:role="line">Eventdev</tspan></text>
+ </g>
+ <g
+ id="g29167-4-3-5"
+ transform="matrix(0.73232502,0,0,0.75477602,55.34956,26.97821)">
+ <text
+ sodipodi:linespacing="100%"
+ id="text29163-9-6-3"
+ y="70"
+ x="454.74152"
+ style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="454.74152"
+ id="tspan29165-9-7-5"
+ sodipodi:role="line">A<tspan
+ style="line-height:100%"
+ id="tspan3374">tomic stage</tspan></tspan><tspan
+ style="font-size:21.52082825000000099px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="96.901031"
+ x="454.74152"
+ sodipodi:role="line"
+ id="tspan3320">+</tspan><tspan
+ style="font-size:21.52082825000000099px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="123.80207"
+ x="454.74152"
+ sodipodi:role="line"
+ id="tspan3322">enqueue to</tspan><tspan
+ style="font-size:21.52082825000000099px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="150.70311"
+ x="454.74152"
+ sodipodi:role="line"
+ id="tspan3324">cryptodev</tspan></text>
+ </g>
+ <g
+ id="g29167-2"
+ transform="matrix(0.73232502,0,0,0.75477602,-116.28602,248.01695)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-92"
+ y="70"
+ x="365"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="365"
+ id="tspan29165-8"
+ sodipodi:role="line">5</tspan></text>
+ </g>
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot3376"
+ style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Sans;font-style:normal;font-weight:normal;font-size:18px;line-height:125%;letter-spacing:0px;word-spacing:0px"><flowRegion
+ id="flowRegion3378"><rect
+ id="rect3380"
+ width="100"
+ height="37"
+ x="109"
+ y="259" /></flowRegion><flowPara
+ id="flowPara3382" /></flowRoot> <g
+ id="g29167-4-3-1"
+ transform="matrix(0.73232502,0,0,0.75477602,109.34956,323.97821)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6-8"
+ y="70"
+ x="321.30356"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="321.30356"
+ id="tspan29165-9-7-7"
+ sodipodi:role="line">Cryptodev</tspan></text>
+ </g>
+ <g
+ id="g29167-4-3-1-9"
+ transform="matrix(0.73232502,0,0,0.75477602,-114.48565,314.20704)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6-8-2"
+ y="70"
+ x="368.01718"
+ style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="368.01718"
+ id="tspan29165-9-7-7-0"
+ sodipodi:role="line">Crypto</tspan><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Sans;-inkscape-font-specification:Sans"
+ y="100.26366"
+ x="368.01718"
+ sodipodi:role="line"
+ id="tspan3488">adapter</tspan></text>
+ </g>
+ <g
+ id="g29167-4-3-1-9-2"
+ transform="matrix(0.73232502,0,0,0.75477602,250.96804,192.62529)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6-8-2-3"
+ y="-188.35481"
+ x="318.61978"
+ style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="-188.35481"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3543">1. Application dequeues</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="-161.45378"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3196"> events from the previous</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="-134.55275"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3232"> stage</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="-107.65171"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3519" /><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="-80.750671"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3551">2. Application prepares the</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="-53.84964"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3203"> crypto operations.</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="-26.948603"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3523" /><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="-0.047568277"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3541">3. Crypto operations are</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="26.853468"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3207"> submitted to cryptodev</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="53.754501"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3209"> by application..</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="80.65554"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3527" /><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="107.55657"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3547">4. Crypto adapter dequeues</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="134.45761"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3216"> crypto completions from</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="161.35864"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3218"> cryptodev.</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="188.25969"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3531" /><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="215.16072"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3549">5. Crypto adapter enqueues</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="242.06175"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3222"> events to the eventdev.</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="268.96277"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3535" /><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="295.8638"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3537">6. Application dequeues from</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="322.76483"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3224"> eventdev and prepare for</tspan><tspan
+ style="font-size:21.52082825px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="349.66586"
+ x="318.61978"
+ sodipodi:role="line"
+ id="tspan3226"> further processing</tspan></text>
+ </g>
+ <g
+ style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"
+ id="shape1-1-2-4-7"
+ v:mID="1"
+ v:groupContext="shape"
+ transform="matrix(2.1604167,0,0,1.165886,90.820551,-587.97129)">
+ <title
+ id="title22-7-5-5">Square</title>
+ <desc
+ id="desc24-7-8-3">Atomic Queue #1</desc>
+ <v:userDefs>
+ <v:ud
+ v:nameU="visVersion"
+ v:val="VT0(15):26" />
+ </v:userDefs>
+ <v:textBlock
+ v:margins="rect(4,4,4,4)" />
+ <v:textRect
+ cx="30.75"
+ cy="581.25"
+ width="61.5"
+ height="61.5" />
+ <g
+ id="shadow1-2-9-5-5"
+ v:groupContext="shadow"
+ v:shadowOffsetX="0.345598"
+ v:shadowOffsetY="-1.97279"
+ v:shadowType="1"
+ transform="translate(0.345598,1.97279)"
+ class="st1"
+ style="visibility:visible">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st2"
+ id="rect27-8-7-6"
+ style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2-3-91-3)" />
+ </g>
+ <g
+ id="g13515-33-2">
+ <g
+ id="g13534-8-9">
+ <rect
+ x="0"
+ y="550.5"
+ width="61.5"
+ height="61.5"
+ class="st3"
+ id="rect29-1-95-1"
+ style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" />
+ </g>
+ </g>
+ </g>
+ <g
+ id="g29167-4-3-2"
+ transform="matrix(0.73232502,0,0,0.75477602,-125.66199,44.027402)">
+ <text
+ sodipodi:linespacing="125%"
+ id="text29163-9-6-7"
+ y="70"
+ x="321.30356"
+ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
+ xml:space="preserve"><tspan
+ style="font-size:24.21093369px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Sans;-inkscape-font-specification:Sans"
+ y="70"
+ x="321.30356"
+ id="tspan29165-9-7-0"
+ sodipodi:role="line">Application</tspan></text>
+ </g>
+ </g>
+</svg>
diff --git a/doc/guides/prog_guide/img/malloc_heap.svg b/doc/guides/prog_guide/img/malloc_heap.svg
index 14e50088..f70bd666 100644
--- a/doc/guides/prog_guide/img/malloc_heap.svg
+++ b/doc/guides/prog_guide/img/malloc_heap.svg
@@ -1,1021 +1,333 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by Microsoft Visio, SVG Export malloc_heap.svg Page-1 -->
+<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"
+ width="11in" height="8.5in" viewBox="0 0 792 612" xml:space="preserve" color-interpolation-filters="sRGB" class="st34">
+ <style type="text/css">
+ <![CDATA[
+ .st1 {visibility:visible}
+ .st2 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+ .st3 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+ .st4 {fill:#deebf6;stroke:#c7c8c8;stroke-width:0.25}
+ .st5 {fill:#ed7d31;stroke:#c7c8c8;stroke-width:0.25}
+ .st6 {fill:#fbe5d5;stroke:#c7c8c8;stroke-width:0.25}
+ .st7 {fill:#e2efd9;stroke:#c7c8c8;stroke-width:0.25}
+ .st8 {fill:#a8d08d;stroke:#c7c8c8;stroke-width:0.25}
+ .st9 {fill:url(#ptrn2-71);shape-rendering:crispEdges;stroke:#c7c8c8;stroke-width:0.25}
+ .st10 {fill:#5b9bd5;stroke:#2e75b5;stroke-width:0.25}
+ .st11 {fill:none;stroke:none;stroke-width:0.25}
+ .st12 {fill:#000000;font-family:Calibri;font-size:1.00001em}
+ .st13 {fill:#ed7d31;stroke:#2e75b5;stroke-width:0.25}
+ .st14 {fill:#deebf6;stroke:#2e75b5;stroke-width:0.25}
+ .st15 {fill:#fbe5d5;stroke:#2e75b5;stroke-width:0.25}
+ .st16 {fill:#a8d08d;stroke:#2e75b5;stroke-width:0.25}
+ .st17 {fill:#e2efd9;stroke:#2e75b5;stroke-width:0.25}
+ .st18 {fill:url(#ptrn2-71);shape-rendering:crispEdges;stroke:#2e75b5;stroke-width:0.25}
+ .st19 {fill:#f4b183;stroke:#4f87bb;stroke-width:0.75}
+ .st20 {fill:#305497;font-family:Calibri;font-size:0.833336em}
+ .st21 {fill:#5b9bd5;fill-opacity:0.25;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.25}
+ .st22 {fill:#538135;stroke:#40709c;stroke-width:0.75}
+ .st23 {fill:#e2efd9;font-family:Calibri;font-size:0.833336em}
+ .st24 {marker-end:url(#mrkr10-146);marker-start:url(#mrkr10-144);stroke:#70ad47;stroke-width:0.75}
+ .st25 {fill:#70ad47;fill-opacity:1;stroke:#70ad47;stroke-opacity:1;stroke-width:0.22935779816514}
+ .st26 {fill:#ffffff;stroke:none;stroke-linecap:butt;stroke-width:7.2}
+ .st27 {fill:#538135;font-family:Calibri;font-size:1.00001em}
+ .st28 {fill:#ffffff;stroke:none;stroke-linecap:butt}
+ .st29 {fill:#bdd7ee;stroke:#40709c;stroke-width:0.75}
+ .st30 {fill:#1e4e79;font-family:Calibri;font-size:0.833336em}
+ .st31 {marker-end:url(#mrkr5-171);stroke:#4f87bb;stroke-dasharray:11.25,6.75;stroke-width:0.75}
+ .st32 {fill:#4f87bb;fill-opacity:1;stroke:#4f87bb;stroke-opacity:1;stroke-width:0.22935779816514}
+ .st33 {fill:#1e4e79;font-family:Calibri;font-size:1.00001em}
+ .st34 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
+ ]]>
+ </style>
-<!-- SPDX-License-Identifier: BSD-3-Clause -->
-<!-- Copyright(c) 2015 Intel Corporation -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- id="svg2985"
- version="1.1"
- inkscape:version="0.48.4 r9939"
- width="983.76233"
- height="643.91644"
- sodipodi:docname="malloc_heap_svg.svg">
- <metadata
- id="metadata2991">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <defs
- id="defs2989">
- <marker
- inkscape:stockid="Arrow2Mstart"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mstart"
- style="overflow:visible">
- <path
- id="path4265"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(0.6,0.6)"
- inkscape:connector-curvature="0" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Lstart"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Lstart"
- style="overflow:visible">
- <path
- id="path4259"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="matrix(1.1,0,0,1.1,1.1,0)"
- inkscape:connector-curvature="0" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Mend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mend"
- style="overflow:visible">
- <path
- id="path4268"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(-0.6,-0.6)"
- inkscape:connector-curvature="0" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Lend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Lend"
- style="overflow:visible">
- <path
- id="path4262"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
- inkscape:connector-curvature="0" />
- </marker>
- <marker
- inkscape:stockid="Arrow1Lend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow1Lend"
- style="overflow:visible">
- <path
- id="path4244"
- d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
- style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
- transform="matrix(-0.8,0,0,-0.8,-10,0)"
- inkscape:connector-curvature="0" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Mend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mend-1"
- style="overflow:visible">
- <path
- inkscape:connector-curvature="0"
- id="path4268-4"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(-0.6,-0.6)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Mend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mend-1-1"
- style="overflow:visible">
- <path
- inkscape:connector-curvature="0"
- id="path4268-4-8"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(-0.6,-0.6)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Mend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mend-1-9"
- style="overflow:visible">
- <path
- inkscape:connector-curvature="0"
- id="path4268-4-6"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(-0.6,-0.6)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Mstart"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mstart-7"
- style="overflow:visible">
- <path
- inkscape:connector-curvature="0"
- id="path4265-8"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(0.6,0.6)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Mend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mend-1-8"
- style="overflow:visible">
- <path
- inkscape:connector-curvature="0"
- id="path4268-4-2"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(-0.6,-0.6)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Mend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mend-1-2"
- style="overflow:visible">
- <path
- inkscape:connector-curvature="0"
- id="path4268-4-0"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(-0.6,-0.6)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Mstart"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mstart-5"
- style="overflow:visible">
- <path
- inkscape:connector-curvature="0"
- id="path4265-7"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(0.6,0.6)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Mend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Mend-1-5"
- style="overflow:visible">
- <path
- inkscape:connector-curvature="0"
- id="path4268-4-4"
- style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
- transform="scale(-0.6,-0.6)" />
- </marker>
- </defs>
- <sodipodi:namedview
- pagecolor="#ffffff"
- bordercolor="#30ff00"
- borderopacity="1"
- objecttolerance="10"
- gridtolerance="10"
- guidetolerance="10"
- inkscape:pageopacity="0"
- inkscape:pageshadow="2"
- inkscape:window-width="1920"
- inkscape:window-height="1139"
- id="namedview2987"
- showgrid="false"
- inkscape:zoom="0.8"
- inkscape:cx="346.31962"
- inkscape:cy="474.02351"
- inkscape:window-x="-8"
- inkscape:window-y="-8"
- inkscape:window-maximized="1"
- inkscape:current-layer="layer4"
- borderlayer="false"
- fit-margin-top="-100.6"
- fit-margin-left="0"
- fit-margin-right="0"
- fit-margin-bottom="0"
- showborder="true"
- inkscape:showpageshadow="false" />
- <g
- inkscape:groupmode="layer"
- id="layer4"
- inkscape:label="bg"
- style="display:inline"
- transform="translate(79.549515,-4.4031235)">
- <rect
- style="fill:#d1d1d1;fill-opacity:1;stroke-width:1.79999995;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0"
- id="rect13505-6"
- width="98.575218"
- height="70.808708"
- x="328.8374"
- y="317.09564" />
- </g>
- <g
- inkscape:groupmode="layer"
- id="layer2"
- inkscape:label="boxes"
- style="display:inline"
- transform="translate(79.549515,-4.4031235)">
- <rect
- style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
- id="rect2996-1"
- width="187.88171"
- height="52.881706"
- x="75.764778"
- y="5.5253706" />
- <rect
- style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7"
- width="634.0592"
- height="73.027374"
- x="60.830574"
- y="130.24477" />
- <rect
- style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.02648067;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-4"
- width="635.80048"
- height="74.768661"
- x="62.169655"
- y="315.43158" />
- <rect
- style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.85834479;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-0"
- width="886.87543"
- height="106.64049"
- x="-48.78373"
- y="540.24988" />
- <rect
- style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:3.13159013;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:6.26318017, 3.13159009;stroke-dashoffset:0;display:inline"
- id="rect2996-1-5"
- width="223.0157"
- height="109.20289"
- x="409.68008"
- y="420.63235" />
- <rect
- style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.90856051;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:5.81712091, 2.90856046;stroke-dashoffset:0;display:inline"
- id="rect2996-1-5-4"
- width="191.98872"
- height="109.42592"
- x="644.63062"
- y="419.66205" />
- <rect
- style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.08755708;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:4.17511403, 2.08755702;stroke-dashoffset:0;display:inline"
- id="rect2996-1-5-4-6"
- width="154.05972"
- height="70.246925"
- x="678.59509"
- y="214.87654" />
- </g>
- <g
- inkscape:groupmode="layer"
- id="layer3"
- inkscape:label="blue headers"
- style="display:inline"
- transform="translate(79.549515,-4.4031235)">
- <rect
- style="fill:#749aba;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.85091281;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9"
- width="16.994427"
- height="73.79715"
- x="59.561817"
- y="129.601" />
- <rect
- style="fill:#749aba;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.83000004;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-4"
- width="17.015339"
- height="72.050293"
- x="384.61731"
- y="130.22485" />
- <rect
- style="fill:#749aba;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.86642051;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-8"
- width="16.978918"
- height="75.107468"
- x="261.76944"
- y="315.16946" />
- <rect
- style="fill:#749aba;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.36914372;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-82"
- width="48.412117"
- height="14.17484"
- x="-42.956367"
- y="549.14984" />
- <rect
- style="fill:#97ffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.83000004;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-4-1"
- width="17.015339"
- height="72.050293"
- x="241.39912"
- y="131.17525" />
- <rect
- style="fill:#97ffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.36399999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-4-1-3"
- width="16.981569"
- height="74.882637"
- x="568.40881"
- y="315.33447" />
- <rect
- style="fill:#97ffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.95599997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-4-1-3-7"
- width="49.319912"
- height="12.752681"
- x="-43.016232"
- y="595.7439" />
- </g>
- <g
- inkscape:groupmode="layer"
- id="layer5"
- inkscape:label="red headers"
- style="display:inline"
- transform="translate(79.549515,-4.4031235)">
- <rect
- style="fill:#ff7b6d;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.83000004;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45"
- width="17.015339"
- height="72.050293"
- x="501.49307"
- y="130.29137" />
- <rect
- style="fill:#ff7b6d;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.84049058;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-5"
- width="17.004848"
- height="72.923683"
- x="678.04279"
- y="130.29662" />
- <rect
- style="fill:#ff7b6d;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.85091281;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-1"
- width="16.994427"
- height="73.79715"
- x="681.8158"
- y="316.14957" />
- <rect
- style="fill:#ff7b6d;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.86126781;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-7"
- width="16.984072"
- height="74.670677"
- x="500.62485"
- y="315.92252" />
- <rect
- style="fill:#ff7b6d;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.82472873;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-11"
- width="17.020611"
- height="71.613625"
- x="175.33748"
- y="131.40486" />
- <rect
- style="fill:#ff7b6d;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.86642051;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-52"
- width="16.978918"
- height="75.107468"
- x="62.221222"
- y="315.0412" />
- <rect
- style="fill:#ff7b6d;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.39574718;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-76"
- width="48.805244"
- height="14.612387"
- x="-42.996674"
- y="572.61749" />
- </g>
- <g
- inkscape:groupmode="layer"
- id="layer9"
- inkscape:label="unused space"
- style="display:inline"
- transform="translate(79.549515,-4.4031235)">
- <rect
- style="fill:#dddddd;fill-opacity:1;stroke-width:1.79999995;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0"
- id="rect13505"
- width="98.575218"
- height="70.808708"
- x="402.22061"
- y="131.06841" />
- <rect
- style="fill:#dddddd;fill-opacity:1;stroke-width:1.79999995;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0"
- id="rect13505-8"
- width="96.700218"
- height="70.808708"
- x="77.587402"
- y="131.47064" />
- <rect
- style="fill:#dddddd;fill-opacity:1;stroke-width:1.79999995;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
- id="rect13505-5"
- width="220.21585"
- height="72.839958"
- x="279.26709"
- y="316.08002" />
- <rect
- style="fill:#dddddd;fill-opacity:1;stroke:#000000;stroke-width:1.12016988;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
- id="rect13505-59"
- width="51.879829"
- height="15.10388"
- x="445.6301"
- y="550.76691" />
- <rect
- style="fill:none;stroke:#000000;stroke-width:1.12016988;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
- id="rect13505-59-3"
- width="51.879829"
- height="15.10388"
- x="445.62964"
- y="574.00262" />
- </g>
- <g
- inkscape:groupmode="layer"
- id="layer8"
- inkscape:label="pad headers"
- style="display:inline"
- transform="translate(79.549515,-4.4031235)">
- <rect
- style="fill:#fffec5;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-7-3"
- width="49.88493"
- height="73.447571"
- x="518.21405"
- y="316.16635" />
- <rect
- style="fill:#fffec5;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.86126781;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-7-3-2"
- width="16.98407"
- height="74.670677"
- x="245.17551"
- y="315.48059" />
- <rect
- style="fill:#fffec5;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.02099991;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-7-3-4"
- width="49.474121"
- height="72.084908"
- x="193.07074"
- y="130.93698" />
- <rect
- style="fill:#fffec5;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
- id="rect2996-1-7-9-45-7-3-6"
- width="51.75993"
- height="14.072571"
- x="445.05756"
- y="596.40125" />
- </g>
- <g
- inkscape:groupmode="layer"
- id="layer6"
- inkscape:label="arrows"
- style="display:inline"
- transform="translate(79.549515,-4.4031235)">
- <path
- style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:9, 9;stroke-dashoffset:0;marker-mid:none;marker-end:url(#Arrow2Mend)"
- d="m 262.87951,51.152779 c 0,0 148.12631,-3.276651 187.01718,76.272861"
- id="path3973"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend)"
- d="m 681.9161,128.72302 c -22.09709,-49.497478 -148.13393,-45.873109 -179.42835,0"
- id="path3988"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend-1)"
- d="M 386.69903,129.58525 C 361.95029,80.971668 231.48641,62.20327 177.21864,130.46914"
- id="path3990"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend)"
- d="m 60.546017,172.89554 c 0,0 -32.703692,23.86486 -60.10407166,-3.53553"
- id="path3992"
- inkscape:connector-curvature="0" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend-1)"
- d="m 176.82896,203.22242 c -47.24941,74.32926 -107.438064,49.90804 -116.0476,3.53553"
- id="path4035"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend-1)"
- d="m 502.04581,203.43962 c -25.63262,33.58757 -82.31601,45.11485 -116.67261,2.65165"
- id="path4037"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend-1)"
- d="M 763.23339,214.04621 C 748.83403,184.37018 738.54555,166.795 699.15183,161.8971"
- id="path4039"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-mid:none;marker-end:url(#Arrow2Mend-1)"
- d="m 769.42057,285.19885 c -0.88389,83.96892 -68.50098,75.57203 -68.50098,75.57203"
- id="path4041"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend-1)"
- d="M 682.35804,313.04117 C 652.306,280.33749 539.16892,270.61477 501.16193,313.92506"
- id="path4043"
- inkscape:connector-curvature="0" />
- <path
- style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:9, 9;stroke-dashoffset:0;marker-end:url(#Arrow2Mend)"
- d="m 415.42523,202.55574 c 0,36.23922 -4.41941,88.38835 -35.35533,109.60155"
- id="path4045"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:9, 9;stroke-dashoffset:0;marker-end:url(#Arrow2Mend)"
- d="M 375.65048,315.69282 C 336.75961,232.60777 166.1701,311.27341 143.18912,205.20739"
- id="path4047"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend-1)"
- d="M 263.39727,315.69282 C 245.7196,288.29244 86.62058,275.91807 62.755726,313.04117"
- id="path4051"
- inkscape:connector-curvature="0" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend)"
- d="m 61.790091,352.05822 c -25.819377,20.1091 -49.573204,20.1091 -61.96650422,1.43636"
- id="path4053"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:2.54999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:7.65, 7.65;stroke-dashoffset:0;marker-end:url(#Arrow2Mend)"
- d="m 448.12892,630.25126 48.61359,0"
- id="path5241"
- inkscape:connector-curvature="0" />
- <path
- style="fill:none;stroke:#000000;stroke-width:2.09116507px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Mend);display:inline"
- d="m -39.741559,626.33548 c 10.599699,-0.12345 25.528414,-0.12564 43.719789,-0.81161"
- id="path4053-2"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend-1)"
- d="m 499.39416,389.93904 c -46.84583,17.67767 -206.82873,31.8198 -238.64854,1.76776"
- id="path13236"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend-1);display:inline"
- d="m 502.12201,419.58783 c 2.37436,-10.40132 1.73096,-5.65101 4.38262,-26.86421"
- id="path4043-4"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Mstart);marker-end:url(#Arrow2Mend-1);display:inline"
- d="m 517.94842,353.38466 c 19.7099,0 43.91577,-0.61421 66.57012,-0.61421"
- id="path4043-4-3"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Mstart);marker-end:url(#Arrow2Mend-1);display:inline"
- d="m 501.71494,363.4321 c 19.7099,0 157.04077,-0.61421 179.69512,-0.61421"
- id="path4043-4-3-9"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow2Mend-1);display:inline"
- d="M 728.67747,419.79091 C 702.92683,395.63959 592.90843,427.2649 577.43509,389.1767"
- id="path4043-4-9"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- <path
- style="fill:none;stroke:#000000;stroke-width:1.79999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Mstart);marker-end:url(#Arrow2Mend-1);display:inline"
- d="m 60.975741,169.05711 c 19.709901,0 90.307569,-0.61421 112.961919,-0.61421"
- id="path4043-4-3-9-1"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cc" />
- </g>
- <g
- inkscape:groupmode="layer"
- id="layer7"
- inkscape:label="text"
- style="display:inline"
- transform="translate(79.549515,-4.4031235)">
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
- x="90.732231"
- y="36.767765"
- id="text10506"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508"
- x="90.732231"
- y="36.767765"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">struct malloc_heap</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
- x="580.66718"
- y="107.47876"
- id="text10506-2"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1"
- x="580.66718"
- y="107.47876"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">prev</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
- x="438.12686"
- y="223.50792"
- id="text10506-2-5"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-7"
- x="438.12686"
- y="223.50792"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">prev</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
- x="581.31598"
- y="298.638"
- id="text10506-2-61"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-89"
- x="581.31598"
- y="298.638"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">prev</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
- x="274.6084"
- y="99.764236"
- id="text10506-2-2"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-79"
- x="274.6084"
- y="99.764236"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">prev</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
- x="301.12491"
- y="423.26556"
- id="text10506-2-54"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-3"
- x="301.12491"
- y="423.26556"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">prev</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
- x="133.18704"
- y="303.94128"
- id="text10506-2-1"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-2"
- x="133.18704"
- y="303.94128"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">prev</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
- x="16.340637"
- y="561.27954"
- id="text10506-2-3"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-34"
- x="16.340637"
- y="561.27954"
- style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Free element header(struct malloc_elem, state = FREE)</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
- x="16.996887"
- y="583.24792"
- id="text10506-2-3-1"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-34-1"
- x="16.996887"
- y="583.24792"
- style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Used element header(struct malloc_elem, state = BUSY)</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="108.84206"
- y="161.39597"
- id="text10506-2-6-8"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-8-7"
- x="108.84206"
- y="161.39597"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">size</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="62.299515"
- y="119.27286"
- id="text10506-2-6-4"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-8-2"
- x="62.299515"
- y="119.27286"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Memseg 0</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="63.905106"
- y="406.73242"
- id="text10506-2-6-4-7"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-8-2-7"
- x="63.905106"
- y="406.73242"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Memseg 1</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="-25.028084"
- y="192.57199"
- id="text10506-2-9"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-31"
- x="-25.028084"
- y="192.57199"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">prev</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="-26.795866"
- y="379.95526"
- id="text10506-2-98"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-6"
- x="-26.795866"
- y="379.95526"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">prev</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="416.73682"
- y="269.53305"
- id="text10506-2-6-5"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-8-0"
- x="416.73682"
- y="269.53305"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">next_free</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="228.00418"
- y="259.55359"
- id="text10506-2-6-5-2"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-8-0-8"
- x="228.00418"
- y="259.55359"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">next_free</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="356.16727"
- y="55.376503"
- id="text10506-2-6-5-6"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-8-0-0"
- x="356.16727"
- y="55.376503"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">free_head</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="49.218113"
- y="254.00189"
- id="text10506-2-9-0"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-31-9"
- x="49.218113"
- y="254.00189"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">prev</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="690.51538"
- y="236.82936"
- id="text10506-2-6-0"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-8-06"
- x="690.51538"
- y="236.82936"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Dummy Elements:</tspan><tspan
- sodipodi:role="line"
- x="690.51538"
- y="256.02936"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas"
- id="tspan13581">Size = 0</tspan><tspan
- sodipodi:role="line"
- x="690.51538"
- y="275.22937"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas"
- id="tspan13583">State = BUSY</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="541.03906"
- y="347.20566"
- id="text10506-2-6-8-8"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-8-7-9"
- x="541.03906"
- y="347.20566"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">pad</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="16.661926"
- y="605.21631"
- id="text10506-2-3-1-4"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-34-1-4"
- x="16.661926"
- y="605.21631"
- style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Pad element header(struct malloc_elem, state = PAD)</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="17.290833"
- y="627.77881"
- id="text10506-2-3-1-6"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-34-1-0"
- x="17.290833"
- y="627.77881"
- style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Generic element pointers</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="429.11118"
- y="449.84528"
- id="text10506-2-6-6"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- x="429.11118"
- y="449.84528"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas"
- id="tspan13711">Malloc element header:</tspan><tspan
- sodipodi:role="line"
- x="429.11118"
- y="469.04529"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas"
- id="tspan13713">state = BUSY</tspan><tspan
- sodipodi:role="line"
- x="429.11118"
- y="488.24527"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas"
- id="tspan13715">size = &lt;size&gt;</tspan><tspan
- sodipodi:role="line"
- x="429.11118"
- y="507.44528"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas"
- id="tspan13717">pad = &lt;padsize&gt;</tspan></text>
- <flowRoot
- xml:space="preserve"
- id="flowRoot13719"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"><flowRegion
- id="flowRegion13721"><rect
- id="rect13723"
- width="968.73627"
- height="188.26718"
- x="-81.317276"
- y="460.64972" /></flowRegion><flowPara
- id="flowPara13725"></flowPara></flowRoot> <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="594.30859"
- y="378.91797"
- id="text10506-2-6-8-8-1"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-8-7-9-3"
- x="594.30859"
- y="378.91797"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">size</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="505.86865"
- y="563.34613"
- id="text10506-2-3-1-6-8"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-34-1-0-4"
- x="505.86865"
- y="563.34613"
- style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Free / Unallocated data space</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="660.39099"
- y="449.92532"
- id="text10506-2-6-6-0"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- x="660.39099"
- y="449.92532"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas"
- id="tspan14527">Pad element header:</tspan><tspan
- sodipodi:role="line"
- x="660.39099"
- y="469.12534"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas"
- id="tspan14531">state = PAD</tspan><tspan
- sodipodi:role="line"
- x="660.39099"
- y="488.32532"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas"
- id="tspan14533">pad = padsize</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="506.5249"
- y="584.28369"
- id="text10506-2-3-1-6-8-7"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-34-1-0-4-2"
- x="506.5249"
- y="584.28369"
- style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Used / allocated data space</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:40px;font-style:normal;font-weight:normal;line-height:120.00000477%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
- x="506.18994"
- y="605.30322"
- id="text10506-2-3-1-6-8-7-0"
- sodipodi:linespacing="120%"><tspan
- sodipodi:role="line"
- id="tspan10508-1-34-1-0-4-2-1"
- x="506.18994"
- y="605.30322"
- style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:120.00000477%;writing-mode:lr-tb;text-anchor:start;font-family:Consolas;-inkscape-font-specification:Consolas">Padding / unavailable space</tspan></text>
- </g>
+ <defs id="Patterns_And_Gradients">
+ <pattern id="ptrn2-71" patternUnits="userSpaceOnUse" width="6" height="6" viewBox="0 0 64 64">
+ <image x="0" y="0" width="64" height="64" image-rendering="optimizeSpeed"
+ xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA7SURBVChTY/i3f7/Pv3//MDFIXETEhwGfJIjGVIAkCeKjKkCTRFWARRKhAIckRAEeSYgCPJL/9u/3AQC1aLsBz7wFUwAAAABJRU5ErkJggg=="/>
+ </pattern>
+ <linearGradient id="grad0-168" x1="0" y1="0" x2="1" y2="0" gradientTransform="rotate(60 0.5 0.5)">
+ <stop offset="0" stop-color="#e9eff7" stop-opacity="1"/>
+ <stop offset="0.24" stop-color="#f4f7fb" stop-opacity="1"/>
+ <stop offset="0.54" stop-color="#feffff" stop-opacity="1"/>
+ </linearGradient>
+ </defs>
+ <defs id="Markers">
+ <g id="lend10">
+ <path
+ d="M 0 0.75 C -0.414214 0.75 -0.75 0.414214 -0.75 0 -0.75 -0.414214 -0.414214 -0.75 0 -0.75 0.414214 -0.75 0.75 -0.414214 0.75 0 0.75 0.414214 0.414214 0.75 0 0.75 Z "
+ style="stroke:none"/>
+ </g>
+ <marker id="mrkr10-144" class="st25" refX="2.79" orient="auto" markerUnits="strokeWidth" overflow="visible">
+ <use xlink:href="#lend10" transform="scale(4.36) "/>
+ </marker>
+ <marker id="mrkr10-146" class="st25" refX="-2.79" orient="auto" markerUnits="strokeWidth" overflow="visible">
+ <use xlink:href="#lend10" transform="scale(-4.36,-4.36) "/>
+ </marker>
+ <g id="lend5">
+ <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"/>
+ </g>
+ <marker id="mrkr5-171" class="st32" refX="-7.15" orient="auto" markerUnits="strokeWidth" overflow="visible">
+ <use xlink:href="#lend5" transform="scale(-4.36,-4.36) "/>
+ </marker>
+ </defs>
+ <defs id="Filters">
+ <filter id="filter_2">
+ <feGaussianBlur stdDeviation="2"/>
+ </filter>
+ </defs>
+ <g>
+ <title>Page-1</title>
+ <g id="group14-1" transform="translate(45,-360)">
+ <title>Sheet.14</title>
+ <g id="shape3-2">
+ <title>Sheet.3</title>
+ <g id="shadow3-3" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="18" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="18" height="81" class="st3"/>
+ </g>
+ <g id="shape4-7" transform="translate(18,0)">
+ <title>Sheet.4</title>
+ <g id="shadow4-8" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="117" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="117" height="81" class="st4"/>
+ </g>
+ </g>
+ <g id="group15-12" transform="translate(180,-360)">
+ <title>Sheet.15</title>
+ <g id="shape5-13">
+ <title>Sheet.5</title>
+ <g id="shadow5-14" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="18" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="18" height="81" class="st5"/>
+ </g>
+ <g id="shape6-18" transform="translate(18,0)">
+ <title>Sheet.6</title>
+ <g id="shadow6-19" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="117" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="117" height="81" class="st6"/>
+ </g>
+ </g>
+ <g id="shape7-23" transform="translate(612,-360)">
+ <title>Sheet.7</title>
+ <g id="shadow7-24" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="18" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="18" height="81" class="st5"/>
+ </g>
+ <g id="shape10-28" transform="translate(630,-360)">
+ <title>Sheet.10</title>
+ <g id="shadow10-29" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="51.75" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="51.75" height="81" class="st7"/>
+ </g>
+ <g id="shape12-33" transform="translate(681.75,-360)">
+ <title>Sheet.12</title>
+ <g id="shadow12-34" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="18" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="18" height="81" class="st8"/>
+ </g>
+ <g id="shape13-38" transform="translate(699.75,-360)">
+ <title>Sheet.13</title>
+ <g id="shadow13-39" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="47.25" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="47.25" height="81" class="st6"/>
+ </g>
+ <g id="group29-43" transform="translate(315,-360)">
+ <title>Sheet.29</title>
+ <g id="shape23-44">
+ <title>Sheet.23</title>
+ <g id="shadow23-45" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="18" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="18" height="81" class="st3"/>
+ </g>
+ <g id="shape24-49" transform="translate(18,0)">
+ <title>Sheet.24</title>
+ <g id="shadow24-50" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="36" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="36" height="81" class="st4"/>
+ </g>
+ </g>
+ <g id="group30-54" transform="translate(477,-360)">
+ <title>Sheet.30</title>
+ <g id="shape27-55">
+ <title>Sheet.27</title>
+ <g id="shadow27-56" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="18" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="18" height="81" class="st3"/>
+ </g>
+ <g id="shape28-60" transform="translate(18,0)">
+ <title>Sheet.28</title>
+ <g id="shadow28-61" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="117" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="117" height="81" class="st4"/>
+ </g>
+ </g>
+ <g id="shape31-65" transform="translate(369,-360)">
+ <title>Sheet.31</title>
+ <g id="shadow31-66" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="531" width="108" height="81" class="st2"/>
+ </g>
+ <rect x="0" y="531" width="108" height="81" class="st9"/>
+ </g>
+ <g id="shape32-72" transform="translate(184.5,-260)">
+ <title>Sheet.32</title>
+ <g id="shadow32-73" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="594" width="63" height="18" class="st2"/>
+ </g>
+ <rect x="0" y="594" width="63" height="18" class="st10"/>
+ </g>
+ <g id="shape39-77" transform="translate(252,-259)">
+ <title>Sheet.39</title>
+ <desc>Free element header</desc>
+ <rect x="0" y="592" width="135" height="20" class="st11"/>
+ <text x="4" y="605.6" class="st12">Free element header</text> </g>
+ <g id="shape43-80" transform="translate(184.5,-232)">
+ <title>Sheet.43</title>
+ <g id="shadow43-81" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="594" width="63" height="18" class="st2"/>
+ </g>
+ <rect x="0" y="594" width="63" height="18" class="st13"/>
+ </g>
+ <g id="shape44-85" transform="translate(252,-231)">
+ <title>Sheet.44</title>
+ <desc>Used element header</desc>
+ <rect x="0" y="592" width="135" height="20" class="st11"/>
+ <text x="4" y="605.6" class="st12">Used element header</text> </g>
+ <g id="shape46-88" transform="translate(409.5,-260)">
+ <title>Sheet.46</title>
+ <g id="shadow46-89" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="594" width="63" height="18" class="st2"/>
+ </g>
+ <rect x="0" y="594" width="63" height="18" class="st14"/>
+ </g>
+ <g id="shape47-93" transform="translate(477,-259)">
+ <title>Sheet.47</title>
+ <desc>Free space</desc>
+ <rect x="0" y="592" width="135" height="20" class="st11"/>
+ <text x="4" y="605.6" class="st12">Free space</text> </g>
+ <g id="shape49-96" transform="translate(409.5,-232)">
+ <title>Sheet.49</title>
+ <g id="shadow49-97" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="594" width="63" height="18" class="st2"/>
+ </g>
+ <rect x="0" y="594" width="63" height="18" class="st15"/>
+ </g>
+ <g id="shape50-101" transform="translate(477,-231)">
+ <title>Sheet.50</title>
+ <desc>Allocated data</desc>
+ <rect x="0" y="592" width="135" height="20" class="st11"/>
+ <text x="4" y="605.6" class="st12">Allocated data</text> </g>
+ <g id="shape52-104" transform="translate(184.5,-204)">
+ <title>Sheet.52</title>
+ <g id="shadow52-105" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="594" width="63" height="18" class="st2"/>
+ </g>
+ <rect x="0" y="594" width="63" height="18" class="st16"/>
+ </g>
+ <g id="shape53-109" transform="translate(252,-203)">
+ <title>Sheet.53</title>
+ <desc>Pad element header</desc>
+ <rect x="0" y="592" width="135" height="20" class="st11"/>
+ <text x="4" y="605.6" class="st12">Pad element header</text> </g>
+ <g id="shape62-112" transform="translate(409.5,-204)">
+ <title>Sheet.62</title>
+ <g id="shadow62-113" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="594" width="63" height="18" class="st2"/>
+ </g>
+ <rect x="0" y="594" width="63" height="18" class="st17"/>
+ </g>
+ <g id="shape63-117" transform="translate(477,-203)">
+ <title>Sheet.63</title>
+ <desc>Padding</desc>
+ <rect x="0" y="592" width="135" height="20" class="st11"/>
+ <text x="4" y="605.6" class="st12">Padding</text> </g>
+ <g id="shape65-120" transform="translate(184.5,-176)">
+ <title>Sheet.65</title>
+ <g id="shadow65-121" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <rect x="0" y="594" width="63" height="18" class="st2"/>
+ </g>
+ <rect x="0" y="594" width="63" height="18" class="st18"/>
+ </g>
+ <g id="shape66-126" transform="translate(252,-175)">
+ <title>Sheet.66</title>
+ <desc>Unavailable space</desc>
+ <rect x="0" y="592" width="135" height="20" class="st11"/>
+ <text x="4" y="605.6" class="st12">Unavailable space</text> </g>
+ <g id="shape97-129" transform="translate(612,-375.75)">
+ <title>Simple Double Arrow</title>
+ <desc>size</desc>
+ <path d="M0 612 L18 598.5 L18 605.25 L117 605.25 L117 598.5 L135 612 L117 625.5 L117 618.75 L18 618.75 L18 625.5 L0 612
+ Z" class="st19"/>
+ <text x="59.93" y="615" class="st20">size</text> </g>
+ <g id="shape99-132" transform="translate(630,-400.5)">
+ <title>Simple Double Arrow.99</title>
+ <desc>pad</desc>
+ <g id="shadow99-133" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 612 L12 600 L12 606 L57.75 606 L57.75 600 L69.75 612 L57.75 624 L57.75 618 L12 618 L12 624 L0 612 Z"
+ class="st21"/>
+ </g>
+ <path d="M0 612 L12 600 L12 606 L57.75 606 L57.75 600 L69.75 612 L57.75 624 L57.75 618 L12 618 L12 624 L0 612 Z"
+ class="st22"/>
+ <text x="27.23" y="615" class="st23">pad</text> </g>
+ <g id="shape113-138" transform="translate(54,-337.5)">
+ <title>Sheet.113</title>
+ <desc>prev/next</desc>
+ <path d="M134.64 591.56 L134.58 591.92 A72 22.5 0 0 1 63 612 A63 22.5 0 0 1 0.37 591.92 L0.31 591.57" class="st24"/>
+ <rect x="43.4968" y="593.55" width="48.0064" height="14.4001" class="st26"/>
+ <text x="43.5" y="604.35" class="st27">prev/next</text> </g>
+ <g id="shape115-149" transform="translate(324,-337.5)">
+ <title>Sheet.115</title>
+ <desc>prev/next</desc>
+ <path d="M0.44 591.55 L0.51 591.9 A90 22.5 -180 0 0 90 612 A72 22.5 -180 0 0 161.58 591.92 L161.64 591.56" class="st24"/>
+ <rect x="56.9968" y="593.55" width="48.0064" height="14.4001" class="st28"/>
+ <text x="57" y="604.35" class="st27">prev/next</text> </g>
+ <g id="shape118-158" transform="translate(315,-390.375)">
+ <title>Simple Double Arrow.118</title>
+ <desc>size</desc>
+ <g id="shadow118-159" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 612 L12 600 L12 606 L42 606 L42 600 L54 612 L42 624 L42 618 L12 618 L12 624 L0 612 Z" class="st21"/>
+ </g>
+ <path d="M0 612 L12 600 L12 606 L42 606 L42 600 L54 612 L42 624 L42 618 L12 618 L12 624 L0 612 Z" class="st29"/>
+ <text x="19.43" y="615" class="st30">size</text> </g>
+ <g id="shape119-164" transform="translate(54,-441)">
+ <title>Sheet.119</title>
+ <desc>next free</desc>
+ <path d="M-0 612 A135 22.5 0 0 1 135 589.5 A134.606 21.534 0 0 1 266.35 606.33 L266.56 606.62" class="st31"/>
+ <rect x="112.807" y="593.55" width="43.9926" height="14.4001" class="st26"/>
+ <text x="112.81" y="604.35" class="st33">next free</text> </g>
+ <g id="shape120-174" transform="translate(323.739,-441.34)">
+ <title>Sheet.120</title>
+ <desc>next free</desc>
+ <path d="M0.24 612 A78.4445 18.5592 178.15 0 1 72.26 589.84 A81.2523 26.5101 179.07 0 1 159.23 607.01 L159.43 607.31"
+ class="st31"/>
+ <rect x="59.193" y="593.55" width="43.9926" height="14.4001" class="st28"/>
+ <text x="59.19" y="604.35" class="st33">next free</text> </g>
+ <g id="shape122-182" transform="translate(189,-337.5)">
+ <title>Sheet.122</title>
+ <desc>prev/next</desc>
+ <path d="M0.33 591.57 L0.39 591.92 A67.5 22.5 -180 0 0 67.5 612 A69.1875 22.5 -180 0 0 136.29 591.92 L136.35 591.56"
+ class="st24"/>
+ <rect x="44.3405" y="593.55" width="48.0064" height="14.4001" class="st26"/>
+ <text x="44.34" y="604.35" class="st27">prev/next</text> </g>
+ <g id="shape123-191" transform="translate(486.563,-337.5)">
+ <title>Sheet.123</title>
+ <desc>prev/next</desc>
+ <path d="M0.35 591.56 L0.41 591.92 A71.4375 22.5 -180 0 0 71.44 612 A63 22.5 -180 0 0 134.07 591.92 L134.12 591.57"
+ class="st24"/>
+ <rect x="43.2155" y="593.55" width="48.0064" height="14.4001" class="st26"/>
+ <text x="43.22" y="604.35" class="st27">prev/next</text> </g>
+ </g>
</svg>
diff --git a/doc/guides/prog_guide/img/stateful-op.svg b/doc/guides/prog_guide/img/stateful-op.svg
new file mode 100644
index 00000000..e6ef6353
--- /dev/null
+++ b/doc/guides/prog_guide/img/stateful-op.svg
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by Microsoft Visio, SVG Export stateful-ops.svg Page-1 -->
+<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"
+ xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="1.49139in" height="1.35359in"
+ viewBox="0 0 107.38 97.4587" xml:space="preserve" color-interpolation-filters="sRGB" class="st6">
+ <v:documentProperties v:langID="16393" v:metric="true" v:viewMarkup="false"/>
+
+ <style type="text/css">
+ <![CDATA[
+ .st1 {visibility:visible}
+ .st2 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+ .st3 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+ .st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+ .st5 {stroke:#5b9bd5;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
+ .st6 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
+ ]]>
+ </style>
+
+ <defs id="Filters">
+ <filter id="filter_2">
+ <feGaussianBlur stdDeviation="2"/>
+ </filter>
+ </defs>
+ <g v:mID="0" v:index="1" v:groupContext="foregroundPage">
+ <title>Page-1</title>
+ <v:pageProperties v:drawingScale="0.0393701" v:pageScale="0.0393701" v:drawingUnits="24" v:shadowOffsetX="8.50394"
+ v:shadowOffsetY="-8.50394"/>
+ <g id="shape38-1" v:mID="38" v:groupContext="shape" transform="translate(58.305,-28.025)">
+ <title>Circle</title>
+ <desc>stream</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="22.6772" cy="74.7815" width="39.69" height="34.0157"/>
+ <g id="shadow38-2" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 74.78 A22.6772 22.6772 0 0 1 45.35 74.78 A22.6772 22.6772 0 1 1 0 74.78 Z" class="st2"/>
+ </g>
+ <path d="M0 74.78 A22.6772 22.6772 0 0 1 45.35 74.78 A22.6772 22.6772 0 1 1 0 74.78 Z" class="st3"/>
+ <text x="8.43" y="77.78" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>stream</text> </g>
+ <g id="shape39-7" v:mID="39" v:groupContext="shape" transform="translate(3.0294,-73.3793)">
+ <title>Circle.39</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="11.3386" cy="86.1201" width="19.85" height="17.0079"/>
+ <g id="shadow39-8" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 86.12 A11.3386 11.3386 0 0 1 22.68 86.12 A11.3386 11.3386 0 1 1 0 86.12 Z" class="st2"/>
+ </g>
+ <path d="M0 86.12 A11.3386 11.3386 0 0 1 22.68 86.12 A11.3386 11.3386 0 1 1 0 86.12 Z" class="st3"/>
+ <text x="6.07" y="89.12" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape40-13" v:mID="40" v:groupContext="shape" transform="translate(3.0294,-50.7021)">
+ <title>Circle.40</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="11.3386" cy="86.1201" width="19.85" height="17.0079"/>
+ <g id="shadow40-14" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 86.12 A11.3386 11.3386 0 0 1 22.68 86.12 A11.3386 11.3386 0 1 1 0 86.12 Z" class="st2"/>
+ </g>
+ <path d="M0 86.12 A11.3386 11.3386 0 0 1 22.68 86.12 A11.3386 11.3386 0 1 1 0 86.12 Z" class="st3"/>
+ <text x="6.07" y="89.12" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape41-19" v:mID="41" v:groupContext="shape" transform="translate(3.0294,-28.025)">
+ <title>Circle.41</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="11.3386" cy="86.1201" width="19.85" height="17.0079"/>
+ <g id="shadow41-20" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 86.12 A11.3386 11.3386 0 0 1 22.68 86.12 A11.3386 11.3386 0 1 1 0 86.12 Z" class="st2"/>
+ </g>
+ <path d="M0 86.12 A11.3386 11.3386 0 0 1 22.68 86.12 A11.3386 11.3386 0 1 1 0 86.12 Z" class="st3"/>
+ <text x="6.07" y="89.12" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape42-25" v:mID="42" v:groupContext="shape" transform="translate(3.0294,-5.34779)">
+ <title>Circle.249</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="11.3386" cy="86.1201" width="19.85" height="17.0079"/>
+ <g id="shadow42-26" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 86.12 A11.3386 11.3386 0 0 1 22.68 86.12 A11.3386 11.3386 0 1 1 0 86.12 Z" class="st2"/>
+ </g>
+ <path d="M0 86.12 A11.3386 11.3386 0 0 1 22.68 86.12 A11.3386 11.3386 0 1 1 0 86.12 Z" class="st3"/>
+ <text x="6.07" y="89.12" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape43-31" v:mID="43" v:groupContext="shape" transform="translate(66.3024,-75.8604) rotate(24.6166)">
+ <title>Sheet.43</title>
+ <path d="M0 97.46 L43.16 97.46" class="st5"/>
+ </g>
+ <g id="shape44-34" v:mID="44" v:groupContext="shape" transform="translate(37.2064,-61.3598) rotate(6.77654)">
+ <title>Sheet.44</title>
+ <path d="M0 97.46 L34.05 97.46" class="st5"/>
+ </g>
+ <g id="shape45-37" v:mID="45" v:groupContext="shape" transform="translate(-6.31062,-33.9543) rotate(-19.179)">
+ <title>Sheet.45</title>
+ <path d="M0 97.46 L34.51 97.46" class="st5"/>
+ </g>
+ <g id="shape46-40" v:mID="46" v:groupContext="shape" transform="translate(-14.8893,-7.82888) rotate(-24.6166)">
+ <title>Sheet.46</title>
+ <path d="M0 97.46 L43.16 97.46" class="st5"/>
+ </g>
+ </g>
+</svg>
diff --git a/doc/guides/prog_guide/img/stateless-op-shared.svg b/doc/guides/prog_guide/img/stateless-op-shared.svg
new file mode 100644
index 00000000..257a69a5
--- /dev/null
+++ b/doc/guides/prog_guide/img/stateless-op-shared.svg
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by Microsoft Visio, SVG Export Drawing5.svg Page-1 -->
+<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"
+ xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="1.89687in" height="1.60662in"
+ viewBox="0 0 136.575 115.676" xml:space="preserve" color-interpolation-filters="sRGB" class="st7">
+ <v:documentProperties v:langID="16393" v:metric="true" v:viewMarkup="false"/>
+
+ <style type="text/css">
+ <![CDATA[
+ .st1 {visibility:visible}
+ .st2 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+ .st3 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+ .st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+ .st5 {fill:none}
+ .st6 {stroke:#5b9bd5;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.999999}
+ .st7 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
+ ]]>
+ </style>
+
+ <defs id="Filters">
+ <filter id="filter_2">
+ <feGaussianBlur stdDeviation="2"/>
+ </filter>
+ </defs>
+ <g v:mID="0" v:index="1" v:groupContext="foregroundPage">
+ <title>Page-1</title>
+ <v:pageProperties v:drawingScale="0.0393701" v:pageScale="0.0393701" v:drawingUnits="24" v:shadowOffsetX="8.50394"
+ v:shadowOffsetY="-8.50394"/>
+ <g id="group47-1" transform="translate(3.02997,-5.34779)" v:mID="47" v:groupContext="group">
+ <title>Sheet.47</title>
+ <g id="shape36-2" v:mID="36" v:groupContext="shape" transform="translate(66.2255,-27.0553)">
+ <title>Circle</title>
+ <desc>priv_xform</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(3.99999,3.99999,3.99999,3.99999)" v:tabSpace="42.5196"/>
+ <v:textRect cx="31.7998" cy="88.2699" width="55.66" height="40.7542"/>
+ <g id="shadow36-3" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 88.27 A31.7998 27.1694 0 1 1 63.6 88.27 A31.7998 27.1694 0 1 1 0 88.27 Z" class="st2"/>
+ </g>
+ <path d="M0 88.27 A31.7998 27.1694 0 1 1 63.6 88.27 A31.7998 27.1694 0 1 1 0 88.27 Z" class="st3"/>
+ <text x="9.47" y="91.27" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>priv_xform</text> </g>
+ <g id="shape39-8" v:mID="39" v:groupContext="shape" transform="translate(-5.9952E-015,-81.5083)">
+ <title>Circle.40</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(3.99999,3.99999,3.99999,3.99999)" v:tabSpace="42.5196"/>
+ <v:textRect cx="13.5848" cy="101.968" width="23.78" height="20.3771"/>
+ <g id="shadow39-9" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 101.97 A13.5848 13.5848 0 1 1 27.17 101.97 A13.5848 13.5848 0 1 1 0 101.97 Z" class="st2"/>
+ </g>
+ <path d="M0 101.97 A13.5848 13.5848 0 1 1 27.17 101.97 A13.5848 13.5848 0 1 1 0 101.97 Z" class="st3"/>
+ <text x="8.32" y="104.97" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape40-14" v:mID="40" v:groupContext="shape" transform="translate(-5.9952E-015,-54.3389)">
+ <title>Circle.41</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(3.99999,3.99999,3.99999,3.99999)" v:tabSpace="42.5196"/>
+ <v:textRect cx="13.5848" cy="101.968" width="23.78" height="20.3771"/>
+ <g id="shadow40-15" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 101.97 A13.5848 13.5848 0 1 1 27.17 101.97 A13.5848 13.5848 0 1 1 0 101.97 Z" class="st2"/>
+ </g>
+ <path d="M0 101.97 A13.5848 13.5848 0 1 1 27.17 101.97 A13.5848 13.5848 0 1 1 0 101.97 Z" class="st3"/>
+ <text x="8.32" y="104.97" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape41-20" v:mID="41" v:groupContext="shape" transform="translate(-5.9952E-015,-27.1694)">
+ <title>Circle.42</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(3.99999,3.99999,3.99999,3.99999)" v:tabSpace="42.5196"/>
+ <v:textRect cx="13.5848" cy="101.968" width="23.78" height="20.3771"/>
+ <g id="shadow41-21" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 101.97 A13.5848 13.5848 0 1 1 27.17 101.97 A13.5848 13.5848 0 1 1 0 101.97 Z" class="st2"/>
+ </g>
+ <path d="M0 101.97 A13.5848 13.5848 0 1 1 27.17 101.97 A13.5848 13.5848 0 1 1 0 101.97 Z" class="st3"/>
+ <text x="8.32" y="104.97" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape42-26" v:mID="42" v:groupContext="shape">
+ <title>Circle.249</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(3.99999,3.99999,3.99999,3.99999)" v:tabSpace="42.5196"/>
+ <v:textRect cx="13.5848" cy="101.968" width="23.78" height="20.3771"/>
+ <g id="shadow42-27" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 101.97 A13.5848 13.5848 0 1 1 27.17 101.97 A13.5848 13.5848 0 1 1 0 101.97 Z" class="st2"/>
+ </g>
+ <path d="M0 101.97 A13.5848 13.5848 0 1 1 27.17 101.97 A13.5848 13.5848 0 1 1 0 101.97 Z" class="st3"/>
+ <text x="8.32" y="104.97" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape43-32" v:mID="43" v:groupContext="shape" transform="translate(75.3544,-84.7046) rotate(24.6166)">
+ <title>Sheet.43</title>
+ <path d="M0 115.68 L51.71 115.68 L0 115.68 Z" class="st5"/>
+ <path d="M0 115.68 L51.71 115.68" class="st6"/>
+ </g>
+ <g id="shape44-35" v:mID="44" v:groupContext="shape" transform="translate(40.8189,-67.2403) rotate(6.77654)">
+ <title>Sheet.44</title>
+ <path d="M0 115.68 L40.8 115.68 L0 115.68 Z" class="st5"/>
+ <path d="M0 115.68 L40.8 115.68" class="st6"/>
+ </g>
+ <g id="shape45-38" v:mID="45" v:groupContext="shape" transform="translate(-10.8336,-34.4585) rotate(-19.179)">
+ <title>Sheet.45</title>
+ <path d="M0 115.68 L41.35 115.68 L0 115.68 Z" class="st5"/>
+ <path d="M0 115.68 L41.35 115.68" class="st6"/>
+ </g>
+ <g id="shape46-41" v:mID="46" v:groupContext="shape" transform="translate(-21.0159,-3.19618) rotate(-24.6166)">
+ <title>Sheet.46</title>
+ <path d="M0 115.68 L51.71 115.68 L0 115.68 Z" class="st5"/>
+ <path d="M0 115.68 L51.71 115.68" class="st6"/>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/doc/guides/prog_guide/img/stateless-op.svg b/doc/guides/prog_guide/img/stateless-op.svg
new file mode 100644
index 00000000..fd951b7a
--- /dev/null
+++ b/doc/guides/prog_guide/img/stateless-op.svg
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by Microsoft Visio, SVG Export stateless-ops.svg Page-1 -->
+<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"
+ xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="2.24024in" height="2.70592in"
+ viewBox="0 0 161.298 194.826" xml:space="preserve" color-interpolation-filters="sRGB" class="st8">
+ <v:documentProperties v:langID="16393" v:metric="true" v:viewMarkup="false"/>
+
+ <style type="text/css">
+ <![CDATA[
+ .st1 {visibility:visible}
+ .st2 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+ .st3 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+ .st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+ .st5 {fill:#feffff;font-family:Calibri;font-size:0.75em}
+ .st6 {marker-start:url(#mrkr13-19);stroke:#5b9bd5;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
+ .st7 {fill:#5b9bd5;fill-opacity:1;stroke:#5b9bd5;stroke-opacity:1;stroke-width:0.28409094308259}
+ .st8 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
+ ]]>
+ </style>
+
+ <defs id="Markers">
+ <g id="lend13">
+ <path d="M 3 1 L 0 0 L 3 -1 L 3 1 " style="stroke:none"/>
+ </g>
+ <marker id="mrkr13-19" class="st7" v:arrowType="13" v:arrowSize="2" v:setback="0" refX="0" orient="auto"
+ markerUnits="strokeWidth" overflow="visible">
+ <use xlink:href="#lend13" transform="scale(3.5199995788296) "/>
+ </marker>
+ </defs>
+ <defs id="Filters">
+ <filter id="filter_2">
+ <feGaussianBlur stdDeviation="2"/>
+ </filter>
+ </defs>
+ <g v:mID="0" v:index="1" v:groupContext="foregroundPage">
+ <title>Page-1</title>
+ <v:pageProperties v:drawingScale="0.0393701" v:pageScale="0.0393701" v:drawingUnits="24" v:shadowOffsetX="9"
+ v:shadowOffsetY="-9"/>
+ <g id="group61-1" transform="translate(3.02943,-5.34782)" v:mID="61" v:groupContext="group">
+ <title>Sheet.61</title>
+ <g id="shape52-2" v:mID="52" v:groupContext="shape" transform="translate(97.856,-133.39)">
+ <title>Circle.40</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="28.3463" cy="167.479" width="49.62" height="41.4408"/>
+ <g id="shadow52-3" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M-0 167.48 A28.3465 27.6272 180 0 1 56.69 167.48 A28.3465 27.6272 180 0 1 -0 167.48 Z" class="st2"/>
+ </g>
+ <path d="M-0 167.48 A28.3465 27.6272 180 0 1 56.69 167.48 A28.3465 27.6272 180 0 1 -0 167.48 Z" class="st3"/>
+ <text x="23.08" y="170.48" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape53-8" v:mID="53" v:groupContext="shape" transform="translate(-3.9968E-015,-133.39)">
+ <title>Circle.299</title>
+ <desc>priv_xform</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="28.3463" cy="167.479" width="49.62" height="41.4408"/>
+ <g id="shadow53-9" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M-0 167.48 A28.3465 27.6272 180 0 1 56.69 167.48 A28.3465 27.6272 180 0 1 -0 167.48 Z" class="st2"/>
+ </g>
+ <path d="M-0 167.48 A28.3465 27.6272 180 0 1 56.69 167.48 A28.3465 27.6272 180 0 1 -0 167.48 Z" class="st3"/>
+ <text x="8.25" y="170.18" class="st5" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>priv_xform</text> </g>
+ <g id="shape54-14" v:mID="54" v:groupContext="shape" transform="translate(56.693,-160.74)">
+ <title>Sheet.54</title>
+ <path d="M0 194.83 L10.2 194.83 L10.56 194.83 L41.16 194.83" class="st6"/>
+ </g>
+ <g id="shape55-20" v:mID="55" v:groupContext="shape" transform="translate(97.856,-65.1969)">
+ <title>Circle.479</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="28.3463" cy="166.185" width="49.62" height="42.5197"/>
+ <g id="shadow55-21" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 166.19 A28.3465 28.3465 0 1 1 56.69 166.19 A28.3465 28.3465 0 1 1 0 166.19 Z" class="st2"/>
+ </g>
+ <path d="M0 166.19 A28.3465 28.3465 0 1 1 56.69 166.19 A28.3465 28.3465 0 1 1 0 166.19 Z" class="st3"/>
+ <text x="23.08" y="169.19" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape56-26" v:mID="56" v:groupContext="shape" transform="translate(-3.9968E-015,-65.7801)">
+ <title>Circle.480</title>
+ <desc>priv_xform</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="28.3463" cy="166.768" width="49.62" height="42.5197"/>
+ <g id="shadow56-27" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 166.77 A28.3465 28.3465 0 0 1 56.69 166.77 A28.3465 28.3465 0 0 1 0 166.77 Z" class="st2"/>
+ </g>
+ <path d="M0 166.77 A28.3465 28.3465 0 0 1 56.69 166.77 A28.3465 28.3465 0 0 1 0 166.77 Z" class="st3"/>
+ <text x="8.25" y="169.47" class="st5" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>priv_xform</text> </g>
+ <g id="shape57-32" v:mID="57" v:groupContext="shape" transform="translate(56.693,-93.8414)">
+ <title>Sheet.57</title>
+ <path d="M0 194.83 L10.2 194.83 L10.56 194.83 L41.16 194.83" class="st6"/>
+ </g>
+ <g id="shape58-37" v:mID="58" v:groupContext="shape" transform="translate(97.856,0)">
+ <title>Circle.482</title>
+ <desc>op</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="28.3463" cy="166.185" width="49.62" height="42.5197"/>
+ <g id="shadow58-38" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 166.19 A28.3465 28.3465 0 1 1 56.69 166.19 A28.3465 28.3465 0 1 1 0 166.19 Z" class="st2"/>
+ </g>
+ <path d="M0 166.19 A28.3465 28.3465 0 1 1 56.69 166.19 A28.3465 28.3465 0 1 1 0 166.19 Z" class="st3"/>
+ <text x="23.08" y="169.19" class="st4" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>op</text> </g>
+ <g id="shape59-43" v:mID="59" v:groupContext="shape" transform="translate(-3.9968E-015,-0.583223)">
+ <title>Circle.483</title>
+ <desc>priv_xform</desc>
+ <v:userDefs>
+ <v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+ </v:userDefs>
+ <v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
+ <v:textRect cx="28.3463" cy="166.768" width="49.62" height="42.5197"/>
+ <g id="shadow59-44" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1"
+ transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
+ <path d="M0 166.77 A28.3465 28.3465 0 0 1 56.69 166.77 A28.3465 28.3465 0 0 1 0 166.77 Z" class="st2"/>
+ </g>
+ <path d="M0 166.77 A28.3465 28.3465 0 0 1 56.69 166.77 A28.3465 28.3465 0 0 1 0 166.77 Z" class="st3"/>
+ <text x="8.25" y="169.47" class="st5" v:langID="16393"><v:paragraph v:horizAlign="1"/><v:tabList/>priv_xform</text> </g>
+ <g id="shape60-49" v:mID="60" v:groupContext="shape" transform="translate(56.693,-28.6446)">
+ <title>Sheet.60</title>
+ <path d="M0 194.83 L10.2 194.83 L10.56 194.83 L41.16 194.83" class="st6"/>
+ </g>
+ </g>
+ </g>
+</svg>