Mercurial > hg > Papers > 2024 > matac-master
changeset 51:bc69a109778c
png to pdf
author | matac42 <matac@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 30 Jan 2024 19:51:40 +0900 |
parents | 0cea940227c4 |
children | 886c8902f16e |
files | Paper/fig/copy_algo3.drawio Paper/fig/copy_algo3.pdf Paper/fig/copy_algo4.pdf Paper/fig/copy_context.drawio Paper/fig/copy_context.png Paper/fig/rbtree_gc.drawio Paper/fig/rbtree_gc.pdf Paper/fig/rbtree_replica.drawio Paper/fig/rbtree_replica.pdf Paper/fig/timing.pdf Paper/master_paper.lol Paper/master_paper.pdf Paper/master_paper.tex TODO.md mindmaps/gears_fs_db.mm |
diffstat | 15 files changed, 829 insertions(+), 766 deletions(-) [+] |
line wrap: on
line diff
--- a/Paper/fig/copy_algo3.drawio Tue Jan 30 15:40:33 2024 +0900 +++ b/Paper/fig/copy_algo3.drawio Tue Jan 30 19:51:40 2024 +0900 @@ -1,215 +1,215 @@ -<mxfile host="65bd71144e"> - <diagram id="p-B8z-Vdb0gE9XzKJtCj" name="Page-1"> - <mxGraphModel dx="653" dy="286" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> - <root> - <mxCell id="0"/> - <mxCell id="1" parent="0"/> - <mxCell id="2" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=2;" vertex="1" parent="1"> - <mxGeometry x="620" y="1717.5" width="240" height="352.5" as="geometry"/> - </mxCell> - <mxCell id="3" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=2;" vertex="1" parent="1"> - <mxGeometry x="360" y="1717.5" width="220" height="322.5" as="geometry"/> - </mxCell> - <mxCell id="4" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=2;strokeColor=#000000;" vertex="1" parent="1"> - <mxGeometry x="90" y="1717.5" width="230" height="280" as="geometry"/> - </mxCell> - <mxCell id="5" value="leftDown" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="150" y="1757.5" width="120" height="60" as="geometry"/> - </mxCell> - <mxCell id="6" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.25;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="7" target="4"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="7" value="rightDown" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="414" y="1757.5" width="120" height="60" as="geometry"/> - </mxCell> - <mxCell id="8" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="9" target="38"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="9" value="up" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="680" y="1757.5" width="120" height="60" as="geometry"/> - </mxCell> - <mxCell id="10" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0;exitY=0;exitDx=0;exitDy=0;entryX=0.145;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;startArrow=classic;startFill=1;" edge="1" parent="1" source="15" target="5"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="11" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=1;exitY=0;exitDx=0;exitDy=0;entryX=0.854;entryY=0.977;entryDx=0;entryDy=0;entryPerimeter=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="15" target="5"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="12" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontColor=#000000;" vertex="1" connectable="0" parent="11"> - <mxGeometry x="-0.7643" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="13" style="edgeStyle=orthogonalEdgeStyle;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;entryX=-0.002;entryY=0.698;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="15" target="3"> - <mxGeometry relative="1" as="geometry"> - <Array as="points"/> - </mxGeometry> - </mxCell> - <mxCell id="14" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="13"> - <mxGeometry x="-0.8407" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="15" value="left exist?" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="150" y="1917.5" width="120" height="50" as="geometry"/> - </mxCell> - <mxCell id="16" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="17" target="15"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="17" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#FF8000;" vertex="1" parent="1"> - <mxGeometry x="100" y="1932.5" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="18" value="Start" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF8000;" vertex="1" parent="1"> - <mxGeometry x="80" y="1902.5" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="19" style="edgeStyle=orthogonalEdgeStyle;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="23" target="7"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="20" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="19"> - <mxGeometry x="-0.6463" y="1" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="21" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.003;entryY=0.64;entryDx=0;entryDy=0;entryPerimeter=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="23" target="2"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="22" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="21"> - <mxGeometry x="-0.7763" y="-1" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="23" value="right exist?" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="414" y="1917.5" width="120" height="50" as="geometry"/> - </mxCell> - <mxCell id="24" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0;entryY=0.25;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="25" target="4"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="25" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontColor=#007FFF;strokeColor=#007FFF;" vertex="1" parent="1"> - <mxGeometry x="20" y="1777.5" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="26" value="Start" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#007FFF;" vertex="1" parent="1"> - <mxGeometry y="1752.5" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="27" value="LeftDown" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="170" y="1680" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="28" style="edgeStyle=orthogonalEdgeStyle;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="29" target="23"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="29" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#FF8000;" vertex="1" parent="1"> - <mxGeometry x="370" y="1932.5" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="30" value="Start" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF8000;" vertex="1" parent="1"> - <mxGeometry x="350" y="1907.5" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="31" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;exitX=0.589;exitY=0.988;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="1" source="32" target="9"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="32" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#FF8000;" vertex="1" parent="1"> - <mxGeometry x="630" y="1777.5" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="33" value="Start" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF8000;" vertex="1" parent="1"> - <mxGeometry x="610" y="1752.5" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="34" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="38" target="42"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="35" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="34"> - <mxGeometry x="-0.3697" y="-4" relative="1" as="geometry"> - <mxPoint x="4" y="4" as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="36" style="edgeStyle=orthogonalEdgeStyle;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="38"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="580" y="1865" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="37" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontColor=#000000;" vertex="1" connectable="0" parent="36"> - <mxGeometry x="-0.7491" y="-2" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="38" value="right copied?" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="680" y="1840" width="120" height="50" as="geometry"/> - </mxCell> - <mxCell id="39" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=1;entryY=0.5;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="42" target="9"> - <mxGeometry relative="1" as="geometry"> - <Array as="points"> - <mxPoint x="830" y="1943"/> - <mxPoint x="830" y="1788"/> - </Array> - </mxGeometry> - </mxCell> - <mxCell id="40" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="39"> - <mxGeometry x="-0.6661" y="1" relative="1" as="geometry"> - <mxPoint x="-19" y="6" as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="41" value="Yes" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="42" target="47"> - <mxGeometry x="-0.1667" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="42" value="is root?" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="680" y="1917.5" width="120" height="50" as="geometry"/> - </mxCell> - <mxCell id="43" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="47" target="49"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="44" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="43"> - <mxGeometry x="-0.6889" y="-1" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="45" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="47"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="580" y="2023" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="46" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="45"> - <mxGeometry x="-0.7681" y="-1" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="47" value="copied?" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="680" y="1997.5" width="120" height="50" as="geometry"/> - </mxCell> - <mxCell id="48" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.515;entryY=0.352;entryDx=0;entryDy=0;entryPerimeter=0;fontColor=#007FFF;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="49" target="52"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="49" value="swap" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="680" y="2100" width="120" height="60" as="geometry"/> - </mxCell> - <mxCell id="50" value="RightDown" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="435" y="1680" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="51" value="Up" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="705" y="1680" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="52" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#007FFF;strokeWidth=2;fontColor=#FF8000;" vertex="1" parent="1"> - <mxGeometry x="730" y="2190" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="53" value="End" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=2;fontColor=#007FFF;" vertex="1" parent="1"> - <mxGeometry x="710" y="2200" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="54" value="" style="ellipse;whiteSpace=wrap;html=1;strokeColor=#000000;strokeWidth=1;fontColor=#000000;fillColor=default;" vertex="1" parent="1"> - <mxGeometry x="90" y="2090" width="70" height="30" as="geometry"/> - </mxCell> - <mxCell id="55" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=#000000;strokeWidth=1;fontColor=#000000;fillColor=default;" vertex="1" parent="1"> - <mxGeometry x="90" y="2140" width="70" height="30" as="geometry"/> - </mxCell> - <mxCell id="56" value="CodeGear" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=1;fontColor=#000000;" vertex="1" parent="1"> - <mxGeometry x="170" y="2140" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="57" value="Conditional branch" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=1;fontColor=#000000;" vertex="1" parent="1"> - <mxGeometry x="170" y="2090" width="110" height="30" as="geometry"/> - </mxCell> - <mxCell id="58" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#FF8000;" vertex="1" parent="1"> - <mxGeometry x="115" y="2190" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="59" value="Phase starting point" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=1;fontColor=#000000;" vertex="1" parent="1"> - <mxGeometry x="170" y="2185" width="110" height="30" as="geometry"/> - </mxCell> - </root> - </mxGraphModel> - </diagram> -</mxfile> \ No newline at end of file +<mxfile host="app.diagrams.net" modified="2024-01-30T09:39:30.805Z" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36" version="23.0.2" etag="QuqclasOwFS4f3NC937V" type="device"> + <diagram id="p-B8z-Vdb0gE9XzKJtCj" name="Page-1"> + <mxGraphModel dx="1368" dy="-257" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> + <root> + <mxCell id="0" /> + <mxCell id="1" parent="0" /> + <mxCell id="2" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=2;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="620" y="1717.5" width="240" height="352.5" as="geometry" /> + </mxCell> + <mxCell id="3" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=2;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="360" y="1717.5" width="220" height="322.5" as="geometry" /> + </mxCell> + <mxCell id="4" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=2;strokeColor=#000000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="90" y="1717.5" width="230" height="280" as="geometry" /> + </mxCell> + <mxCell id="5" value="leftDown" style="rounded=0;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="150" y="1757.5" width="120" height="60" as="geometry" /> + </mxCell> + <mxCell id="6" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.25;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="7" target="4" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="7" value="rightDown" style="rounded=0;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="414" y="1757.5" width="120" height="60" as="geometry" /> + </mxCell> + <mxCell id="8" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="9" target="38" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="9" value="up" style="rounded=0;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="680" y="1757.5" width="120" height="60" as="geometry" /> + </mxCell> + <mxCell id="10" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0;exitY=0;exitDx=0;exitDy=0;entryX=0.145;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;startArrow=classic;startFill=1;fontSize=14;" parent="1" source="15" target="5" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="11" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=1;exitY=0;exitDx=0;exitDy=0;entryX=0.854;entryY=0.977;entryDx=0;entryDy=0;entryPerimeter=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="15" target="5" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="12" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontColor=#000000;fontSize=14;" parent="11" vertex="1" connectable="0"> + <mxGeometry x="-0.7643" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="13" style="edgeStyle=orthogonalEdgeStyle;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;entryX=-0.002;entryY=0.698;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="15" target="3" edge="1"> + <mxGeometry relative="1" as="geometry"> + <Array as="points" /> + </mxGeometry> + </mxCell> + <mxCell id="14" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="13" vertex="1" connectable="0"> + <mxGeometry x="-0.8407" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="15" value="left exist?" style="ellipse;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="150" y="1917.5" width="120" height="50" as="geometry" /> + </mxCell> + <mxCell id="16" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="17" target="15" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="17" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#FF8000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="100" y="1932.5" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="18" value="Start" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF8000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="80" y="1902.5" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="19" style="edgeStyle=orthogonalEdgeStyle;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="23" target="7" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="20" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="19" vertex="1" connectable="0"> + <mxGeometry x="-0.6463" y="1" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="21" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.003;entryY=0.64;entryDx=0;entryDy=0;entryPerimeter=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="23" target="2" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="22" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="21" vertex="1" connectable="0"> + <mxGeometry x="-0.7763" y="-1" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="23" value="right exist?" style="ellipse;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="414" y="1917.5" width="120" height="50" as="geometry" /> + </mxCell> + <mxCell id="24" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0;entryY=0.25;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="25" target="4" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="25" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontColor=#007FFF;strokeColor=#007FFF;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="20" y="1777.5" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="26" value="Start" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#007FFF;fontSize=14;" parent="1" vertex="1"> + <mxGeometry y="1752.5" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="27" value="LeftDown" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="170" y="1680" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="28" style="edgeStyle=orthogonalEdgeStyle;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="29" target="23" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="29" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#FF8000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="370" y="1932.5" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="30" value="Start" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF8000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="350" y="1907.5" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="31" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;exitX=0.589;exitY=0.988;exitDx=0;exitDy=0;exitPerimeter=0;fontSize=14;" parent="1" source="32" target="9" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="32" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#FF8000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="630" y="1777.5" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="33" value="Start" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF8000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="610" y="1752.5" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="34" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="38" target="42" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="35" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="34" vertex="1" connectable="0"> + <mxGeometry x="-0.3697" y="-4" relative="1" as="geometry"> + <mxPoint x="4" y="4" as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="36" style="edgeStyle=orthogonalEdgeStyle;html=1;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="38" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="580" y="1865" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="37" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontColor=#000000;fontSize=14;" parent="36" vertex="1" connectable="0"> + <mxGeometry x="-0.7491" y="-2" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="38" value="right copied?" style="ellipse;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="680" y="1840" width="120" height="50" as="geometry" /> + </mxCell> + <mxCell id="39" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=1;entryY=0.5;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="42" target="9" edge="1"> + <mxGeometry relative="1" as="geometry"> + <Array as="points"> + <mxPoint x="830" y="1943" /> + <mxPoint x="830" y="1788" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="40" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="39" vertex="1" connectable="0"> + <mxGeometry x="-0.6661" y="1" relative="1" as="geometry"> + <mxPoint x="-19" y="6" as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="41" value="Yes" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="42" target="47" edge="1"> + <mxGeometry x="-0.1667" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="42" value="is root?" style="ellipse;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="680" y="1917.5" width="120" height="50" as="geometry" /> + </mxCell> + <mxCell id="43" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="47" target="49" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="44" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="43" vertex="1" connectable="0"> + <mxGeometry x="-0.6889" y="-1" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="45" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="47" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="580" y="2023" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="46" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="45" vertex="1" connectable="0"> + <mxGeometry x="-0.7681" y="-1" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="47" value="copied?" style="ellipse;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="680" y="1997.5" width="120" height="50" as="geometry" /> + </mxCell> + <mxCell id="48" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.515;entryY=0.352;entryDx=0;entryDy=0;entryPerimeter=0;fontColor=#007FFF;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="49" target="52" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="49" value="swap" style="rounded=0;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="680" y="2100" width="120" height="60" as="geometry" /> + </mxCell> + <mxCell id="50" value="RightDown" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="435" y="1680" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="51" value="Up" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="705" y="1680" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="52" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#007FFF;strokeWidth=2;fontColor=#FF8000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="730" y="2190" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="53" value="End" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=2;fontColor=#007FFF;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="710" y="2200" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="54" value="" style="ellipse;whiteSpace=wrap;html=1;strokeColor=#000000;strokeWidth=1;fontColor=#000000;fillColor=default;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="90" y="2090" width="70" height="30" as="geometry" /> + </mxCell> + <mxCell id="55" value="" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=#000000;strokeWidth=1;fontColor=#000000;fillColor=default;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="90" y="2140" width="70" height="30" as="geometry" /> + </mxCell> + <mxCell id="56" value="CodeGear" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=1;fontColor=#000000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="167.5" y="2140" width="75" height="30" as="geometry" /> + </mxCell> + <mxCell id="57" value="Conditional branch" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=1;fontColor=#000000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="170" y="2090" width="120" height="30" as="geometry" /> + </mxCell> + <mxCell id="58" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;strokeColor=#FF8000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="115" y="2190" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="59" value="Phase starting point" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;strokeWidth=1;fontColor=#000000;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="160" y="2185" width="140" height="30" as="geometry" /> + </mxCell> + </root> + </mxGraphModel> + </diagram> +</mxfile>
--- a/Paper/fig/copy_context.drawio Tue Jan 30 15:40:33 2024 +0900 +++ b/Paper/fig/copy_context.drawio Tue Jan 30 19:51:40 2024 +0900 @@ -1,173 +1,170 @@ -<mxfile host="65bd71144e"> - <diagram id="x9Et9zQnZOJDZx9rMbiu" name="Page-1"> - <mxGraphModel dx="1177" dy="920" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> - <root> - <mxCell id="0"/> - <mxCell id="1" parent="0"/> - <mxCell id="44" style="edgeStyle=none;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="2" target="12"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="2" value="C1" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="200" y="170" width="120" height="80" as="geometry"/> - </mxCell> - <mxCell id="8" style="edgeStyle=none;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="4" target="2"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="4" value="Code table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;" vertex="1" parent="1"> - <mxGeometry x="200" y="280" width="120" height="80" as="geometry"/> - </mxCell> - <mxCell id="9" style="edgeStyle=none;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="5" target="4"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="5" value="Data table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;" vertex="1" parent="1"> - <mxGeometry x="200" y="400" width="120" height="160" as="geometry"/> - </mxCell> - <mxCell id="45" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=classic;endFill=1;curved=1;" edge="1" parent="1" source="12" target="2"> - <mxGeometry relative="1" as="geometry"> - <Array as="points"> - <mxPoint x="570" y="210"/> - <mxPoint x="570" y="120"/> - <mxPoint x="150" y="120"/> - <mxPoint x="150" y="210"/> - </Array> - </mxGeometry> - </mxCell> - <mxCell id="12" value="C2" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1"> - <mxGeometry x="400" y="170" width="120" height="80" as="geometry"/> - </mxCell> - <mxCell id="13" style="edgeStyle=none;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="14" target="12"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="14" value="Code table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;" vertex="1" parent="1"> - <mxGeometry x="400" y="280" width="120" height="80" as="geometry"/> - </mxCell> - <mxCell id="15" style="edgeStyle=none;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="16" target="14"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="63" style="edgeStyle=orthogonalEdgeStyle;curved=1;html=1;exitX=0.25;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.25;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="16" target="53"> - <mxGeometry relative="1" as="geometry"> - <Array as="points"> - <mxPoint x="430" y="590"/> - <mxPoint x="530" y="590"/> - <mxPoint x="530" y="440"/> - </Array> - </mxGeometry> - </mxCell> - <mxCell id="16" value="Data table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;" vertex="1" parent="1"> - <mxGeometry x="400" y="400" width="120" height="160" as="geometry"/> - </mxCell> - <mxCell id="20" style="edgeStyle=none;html=1;entryX=0;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="17" target="19"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="21" style="edgeStyle=none;html=1;endArrow=none;endFill=0;" edge="1" parent="1" source="17" target="18"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="17" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="260" y="450" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="18" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="290" y="490" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="23" style="edgeStyle=none;html=1;entryX=0.75;entryY=0.7;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="19" target="22"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="25" style="edgeStyle=none;html=1;endArrow=none;endFill=0;" edge="1" parent="1" source="19" target="24"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="19" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="230" y="490" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="22" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="200" y="530" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="24" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="260" y="530" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="35" style="edgeStyle=none;html=1;entryX=0;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="37" target="41"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="36" style="edgeStyle=none;html=1;endArrow=none;endFill=0;" edge="1" parent="1" source="37" target="38"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="37" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="460" y="450" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="38" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="490" y="490" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="39" style="edgeStyle=none;html=1;entryX=0.75;entryY=0.7;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="41" target="42"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="40" style="edgeStyle=none;html=1;endArrow=none;endFill=0;" edge="1" parent="1" source="41" target="43"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="41" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="430" y="490" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="42" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="400" y="530" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="43" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="460" y="530" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="46" value="erasure coding" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="270" y="700" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="47" value="" style="endArrow=classic;html=1;curved=1;" edge="1" parent="1"> - <mxGeometry width="50" height="50" relative="1" as="geometry"> - <mxPoint x="340" y="469.62" as="sourcePoint"/> - <mxPoint x="380" y="469.62" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="48" value="" style="endArrow=none;html=1;curved=1;endFill=0;startArrow=classic;startFill=1;" edge="1" parent="1"> - <mxGeometry width="50" height="50" relative="1" as="geometry"> - <mxPoint x="340" y="489.62" as="sourcePoint"/> - <mxPoint x="380" y="489.62" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="49" value="Import" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="330" y="440" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="50" value="Export" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="330" y="490" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="52" style="edgeStyle=orthogonalEdgeStyle;curved=1;html=1;entryX=0.392;entryY=0.685;entryDx=0;entryDy=0;entryPerimeter=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;" edge="1" parent="1" source="51" target="24"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="51" value="ALLOCATE" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="240" y="580" width="60" height="10" as="geometry"/> - </mxCell> - <mxCell id="53" value="Data table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;" vertex="1" parent="1"> - <mxGeometry x="560" y="400" width="120" height="160" as="geometry"/> - </mxCell> - <mxCell id="54" style="edgeStyle=none;html=1;entryX=0;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="56" target="60"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="55" style="edgeStyle=none;html=1;endArrow=none;endFill=0;" edge="1" parent="1" source="56" target="57"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="56" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="620" y="450" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="57" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="650" y="490" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="58" style="edgeStyle=none;html=1;entryX=0.75;entryY=0.7;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="60" target="61"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="59" style="edgeStyle=none;html=1;endArrow=none;endFill=0;" edge="1" parent="1" source="60" target="62"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="60" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="590" y="490" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="61" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="560" y="530" width="20" height="20" as="geometry"/> - </mxCell> - <mxCell id="62" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;" vertex="1" parent="1"> - <mxGeometry x="620" y="530" width="20" height="20" as="geometry"/> - </mxCell> - </root> - </mxGraphModel> - </diagram> -</mxfile> \ No newline at end of file +<mxfile host="app.diagrams.net" modified="2024-01-30T09:54:08.956Z" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36" version="23.0.2" etag="ZrzQZc7nO3duAVoN60rr" type="device"> + <diagram id="x9Et9zQnZOJDZx9rMbiu" name="Page-1"> + <mxGraphModel dx="1026" dy="684" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> + <root> + <mxCell id="0" /> + <mxCell id="1" parent="0" /> + <mxCell id="44" style="edgeStyle=none;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="2" target="12" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="2" value="C1" style="ellipse;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="200" y="170" width="120" height="80" as="geometry" /> + </mxCell> + <mxCell id="8" style="edgeStyle=none;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="4" target="2" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="4" value="Code table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="200" y="280" width="120" height="80" as="geometry" /> + </mxCell> + <mxCell id="9" style="edgeStyle=none;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="5" target="4" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="5" value="Data table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="200" y="400" width="120" height="160" as="geometry" /> + </mxCell> + <mxCell id="45" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=classic;endFill=1;curved=1;fontSize=14;" parent="1" source="12" target="2" edge="1"> + <mxGeometry relative="1" as="geometry"> + <Array as="points"> + <mxPoint x="570" y="210" /> + <mxPoint x="570" y="120" /> + <mxPoint x="150" y="120" /> + <mxPoint x="150" y="210" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="12" value="C2" style="ellipse;whiteSpace=wrap;html=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="400" y="170" width="120" height="80" as="geometry" /> + </mxCell> + <mxCell id="13" style="edgeStyle=none;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="14" target="12" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="14" value="Code table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="400" y="280" width="120" height="80" as="geometry" /> + </mxCell> + <mxCell id="15" style="edgeStyle=none;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="16" target="14" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="63" style="edgeStyle=orthogonalEdgeStyle;curved=1;html=1;exitX=0.25;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.25;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="16" target="53" edge="1"> + <mxGeometry relative="1" as="geometry"> + <Array as="points"> + <mxPoint x="430" y="600" /> + <mxPoint x="540" y="600" /> + <mxPoint x="540" y="440" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="16" value="Data table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="400" y="400" width="120" height="160" as="geometry" /> + </mxCell> + <mxCell id="20" style="edgeStyle=none;html=1;entryX=0;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="17" target="19" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="21" style="edgeStyle=none;html=1;endArrow=none;endFill=0;fontSize=14;" parent="1" source="17" target="18" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="17" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="260" y="450" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="18" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="290" y="490" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="23" style="edgeStyle=none;html=1;entryX=0.75;entryY=0.7;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="19" target="22" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="25" style="edgeStyle=none;html=1;endArrow=none;endFill=0;fontSize=14;" parent="1" source="19" target="24" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="19" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="230" y="490" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="22" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="200" y="530" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="24" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="260" y="530" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="35" style="edgeStyle=none;html=1;entryX=0;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="37" target="41" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="36" style="edgeStyle=none;html=1;endArrow=none;endFill=0;fontSize=14;" parent="1" source="37" target="38" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="37" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="460" y="450" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="38" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="490" y="490" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="39" style="edgeStyle=none;html=1;entryX=0.75;entryY=0.7;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="41" target="42" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="40" style="edgeStyle=none;html=1;endArrow=none;endFill=0;fontSize=14;" parent="1" source="41" target="43" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="41" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="430" y="490" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="42" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="400" y="530" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="43" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="460" y="530" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="47" value="" style="endArrow=classic;html=1;curved=1;fontSize=14;" parent="1" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="340" y="469.62" as="sourcePoint" /> + <mxPoint x="380" y="469.62" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="48" value="" style="endArrow=none;html=1;curved=1;endFill=0;startArrow=classic;startFill=1;fontSize=14;" parent="1" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="340" y="489.62" as="sourcePoint" /> + <mxPoint x="380" y="489.62" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="49" value="Import" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="330" y="440" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="50" value="Export" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="330" y="490" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="52" style="edgeStyle=orthogonalEdgeStyle;curved=1;html=1;entryX=0.392;entryY=0.685;entryDx=0;entryDy=0;entryPerimeter=0;startArrow=none;startFill=0;endArrow=classic;endFill=1;fontSize=14;" parent="1" source="51" target="24" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="51" value="ALLOCATE" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="240" y="580" width="60" height="10" as="geometry" /> + </mxCell> + <mxCell id="53" value="Data table" style="rounded=0;whiteSpace=wrap;html=1;align=left;verticalAlign=top;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="560" y="400" width="120" height="160" as="geometry" /> + </mxCell> + <mxCell id="54" style="edgeStyle=none;html=1;entryX=0;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="56" target="60" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="55" style="edgeStyle=none;html=1;endArrow=none;endFill=0;fontSize=14;" parent="1" source="56" target="57" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="56" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="620" y="450" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="57" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="650" y="490" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="58" style="edgeStyle=none;html=1;entryX=0.75;entryY=0.7;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="60" target="61" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="59" style="edgeStyle=none;html=1;endArrow=none;endFill=0;fontSize=14;" parent="1" source="60" target="62" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="60" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="590" y="490" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="61" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="560" y="530" width="20" height="20" as="geometry" /> + </mxCell> + <mxCell id="62" value="" style="shape=waypoint;sketch=0;fillStyle=solid;size=6;pointerEvents=1;points=[];fillColor=none;resizable=0;rotatable=0;perimeter=centerPerimeter;snapToPoint=1;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="620" y="530" width="20" height="20" as="geometry" /> + </mxCell> + </root> + </mxGraphModel> + </diagram> +</mxfile>
--- a/Paper/fig/rbtree_gc.drawio Tue Jan 30 15:40:33 2024 +0900 +++ b/Paper/fig/rbtree_gc.drawio Tue Jan 30 19:51:40 2024 +0900 @@ -1,151 +1,151 @@ -<mxfile host="65bd71144e"> - <diagram id="rADU1YbqsmjT1hZ3yXGo" name="Page-1"> - <mxGraphModel dx="920" dy="728" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> - <root> - <mxCell id="0"/> - <mxCell id="1" parent="0"/> - <mxCell id="52" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;" vertex="1" parent="1"> - <mxGeometry x="480" y="110" width="220" height="210" as="geometry"/> - </mxCell> - <mxCell id="51" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;" vertex="1" parent="1"> - <mxGeometry x="80" y="110" width="300" height="210" as="geometry"/> - </mxCell> - <mxCell id="9" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="2" target="4"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="10" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="2" target="3"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="2" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="170" y="150" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="20" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.292;entryY=0.043;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="3" target="19"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="261" y="271" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="3" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=#FF8000;fontColor=#FF9933;" vertex="1" parent="1"> - <mxGeometry x="210" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="11" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.722;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="4" target="5"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="120" y="270" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="12" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.27;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="4" target="6"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="4" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="130" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="5" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="90" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="6" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="170" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="13" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="7" target="4"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="22" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.025;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="7" target="14"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="7" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="250" y="150" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="18" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.303;entryY=0.036;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="14" target="15"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="342" y="271" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="14" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="290" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="15" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="330" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="19" value="F" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=#FF8000;fontColor=#FF9933;" vertex="1" parent="1"> - <mxGeometry x="250" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="23" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="25" target="30"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="24" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="25" target="27"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="25" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="570" y="150" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="26" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.275;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="27" target="39"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="27" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="610" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="28" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.724;entryY=0.056;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="30" target="31"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="520" y="269.9999999999998" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="29" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.28;entryY=0.051;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="30" target="32"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="30" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="530" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="31" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="490" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="32" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="570" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="34" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.025;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" target="37"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="714.1421356237308" y="154.14213562373084" as="sourcePoint"/> - </mxGeometry> - </mxCell> - <mxCell id="39" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="650" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="40" value="Old" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="160" y="110" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="41" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="240" y="110" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="43" value="From" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="90" y="80" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="44" value="To" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="490" y="80" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="45" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="560" y="110" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="49" value="" style="shape=flexArrow;endArrow=classic;html=1;width=8.75;endSize=5.124999999999999;" edge="1" parent="1"> - <mxGeometry width="50" height="50" relative="1" as="geometry"> - <mxPoint x="390" y="220" as="sourcePoint"/> - <mxPoint x="470" y="220" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="53" value="Copy" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="49"> - <mxGeometry x="-0.0625" y="4" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="54" value="" style="endArrow=none;html=1;fontColor=#FF9933;strokeColor=#FF8000;" edge="1" parent="1"> - <mxGeometry width="50" height="50" relative="1" as="geometry"> - <mxPoint x="140" y="334.58" as="sourcePoint"/> - <mxPoint x="185" y="334.58" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="57" value="" style="edgeStyle=none;html=1;strokeColor=#FF8000;fontSize=9;fontColor=#FF9933;endArrow=none;endFill=0;" edge="1" parent="1" source="56" target="51"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="56" value="Garbage" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF9933;fontSize=9;" vertex="1" parent="1"> - <mxGeometry x="90" y="320" width="60" height="30" as="geometry"/> - </mxCell> - </root> - </mxGraphModel> - </diagram> -</mxfile> \ No newline at end of file +<mxfile host="app.diagrams.net" modified="2024-01-30T09:25:33.256Z" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36" etag="610jcQ1txI_g4jlt8d4h" version="23.0.2" type="device"> + <diagram id="rADU1YbqsmjT1hZ3yXGo" name="Page-1"> + <mxGraphModel dx="1026" dy="684" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> + <root> + <mxCell id="0" /> + <mxCell id="1" parent="0" /> + <mxCell id="52" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="480" y="110" width="220" height="210" as="geometry" /> + </mxCell> + <mxCell id="51" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="80" y="110" width="300" height="210" as="geometry" /> + </mxCell> + <mxCell id="9" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="2" target="4" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="10" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="2" target="3" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="2" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="170" y="150" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="20" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.292;entryY=0.043;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="3" target="19" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="261" y="271" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="3" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=#FF8000;fontColor=#FF9933;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="210" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="11" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.722;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="4" target="5" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="120" y="270" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="12" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.27;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="4" target="6" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="4" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="130" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="5" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="90" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="6" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="170" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="13" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="7" target="4" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="22" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.025;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="7" target="14" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="7" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="250" y="150" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="18" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.303;entryY=0.036;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="14" target="15" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="342" y="271" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="14" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="290" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="15" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="330" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="19" value="F" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=#FF8000;fontColor=#FF9933;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="250" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="23" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="25" target="30" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="24" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="25" target="27" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="25" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="570" y="150" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="26" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.275;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="27" target="39" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="27" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="610" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="28" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.724;entryY=0.056;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="30" target="31" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="520" y="269.9999999999998" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="29" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.28;entryY=0.051;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="30" target="32" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="30" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="530" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="31" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="490" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="32" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="570" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="34" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.025;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" parent="1" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="714.1421356237308" y="154.14213562373084" as="sourcePoint" /> + </mxGeometry> + </mxCell> + <mxCell id="39" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="650" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="40" value="Old" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="160" y="110" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="41" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="240" y="110" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="43" value="From" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="90" y="80" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="44" value="To" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="490" y="80" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="45" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="560" y="110" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="49" value="" style="shape=flexArrow;endArrow=classic;html=1;width=8.75;endSize=5.124999999999999;fontSize=14;" parent="1" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="390" y="220" as="sourcePoint" /> + <mxPoint x="470" y="220" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="53" value="Copy" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="49" vertex="1" connectable="0"> + <mxGeometry x="-0.0625" y="4" relative="1" as="geometry"> + <mxPoint y="-6" as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="54" value="" style="endArrow=none;html=1;fontColor=#FF9933;strokeColor=#FF8000;fontSize=14;" parent="1" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="150" y="334.81" as="sourcePoint" /> + <mxPoint x="195" y="334.81" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="57" value="" style="edgeStyle=none;html=1;strokeColor=#FF8000;fontSize=14;fontColor=#FF9933;endArrow=none;endFill=0;" parent="1" source="56" target="51" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="56" value="Garbage" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF9933;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="90" y="320" width="60" height="30" as="geometry" /> + </mxCell> + </root> + </mxGraphModel> + </diagram> +</mxfile>
--- a/Paper/fig/rbtree_replica.drawio Tue Jan 30 15:40:33 2024 +0900 +++ b/Paper/fig/rbtree_replica.drawio Tue Jan 30 19:51:40 2024 +0900 @@ -1,207 +1,207 @@ -<mxfile host="65bd71144e"> - <diagram id="kZjAbhT0E9gDD8kV_gd3" name="Page-1"> - <mxGraphModel dx="960" dy="759" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> - <root> - <mxCell id="0"/> - <mxCell id="1" parent="0"/> - <mxCell id="63" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;arcSize=30;" vertex="1" parent="1"> - <mxGeometry x="450" y="382.5" width="260" height="245" as="geometry"/> - </mxCell> - <mxCell id="62" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;arcSize=30;" vertex="1" parent="1"> - <mxGeometry x="70" y="80" width="640" height="270" as="geometry"/> - </mxCell> - <mxCell id="2" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;" vertex="1" parent="1"> - <mxGeometry x="480" y="110" width="220" height="210" as="geometry"/> - </mxCell> - <mxCell id="3" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;" vertex="1" parent="1"> - <mxGeometry x="80" y="110" width="300" height="210" as="geometry"/> - </mxCell> - <mxCell id="4" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="6" target="11"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="5" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="6" target="8"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="6" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="170" y="150" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="7" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.292;entryY=0.043;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="8" target="20"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="261" y="271" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="8" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=#FF8000;fontColor=#FF9933;" vertex="1" parent="1"> - <mxGeometry x="210" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="9" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.722;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="11" target="12"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="120" y="270" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="10" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.27;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="11" target="13"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="11" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="130" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="12" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="90" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="13" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="170" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="14" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="16" target="11"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="15" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.025;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="16" target="18"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="16" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="250" y="150" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="17" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.303;entryY=0.036;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="18" target="19"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="342" y="271" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="18" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="290" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="19" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="330" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="20" value="F" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=#FF8000;fontColor=#FF9933;" vertex="1" parent="1"> - <mxGeometry x="250" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="21" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="23" target="28"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="22" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="23" target="25"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="23" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="570" y="150" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="24" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.275;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="25" target="31"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="25" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="610" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="26" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.724;entryY=0.056;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="28" target="29"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="520" y="269.9999999999998" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="27" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.28;entryY=0.051;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="28" target="30"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="28" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="530" y="210" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="29" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="490" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="30" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="570" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="31" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="650" y="270" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="32" value="Old" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="160" y="110" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="33" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="240" y="110" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="36" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="560" y="110" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="39" value="" style="endArrow=none;html=1;fontColor=#FF9933;strokeColor=#FF8000;" edge="1" parent="1"> - <mxGeometry width="50" height="50" relative="1" as="geometry"> - <mxPoint x="150" y="334.5799999999999" as="sourcePoint"/> - <mxPoint x="195" y="334.5799999999999" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="40" value="" style="edgeStyle=none;html=1;strokeColor=#FF8000;fontSize=9;fontColor=#FF9933;endArrow=none;endFill=0;" edge="1" parent="1" source="41" target="3"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="41" value="Garbage" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF9933;fontSize=9;" vertex="1" parent="1"> - <mxGeometry x="100" y="320" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="42" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;" vertex="1" parent="1"> - <mxGeometry x="470" y="400" width="220" height="210" as="geometry"/> - </mxCell> - <mxCell id="43" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="45" target="50"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="44" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;" edge="1" parent="1" source="45" target="47"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="45" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="560" y="440" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="46" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.275;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="47" target="53"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="47" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="600" y="500" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="48" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.724;entryY=0.056;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="50" target="51"> - <mxGeometry relative="1" as="geometry"> - <mxPoint x="510" y="559.9999999999998" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="49" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.28;entryY=0.051;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="50" target="52"> - <mxGeometry relative="1" as="geometry"/> - </mxCell> - <mxCell id="50" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="520" y="500" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="51" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="480" y="560" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="52" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="560" y="560" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="53" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1"> - <mxGeometry x="640" y="560" width="40" height="40" as="geometry"/> - </mxCell> - <mxCell id="54" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="550" y="400" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="58" value="" style="shape=flexArrow;endArrow=classic;html=1;width=8.75;endSize=5.124999999999999;fillColor=default;entryX=0;entryY=0.524;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" target="42"> - <mxGeometry width="50" height="50" relative="1" as="geometry"> - <mxPoint x="400" y="220" as="sourcePoint"/> - <mxPoint x="470" y="470" as="targetPoint"/> - <Array as="points"> - <mxPoint x="400" y="510"/> - </Array> - </mxGeometry> - </mxCell> - <mxCell id="59" value="Copy" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="58"> - <mxGeometry x="-0.0625" y="4" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="37" value="" style="shape=flexArrow;endArrow=classic;html=1;width=8.75;endSize=5.124999999999999;fillColor=default;entryX=0;entryY=0.524;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" target="2"> - <mxGeometry width="50" height="50" relative="1" as="geometry"> - <mxPoint x="380" y="220" as="sourcePoint"/> - <mxPoint x="470" y="220" as="targetPoint"/> - </mxGeometry> - </mxCell> - <mxCell id="38" value="Copy" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="37"> - <mxGeometry x="-0.0625" y="4" relative="1" as="geometry"> - <mxPoint as="offset"/> - </mxGeometry> - </mxCell> - <mxCell id="66" value="Node1" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="360" y="50" width="60" height="30" as="geometry"/> - </mxCell> - <mxCell id="67" value="Node2(Replica)" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> - <mxGeometry x="550" y="360" width="60" height="30" as="geometry"/> - </mxCell> - </root> - </mxGraphModel> - </diagram> -</mxfile> \ No newline at end of file +<mxfile host="app.diagrams.net" modified="2024-01-30T09:23:58.703Z" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36" version="23.0.2" etag="vfmeqV9Lhd-g7L167kAf" type="device"> + <diagram id="kZjAbhT0E9gDD8kV_gd3" name="Page-1"> + <mxGraphModel dx="760" dy="507" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> + <root> + <mxCell id="0" /> + <mxCell id="1" parent="0" /> + <mxCell id="63" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;arcSize=30;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="450" y="382.5" width="260" height="245" as="geometry" /> + </mxCell> + <mxCell id="62" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;arcSize=30;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="70" y="80" width="640" height="270" as="geometry" /> + </mxCell> + <mxCell id="2" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="480" y="110" width="220" height="210" as="geometry" /> + </mxCell> + <mxCell id="3" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="80" y="110" width="300" height="210" as="geometry" /> + </mxCell> + <mxCell id="4" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="6" target="11" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="5" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="6" target="8" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="6" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="170" y="150" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="7" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.292;entryY=0.043;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="8" target="20" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="261" y="271" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="8" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=#FF8000;fontColor=#FF9933;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="210" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="9" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.722;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="11" target="12" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="120" y="270" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="10" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.27;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="11" target="13" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="11" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="130" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="12" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="90" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="13" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="170" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="14" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="16" target="11" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="15" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.025;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="16" target="18" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="16" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="250" y="150" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="17" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.303;entryY=0.036;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="18" target="19" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="342" y="271" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="18" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="290" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="19" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="330" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="20" value="F" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=#FF8000;fontColor=#FF9933;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="250" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="21" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="23" target="28" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="22" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="23" target="25" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="23" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="570" y="150" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="24" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.275;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="25" target="31" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="25" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="610" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="26" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.724;entryY=0.056;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="28" target="29" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="520" y="269.9999999999998" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="27" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.28;entryY=0.051;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="28" target="30" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="28" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="530" y="210" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="29" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="490" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="30" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="570" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="31" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="650" y="270" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="32" value="Old" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="160" y="110" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="33" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="240" y="110" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="36" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="560" y="110" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="39" value="" style="endArrow=none;html=1;fontColor=#FF9933;strokeColor=#FF8000;fontSize=14;" parent="1" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="160" y="334.7699999999999" as="sourcePoint" /> + <mxPoint x="205" y="334.7699999999999" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="40" value="" style="edgeStyle=none;html=1;strokeColor=#FF8000;fontSize=14;fontColor=#FF9933;endArrow=none;endFill=0;" parent="1" source="41" target="3" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="41" value="Garbage" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontColor=#FF9933;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="100" y="320" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="42" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=none;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="470" y="400" width="220" height="210" as="geometry" /> + </mxCell> + <mxCell id="43" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;entryX=0.675;entryY=0.025;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="45" target="50" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="44" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.325;entryY=0.05;entryDx=0;entryDy=0;endArrow=none;endFill=0;entryPerimeter=0;fontSize=14;" parent="1" source="45" target="47" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="45" value="A" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="560" y="440" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="46" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.275;entryY=0.042;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="47" target="53" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="47" value="E" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="600" y="500" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="48" style="edgeStyle=none;html=1;exitX=0;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;entryX=0.724;entryY=0.056;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" source="50" target="51" edge="1"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="510" y="559.9999999999998" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="49" style="edgeStyle=none;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=0.28;entryY=0.051;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;fontSize=14;" parent="1" source="50" target="52" edge="1"> + <mxGeometry relative="1" as="geometry" /> + </mxCell> + <mxCell id="50" value="B" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="520" y="500" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="51" value="C" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="480" y="560" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="52" value="D" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="560" y="560" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="53" value="G" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="640" y="560" width="40" height="40" as="geometry" /> + </mxCell> + <mxCell id="54" value="Latest" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="550" y="400" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="58" value="" style="shape=flexArrow;endArrow=classic;html=1;width=8.75;endSize=5.124999999999999;fillColor=default;entryX=0;entryY=0.524;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" target="42" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="400" y="220" as="sourcePoint" /> + <mxPoint x="470" y="470" as="targetPoint" /> + <Array as="points"> + <mxPoint x="400" y="510" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="59" value="Copy" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="58" vertex="1" connectable="0"> + <mxGeometry x="-0.0625" y="4" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="37" value="" style="shape=flexArrow;endArrow=classic;html=1;width=8.75;endSize=5.124999999999999;fillColor=default;entryX=0;entryY=0.524;entryDx=0;entryDy=0;entryPerimeter=0;fontSize=14;" parent="1" target="2" edge="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="380" y="220" as="sourcePoint" /> + <mxPoint x="470" y="220" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="38" value="Copy" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" parent="37" vertex="1" connectable="0"> + <mxGeometry x="-0.0625" y="4" relative="1" as="geometry"> + <mxPoint as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="66" value="Node1" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="360" y="50" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="67" value="Node2(Replica)" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" parent="1" vertex="1"> + <mxGeometry x="550" y="360" width="60" height="30" as="geometry" /> + </mxCell> + </root> + </mxGraphModel> + </diagram> +</mxfile>
--- a/Paper/master_paper.lol Tue Jan 30 15:40:33 2024 +0900 +++ b/Paper/master_paper.lol Tue Jan 30 19:51:40 2024 +0900 @@ -8,6 +8,6 @@ \contentsline {lstlisting}{\numberline {3.7}RedBlackTreeの実装の型定義}{16}{}% \contentsline {lstlisting}{\numberline {3.8}Nodeの型定義}{17}{}% \contentsline {lstlisting}{\numberline {3.9}ALLOCATEの定義}{18}{}% -\contentsline {lstlisting}{\numberline {5.1}実行するCodeGearの切り替えのコード}{29}{}% -\contentsline {lstlisting}{\numberline {6.1}Tree Interfaceの使用定義(Copy追加後)}{30}{}% -\contentsline {lstlisting}{\numberline {6.2}RedBlackTreeの実装の型定義(Copy追加後)}{30}{}% +\contentsline {lstlisting}{\numberline {5.1}実行するCodeGearの切り替えのコード}{28}{}% +\contentsline {lstlisting}{\numberline {6.1}Tree Interfaceの使用定義(Copy追加後)}{32}{}% +\contentsline {lstlisting}{\numberline {6.2}RedBlackTreeの実装の型定義(Copy追加後)}{32}{}%
--- a/Paper/master_paper.tex Tue Jan 30 15:40:33 2024 +0900 +++ b/Paper/master_paper.tex Tue Jan 30 19:51:40 2024 +0900 @@ -415,9 +415,16 @@ \section{ALLOCATE} -DataGearをアロケートする際は図\ref{src:SingleLinkedQueue.cbc}の15行目にあるように, +DataGearを用意する際は図\ref{src:SingleLinkedQueue.cbc}の15行目にあるように, \texttt{singleLinkedQueue->top = new Element();}のような形でnewキーワードを用いる. - +これはビルド時に生成されるALLOCATEマクロに変換される. +図\ref{src:allocate.h}はALLOCATEマクロの例である. +ALLOCATEマクロはContext(context)と用意したいDataGearの型名(t)を渡す. +contextは\texttt{context->heap}で示されるヒープ領域を持っており, +この領域にDataGearを保持する. +6行目でDataGearのサイズ分のメモリ領域をヒープ上に確保していることがわかる. +なお,ALLOCATEマクロを直接呼ばずにnewキーワードで記述するのは, +ノーマルレベルからmetaDataGearに当たるContextを直接参照しないようにするためである. \lstinputlisting[label=src:allocate.h, caption=ALLOCATEの定義]{src/allocate.h} @@ -672,7 +679,7 @@ \begin{figure}[ht] \begin{center} - \includegraphics[width=160mm]{fig/rbtree_gc.png} + \includegraphics[width=160mm]{fig/rbtree_gc.pdf} \end{center} \caption{RedBlackTReeのCopyによるGC} \label{fig:TreeCopyGC} @@ -716,9 +723,9 @@ \begin{figure}[ht] \begin{center} - \includegraphics[width=160mm]{fig/rbtree_replica.png} + \includegraphics[width=160mm]{fig/rbtree_replica.pdf} \end{center} - \caption{GearsFileSystemのレプリケーションの基本設計} + \caption{GearsFileSystemのレプリケーションの考え方} \label{fig:RBTreeReplica} \end{figure} @@ -734,9 +741,21 @@ 既存のDBにおけるレプリケーション手法は同期のタイミングやレプリカの作成単位によっていくつか種類がある. -\section{コピー実行のタイミング} +\section{} + +TODO: Contextを含めたコピーの説 + +\ref{fig:CopyContext} -TODO: ここはContextレベルに書き直す +\begin{figure}[ht] + \begin{center} + \includegraphics[width=160mm]{fig/copy_context.png} + \end{center} + \caption{別Contextへのコピー} + \label{fig:CopyContext} +\end{figure} + +\section{コピー実行のタイミング} GCやレプリケーション,バックアップはそれを実行するタイミングが重要である. GCはメモリの使用状況に応じて実行される. @@ -750,7 +769,7 @@ \begin{figure}[ht] \begin{center} - \includegraphics[width=160mm]{fig/timing.png} + \includegraphics[width=160mm]{fig/timing.pdf} \end{center} \caption{GC実行処理の挿入} \label{fig:GCTiming} @@ -774,6 +793,7 @@ しかし,GCは本来行いたい処理ではなくメタレベルの処理である. そのため,GCへの切り替えにおいてソースコード\ref{src:isEmpty.cbc}のようなコードを記述すると, ノーマルレベルとメタレベルが混在するCodeGearとなってしまう問題がある. +これは,GC処理を自動的に @@ -826,7 +846,7 @@ \begin{figure}[ht] \begin{center} - \includegraphics[width=150mm]{fig/copy_algo4.png} + \includegraphics[width=150mm]{fig/copy_algo4.pdf} \end{center} \caption{コピー元のTreeと2つのStackの状態の例} \label{fig:TreeAndStack} @@ -847,7 +867,7 @@ \begin{figure}[ht] \begin{center} - \includegraphics[width=160mm]{fig/copy_algo3.png} + \includegraphics[width=160mm]{fig/copy_algo3.pdf} \end{center} \caption{Copy時のCodeGearの大まかな遷移} \label{fig:CopyCGTransition} @@ -864,6 +884,21 @@ また,今後の課題や議題として次のようなものが挙げられる. +\section{別ContextへのALLOCATION} + +今回構築したcopyRedBlackTreeでは,木を同じContext上のヒープ領域にコピーする. +しかし,別ノードへのコピーを実現するには別Contextへコピーを行う必要がある. +現状は,ビルド時にメインのContextとALLOCATIONのマクロを生成するため, +別のContextを指定することができない. +そのため,ALLOCATIONに別Contextを操作するための機能を導入する必要があると考える. + +\section{テストケースの生成} + +\texttt{tree->copy}のAPIを実装する際は, +想定した動作をするか確認するために木を生成するコードを書いた. +C言語で + + \section{ファイルシステムにおけるスキーマ} 従来のRDBのようなスキーマが存在すると, @@ -923,8 +958,6 @@ スタンドアロンなDBの形にするか, その他の方法でポータビリティを向上させる手法を考えたい. -\section{GCタイミングに必要な処理の自動挿入} - % %謝辞
--- a/TODO.md Tue Jan 30 15:40:33 2024 +0900 +++ b/TODO.md Tue Jan 30 19:51:40 2024 +0900 @@ -11,10 +11,12 @@ - [x] stackの説明ある?(Nodeを積むよという話) - [x] RedBlackTree構造の説明間違っているので修正 -- [ ] 一度通して見直し(2024/01/30) -- [ ] ALLOCの説明 +- [x] ALLOCの説明 +- [x] 一度通して見直し(2024/01/30) + - [ ] DGMによる分散ファイルシステム - [ ] 別Contextへの書き込み +- [ ] Copy時の一貫性 - [ ] 実装の説明 - [ ] 評価 - [ ] まとめ
--- a/mindmaps/gears_fs_db.mm Tue Jan 30 15:40:33 2024 +0900 +++ b/mindmaps/gears_fs_db.mm Tue Jan 30 19:51:40 2024 +0900 @@ -68,7 +68,7 @@ </stylenode> </map_styles> </hook> -<node TEXT="Gears OS" POSITION="right" ID="ID_1060626979" CREATED="1699848393025" MODIFIED="1702111913149" HGAP_QUANTITY="-5.5 pt" VSHIFT_QUANTITY="-72.75 pt"> +<node TEXT="Gears OS" FOLDED="true" POSITION="right" ID="ID_1060626979" CREATED="1699848393025" MODIFIED="1702111913149" HGAP_QUANTITY="-5.5 pt" VSHIFT_QUANTITY="-72.75 pt"> <node TEXT="特徴" ID="ID_943482341" CREATED="1702111230723" MODIFIED="1702111233987"> <node TEXT="metaGear" ID="ID_160728835" CREATED="1702111234234" MODIFIED="1702111815711"> <node TEXT="データの整合性" ID="ID_1532293232" CREATED="1702111816103" MODIFIED="1702111830986"/> @@ -283,7 +283,7 @@ </node> <node TEXT="向上手法をシステム全体に適用したい" ID="ID_829551002" CREATED="1699850006058" MODIFIED="1699850017727"/> </node> -<node TEXT="RedBlackTree" POSITION="right" ID="ID_858040690" CREATED="1699848437129" MODIFIED="1699848446060"> +<node TEXT="RedBlackTree" FOLDED="true" POSITION="right" ID="ID_858040690" CREATED="1699848437129" MODIFIED="1699848446060"> <node TEXT="Copy" ID="ID_76598812" CREATED="1699848476363" MODIFIED="1699848479936"> <node TEXT="単なる2分木のコピー" ID="ID_1535596989" CREATED="1699849455588" MODIFIED="1699849469353"/> <node TEXT="Stack無しで書くとおそらく結構複雑" ID="ID_527329681" CREATED="1699849470075" MODIFIED="1699857892247"/> @@ -320,7 +320,21 @@ </node> <node TEXT="Copyによってreplicationの作成が可能になる" ID="ID_572465203" CREATED="1701690510698" MODIFIED="1701690536500"/> <node TEXT="ALLOCATE" ID="ID_1376691662" CREATED="1706594900483" MODIFIED="1706594903677"> -<node TEXT="" ID="ID_530570235" CREATED="1706594904365" MODIFIED="1706594904365"/> +<node TEXT="newキーワード" ID="ID_530570235" CREATED="1706594904365" MODIFIED="1706595448461"> +<node TEXT="ビルド時にALLOCATEマクロに変換される" ID="ID_623043043" CREATED="1706595552557" MODIFIED="1706595577359"/> +<node TEXT="ノーマルレベルでDataGearをアロケートするための記法" ID="ID_362901607" CREATED="1706596365202" MODIFIED="1706596395063"> +<node TEXT="Contextを直接操作しないため" ID="ID_1055024443" CREATED="1706596414453" MODIFIED="1706596425766"/> +</node> +</node> +<node TEXT="ALLOCATEマクロ" ID="ID_346737816" CREATED="1706595448876" MODIFIED="1706595584544"> +<node TEXT="ContextのDataGearを格納するヒープ領域の操作を行う" ID="ID_1958985951" CREATED="1706595584911" MODIFIED="1706595611261"/> +<node TEXT="context" ID="ID_438391456" CREATED="1706595611804" MODIFIED="1706595614332"> +<node TEXT="対象のコンテキスト" ID="ID_1413190219" CREATED="1706595614591" MODIFIED="1706595621981"/> +</node> +<node TEXT="t" ID="ID_1020756504" CREATED="1706595623941" MODIFIED="1706595625229"> +<node TEXT="対象のDataGear" ID="ID_1121535546" CREATED="1706595625594" MODIFIED="1706595632821"/> +</node> +</node> </node> </node> <node TEXT="incrementalなTreeのcopy" ID="ID_1492567121" CREATED="1699869669939" MODIFIED="1699869692257"> @@ -402,6 +416,23 @@ </node> </node> <node TEXT="評価方法" POSITION="right" ID="ID_1979397312" CREATED="1699850131177" MODIFIED="1699850137060"/> +<node TEXT="erasure coding" POSITION="right" ID="ID_1412038732" CREATED="1706607173301" MODIFIED="1706607177606"/> +<node TEXT="別ContextへのCopy" POSITION="right" ID="ID_1256969896" CREATED="1706608691732" MODIFIED="1706610433076"> +<node TEXT="新たにヒープ領域を確保することによりコンパクションされる" ID="ID_1570751579" CREATED="1706610433391" MODIFIED="1706610495922"> +<node TEXT="少なくとも論理的には" ID="ID_1203172749" CREATED="1706610530004" MODIFIED="1706610535897"/> +</node> +<node TEXT="別ノードにコピーすることが可能になる" ID="ID_18132759" CREATED="1706610497553" MODIFIED="1706610550820"> +<node TEXT="別ノードは別のContextを持っているため" ID="ID_261769933" CREATED="1706610552438" MODIFIED="1706610561888"/> +</node> +<node TEXT="Contextキュー" ID="ID_441803002" CREATED="1706610609324" MODIFIED="1706610615562"/> +<node TEXT="無尽蔵に大きくなるデータ" ID="ID_371220284" CREATED="1706610724283" MODIFIED="1706610735719"> +<node TEXT="ある地点で分離可能であるように区切る必要がある" ID="ID_31321201" CREATED="1706610736028" MODIFIED="1706610750038"/> +<node TEXT="仮想的に別ContextのData tableを用意" ID="ID_517308151" CREATED="1706610750494" MODIFIED="1706610780803"> +<node TEXT="Data table同士を接続してデータを持続させる" ID="ID_109885431" CREATED="1706610791990" MODIFIED="1706610969823"/> +</node> +</node> +<node TEXT="ディスクへの書き込み" ID="ID_1313978495" CREATED="1706611103173" MODIFIED="1706611107617"/> +</node> <node TEXT="章立て" POSITION="left" ID="ID_378600647" CREATED="1699848424709" MODIFIED="1706520588455" HGAP_QUANTITY="8 pt" VSHIFT_QUANTITY="-117 pt"> <node TEXT="要旨" FOLDED="true" ID="ID_1862870052" CREATED="1705571598152" MODIFIED="1705571620770"> <node TEXT="CbCでGearsOSを開発している" ID="ID_1596447160" CREATED="1705571621398" MODIFIED="1705571639432"/>