1<?xml version="1.0" encoding="UTF-8" standalone="no"?> 2<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 3 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> 4<!-- Generated by graphviz version 2.43.0 (0) 5 --> 6<!-- Title: %3 Pages: 1 --> 7<svg width="268pt" height="567pt" 8 viewBox="0.00 0.00 267.50 567.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> 9<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 563)"> 10<title>%3</title> 11<polygon fill="white" stroke="transparent" points="-4,4 -4,-563 263.5,-563 263.5,4 -4,4"/> 12<g id="clust1" class="cluster"> 13<title>cluster_android</title> 14<polygon fill="none" stroke="black" points="69.5,-8 69.5,-155 185.5,-155 185.5,-8 69.5,-8"/> 15<text text-anchor="middle" x="127.5" y="-139.8" font-family="Times,serif" font-size="14.00">Android VM</text> 16</g> 17<!-- console_forwarder --> 18<g id="node1" class="node"> 19<title>console_forwarder</title> 20<ellipse fill="none" stroke="black" stroke-width="2" cx="127.5" cy="-325" rx="86.38" ry="18"/> 21<text text-anchor="start" x="69" y="-322.3" font-family="Times,serif" font-size="14.00"> </text> 22<text text-anchor="start" x="73" y="-322.3" font-family="Times,serif" font-weight="bold" font-size="14.00">console_forwarder</text> 23<text text-anchor="start" x="182" y="-322.3" font-family="Times,serif" font-size="14.00"> </text> 24</g> 25<!-- host_console_in --> 26<g id="node2" class="node"> 27<title>host_console_in</title> 28<polygon fill="none" stroke="black" points="117,-271 0,-271 0,-235 117,-235 117,-271"/> 29<text text-anchor="middle" x="58.5" y="-249.3" font-family="Times,serif" font-size="14.00">internal/console.in</text> 30</g> 31<!-- console_forwarder->host_console_in --> 32<g id="edge7" class="edge"> 33<title>console_forwarder->host_console_in</title> 34<path fill="none" stroke="black" d="M110.8,-307.05C102.36,-298.5 91.97,-287.96 82.68,-278.54"/> 35<polygon fill="black" stroke="black" points="85.04,-275.94 75.53,-271.28 80.06,-280.85 85.04,-275.94"/> 36</g> 37<!-- host_console_out --> 38<g id="node3" class="node"> 39<title>host_console_out</title> 40<polygon fill="none" stroke="black" points="259.5,-271 135.5,-271 135.5,-235 259.5,-235 259.5,-271"/> 41<text text-anchor="middle" x="197.5" y="-249.3" font-family="Times,serif" font-size="14.00">internal/console.out</text> 42</g> 43<!-- console_forwarder->host_console_out --> 44<g id="edge5" class="edge"> 45<title>console_forwarder->host_console_out</title> 46<path fill="none" stroke="black" d="M151.67,-299.83C161.07,-290.43 171.62,-279.88 180.22,-271.28"/> 47<polygon fill="black" stroke="black" points="149.04,-297.51 144.45,-307.05 153.99,-302.46 149.04,-297.51"/> 48</g> 49<!-- vmm --> 50<g id="node8" class="node"> 51<title>vmm</title> 52<ellipse fill="none" stroke="black" cx="127.5" cy="-181" rx="64.19" ry="18"/> 53<text text-anchor="middle" x="127.5" y="-177.3" font-family="Times,serif" font-size="14.00">crosvm / qemu</text> 54</g> 55<!-- host_console_in->vmm --> 56<g id="edge8" class="edge"> 57<title>host_console_in->vmm</title> 58<path fill="none" stroke="black" d="M75.56,-234.7C84.12,-226.01 94.63,-215.34 103.95,-205.89"/> 59<polygon fill="black" stroke="black" points="106.59,-208.2 111.12,-198.62 101.6,-203.29 106.59,-208.2"/> 60</g> 61<!-- host_console_out->vmm --> 62<g id="edge6" class="edge"> 63<title>host_console_out->vmm</title> 64<path fill="none" stroke="black" d="M172.87,-227.37C163.35,-217.85 152.71,-207.21 144.12,-198.62"/> 65<polygon fill="black" stroke="black" points="170.65,-230.1 180.2,-234.7 175.6,-225.15 170.65,-230.1"/> 66</g> 67<!-- host_pty --> 68<g id="node4" class="node"> 69<title>host_pty</title> 70<polygon fill="none" stroke="black" points="120,-415 35,-415 35,-379 120,-379 120,-415"/> 71<text text-anchor="middle" x="77.5" y="-393.3" font-family="Times,serif" font-size="14.00">/dev/pty/###</text> 72</g> 73<!-- host_pty->console_forwarder --> 74<g id="edge4" class="edge"> 75<title>host_pty->console_forwarder</title> 76<path fill="none" stroke="black" d="M95.81,-370.36C100.17,-364.26 104.82,-357.75 109.18,-351.65"/> 77<polygon fill="black" stroke="black" points="92.82,-368.52 89.86,-378.7 98.52,-372.59 92.82,-368.52"/> 78<polygon fill="black" stroke="black" points="112.32,-353.28 115.28,-343.1 106.62,-349.21 112.32,-353.28"/> 79</g> 80<!-- run_cvd --> 81<g id="node5" class="node"> 82<title>run_cvd</title> 83<ellipse fill="none" stroke="black" cx="177.5" cy="-397" rx="39.79" ry="18"/> 84<text text-anchor="middle" x="177.5" y="-393.3" font-family="Times,serif" font-size="14.00">run_cvd</text> 85</g> 86<!-- run_cvd->console_forwarder --> 87<g id="edge1" class="edge"> 88<title>run_cvd->console_forwarder</title> 89<path fill="none" stroke="black" d="M165.9,-379.76C159.9,-371.35 152.42,-360.89 145.67,-351.44"/> 90<polygon fill="black" stroke="black" points="148.39,-349.23 139.73,-343.12 142.7,-353.3 148.39,-349.23"/> 91</g> 92<!-- screen --> 93<g id="node6" class="node"> 94<title>screen</title> 95<ellipse fill="none" stroke="black" cx="77.5" cy="-469" rx="33.29" ry="18"/> 96<text text-anchor="middle" x="77.5" y="-465.3" font-family="Times,serif" font-size="14.00">screen</text> 97</g> 98<!-- screen->host_pty --> 99<g id="edge3" class="edge"> 100<title>screen->host_pty</title> 101<path fill="none" stroke="black" d="M77.5,-440.67C77.5,-435.69 77.5,-430.49 77.5,-425.51"/> 102<polygon fill="black" stroke="black" points="74,-440.7 77.5,-450.7 81,-440.7 74,-440.7"/> 103<polygon fill="black" stroke="black" points="81,-425.1 77.5,-415.1 74,-425.1 81,-425.1"/> 104</g> 105<!-- user --> 106<g id="node7" class="node"> 107<title>user</title> 108<ellipse fill="none" stroke="black" cx="77.5" cy="-541" rx="44.39" ry="18"/> 109<text text-anchor="middle" x="77.5" y="-537.3" font-family="Times,serif" font-size="14.00">User CLI</text> 110</g> 111<!-- user->screen --> 112<g id="edge2" class="edge"> 113<title>user->screen</title> 114<path fill="none" stroke="black" d="M77.5,-522.7C77.5,-514.98 77.5,-505.71 77.5,-497.11"/> 115<polygon fill="black" stroke="black" points="81,-497.1 77.5,-487.1 74,-497.1 81,-497.1"/> 116</g> 117<!-- vm_console --> 118<g id="node9" class="node"> 119<title>vm_console</title> 120<polygon fill="none" stroke="black" points="163.5,-124 91.5,-124 91.5,-88 163.5,-88 163.5,-124"/> 121<text text-anchor="middle" x="127.5" y="-102.3" font-family="Times,serif" font-size="14.00">/dev/ttyS0</text> 122</g> 123<!-- vmm->vm_console --> 124<g id="edge9" class="edge"> 125<title>vmm->vm_console</title> 126<path fill="none" stroke="black" d="M127.5,-152.49C127.5,-146.55 127.5,-140.27 127.5,-134.33"/> 127<polygon fill="black" stroke="black" points="124,-152.7 127.5,-162.7 131,-152.7 124,-152.7"/> 128<polygon fill="black" stroke="black" points="131,-134.18 127.5,-124.18 124,-134.18 131,-134.18"/> 129</g> 130<!-- shell --> 131<g id="node10" class="node"> 132<title>shell</title> 133<ellipse fill="none" stroke="black" cx="127.5" cy="-34" rx="50.09" ry="18"/> 134<text text-anchor="middle" x="127.5" y="-30.3" font-family="Times,serif" font-size="14.00">toybox / sh</text> 135</g> 136<!-- vm_console->shell --> 137<g id="edge10" class="edge"> 138<title>vm_console->shell</title> 139<path fill="none" stroke="black" d="M127.5,-77.67C127.5,-72.69 127.5,-67.49 127.5,-62.51"/> 140<polygon fill="black" stroke="black" points="124,-77.7 127.5,-87.7 131,-77.7 124,-77.7"/> 141<polygon fill="black" stroke="black" points="131,-62.1 127.5,-52.1 124,-62.1 131,-62.1"/> 142</g> 143</g> 144</svg> 145