refactor: 문서 개선 중

This commit is contained in:
donghyeon-ka
2026-09-21 14:30:55 +09:00
parent c93cdea150
commit 805a18f486
1497 changed files with 525837 additions and 59152 deletions
@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="app.diagrams.net" modified="2026-07-23T00:00:00.000Z" agent="techviz-harness" version="24.7.17" type="device">
<diagram id="qemu-block-backend-forms" name="virtqueue 뒤 QEMU block backend의 세 형태">
<mxGraphModel dx="1253" dy="564" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1253" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="n_vda" value="/dev/vda" tooltip="Guest가 보는 virtual disk. | Evidence: L6355-L6363" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;shape=cylinder3;boundedLbl=1;backgroundOutline=1;fillColor=#eef6fb;" vertex="1" parent="1">
<mxGeometry x="70.0" y="257.5" width="150.0" height="64.0" as="geometry"/>
</mxCell>
<mxCell id="n_virtio-queue" value="virtio-blk · virtqueue&lt;br/&gt;Guest&lt;br/&gt;VM boundary 직전" tooltip="Guest /dev/vda 요청을 virtio-blk가 받아 virtqueue에 싣는 경로를 한 노드로 묶었다. | Evidence: L6355-L6364" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;" vertex="1" parent="1">
<mxGeometry x="380.0" y="245.5" width="188.0" height="88.0" as="geometry"/>
</mxCell>
<mxCell id="n_backend" value="QEMU block backend" tooltip="Guest virtual I/O를 실제 Host backend에 연결한다. | Evidence: L6367-L6387" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;strokeColor=#2563eb;strokeWidth=2;" vertex="1" parent="1">
<mxGeometry x="728.0" y="257.5" width="160.0" height="64.0" as="geometry"/>
</mxCell>
<mxCell id="n_block-device" value="Host block device&lt;br/&gt;/dev/...&lt;br/&gt;file 없음&lt;br/&gt;→ Host block stack" tooltip="QEMU가 Host block device를 직접 backend로 사용할 수 있는 형태. | Evidence: L6551-L6575" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;shape=cylinder3;boundedLbl=1;backgroundOutline=1;fillColor=#eef6fb;" vertex="1" parent="1">
<mxGeometry x="1048.0" y="60.0" width="160.0" height="105.0" as="geometry"/>
</mxCell>
<mxCell id="n_qcow2" value="qcow2 file&lt;br/&gt;file backend&lt;br/&gt;mapping · metadata&lt;br/&gt;→ Host filesystem" tooltip="sparse/COW 기능을 가진 file backend. | Evidence: L6419-L6460, L6512-L6547" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;shape=cylinder3;boundedLbl=1;backgroundOutline=1;fillColor=#eef6fb;" vertex="1" parent="1">
<mxGeometry x="1048.0" y="237.0" width="160.0" height="105.0" as="geometry"/>
</mxCell>
<mxCell id="n_raw" value="RAW file&lt;br/&gt;file backend&lt;br/&gt;offset 대응&lt;br/&gt;→ Host filesystem" tooltip="상대적으로 단순한 offset 대응을 쓰는 file backend. | Evidence: L6512-L6547" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;shape=cylinder3;boundedLbl=1;backgroundOutline=1;fillColor=#eef6fb;" vertex="1" parent="1">
<mxGeometry x="1051.5" y="414.0" width="153.0" height="105.0" as="geometry"/>
</mxCell>
<mxCell id="e_backend-block" value="block-device backend" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=2;endArrow=block;endFill=1;" edge="1" parent="1" source="n_backend" target="n_block-device">
<mxGeometry relative="1" as="geometry">
<mxPoint x="992.0" y="192.0" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="e_backend-qcow2" value="qcow2 backend" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=2;endArrow=block;endFill=1;" edge="1" parent="1" source="n_backend" target="n_qcow2">
<mxGeometry relative="1" as="geometry">
<mxPoint x="968.0" y="261.5" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="e_backend-raw" value="RAW backend" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=2;endArrow=block;endFill=1;" edge="1" parent="1" source="n_backend" target="n_raw">
<mxGeometry relative="1" as="geometry">
<mxPoint x="993.8" y="387.0" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="e_vda-virtio" value="block I/O" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=2;endArrow=block;endFill=1;" edge="1" parent="1" source="n_vda" target="n_virtio-queue">
<mxGeometry relative="1" as="geometry">
<mxPoint x="300.0" y="261.5" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="e_vq-backend" value="VM boundary" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=2;endArrow=block;endFill=1;" edge="1" parent="1" source="n_virtio-queue" target="n_backend">
<mxGeometry relative="1" as="geometry">
<mxPoint x="648.0" y="261.5" as="offset"/>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>