This commit is contained in:
Costa Shulyupin 2021-12-21 16:32:54 +02:00
parent 111d0b6b9d
commit d83b6dd111
1 changed files with 48 additions and 62 deletions

View File

@ -19,7 +19,7 @@ digraph matrix {
weight=10, weight=10,
style="filled,setlinewidth(5)" style="filled,setlinewidth(5)"
]; ];
{ subgraph system {
node [color="#e27dd6ff"]; node [color="#e27dd6ff"];
system_ [color="#e27dd6ff", system_ [color="#e27dd6ff",
fixedsize=true, fixedsize=true,
@ -67,15 +67,15 @@ digraph matrix {
fillcolor="#71809b", fillcolor="#71809b",
label="bus drivers"]; label="bus drivers"];
log_sys -> bus_drv [color="#e27dd6ff"]; log_sys -> bus_drv [color="#e27dd6ff"];
H2 [color="#e27dd6ff", buses [color="#e27dd6ff",
fillcolor="#777777", fillcolor="#777777",
fontcolor=white, fontcolor=white,
fontsize=20, fontsize=20,
label="busess:\nPCI, USB ...", label="buses:\nPCI, USB ...",
row=chip]; row=chip];
bus_drv -> H2 [color="#e27dd6ff"]; bus_drv -> buses [color="#e27dd6ff"];
} }
{ subgraph networking {
node [color="#61c2c5"]; node [color="#61c2c5"];
edge [color="#61c2c5"]; edge [color="#61c2c5"];
networking_ [color="#61c2c5", networking_ [color="#61c2c5",
@ -131,7 +131,7 @@ digraph matrix {
NFS -> log_prot [color="#61c2c5", NFS -> log_prot [color="#61c2c5",
weight=0]; weight=0];
} }
{ subgraph storage {
node [color="#8383cc"]; node [color="#8383cc"];
edge [color="#8383cc"]; edge [color="#8383cc"];
NFS; NFS;
@ -176,8 +176,8 @@ digraph matrix {
label="page\ncache", label="page\ncache",
shape=octagon, shape=octagon,
width=1.2]; width=1.2];
VFS -> PC [color="#8383cc", PC -> PA [color="#51bf5b", weight=0];
weight=0]; VFS -> PC [color="#8383cc", weight=0];
mmap [color="#51bf5b", mmap [color="#51bf5b",
fillcolor="#91b5c9", fillcolor="#91b5c9",
fixedsize=true, fixedsize=true,
@ -196,15 +196,13 @@ digraph matrix {
PA [color="#51bf5b", PA [color="#51bf5b",
fillcolor="#71809b", fillcolor="#71809b",
label="Page\nAllocator"]; label="Page\nAllocator"];
PC -> PA [color="#51bf5b", SD [color="#8383cc",
weight=0];
H4 [color="#8383cc",
fillcolor="#777777", fillcolor="#777777",
fontcolor=white, fontcolor=white,
fontsize=20, fontsize=20,
label="storage devices:\nSCSI, NVMe ...", label="storage devices:\nSCSI, NVMe ...",
row=chip]; row=chip];
block -> H4 [color="#8383cc"]; block -> SD [color="#8383cc"];
SW [color="#8383cc", SW [color="#8383cc",
fillcolor="#91b5c9", fillcolor="#91b5c9",
fixedsize=true, fixedsize=true,
@ -214,8 +212,8 @@ digraph matrix {
width=1.2]; width=1.2];
SW -> block [color="#8383cc", SW -> block [color="#8383cc",
weight=0]; weight=0];
} } // storge
{ subgraph processing {
node [color="#c46747"]; node [color="#c46747"];
edge [color="#c46747"]; edge [color="#c46747"];
processing_ [color="#c46747", processing_ [color="#c46747",
@ -268,8 +266,8 @@ digraph matrix {
fontsize=20, fontsize=20,
row=chip]; row=chip];
IRQ -> CPU [color="#c46747"]; IRQ -> CPU [color="#c46747"];
} } // processing
{ subgraph HI {
node [color="#cfbf57ff", node [color="#cfbf57ff",
]; ];
@ -315,15 +313,15 @@ digraph matrix {
label="HI\nperipherals\ndrivers"]; label="HI\nperipherals\ndrivers"];
F7 -> HID [color="#cfbf57ff" F7 -> HID [color="#cfbf57ff"
]; ];
H7 [color="#cfbf57ff", display [color="#cfbf57ff",
fillcolor="#777777", fillcolor="#777777",
fontcolor=white, fontcolor=white,
fontsize=20, fontsize=19,
label="display, keyboard,\nmouse, audio", label="keyboard, mouse,\ndisplay, audio",
row=chip]; row=chip];
HID -> H7 [color="#cfbf57ff" ]; HID -> display [color="#cfbf57ff" ];
} } // HI
{ subgraph functions {
graph [rank=same]; graph [rank=same];
edge [style=invis, edge [style=invis,
weight=1 weight=1
@ -365,7 +363,7 @@ digraph matrix {
style="", style="",
weight=""]; weight=""];
} }
{ subgraph interfaces {
graph [rank=same]; graph [rank=same];
SCI; SCI;
sock; sock;
@ -391,9 +389,7 @@ digraph matrix {
shape=ellipse]; shape=ellipse];
} }
{ {
edge [style=invis, edge [style=invis weight=10 ];
weight=10
];
system_; system_;
SCI; SCI;
system_ -> SCI; system_ -> SCI;
@ -417,7 +413,7 @@ digraph matrix {
width=0]; width=0];
memory_ -> MA; memory_ -> MA;
} }
{ subgraph virtual {
graph [rank=same]; graph [rank=same];
sysfs; sysfs;
prot_fam; prot_fam;
@ -438,8 +434,13 @@ digraph matrix {
fillcolor="#b2d3e4", fillcolor="#b2d3e4",
label="Virtual\nmemory"]; label="Virtual\nmemory"];
} }
{ subgraph bridges {
graph [rank=same]; graph [rank=same];
bridges [fillcolor="#91b5c9",
shape=octagon,
tooltip="bridges between uniform virtual interfaces and various implementations",
URL="https://en.wikipedia.org/wiki/Bridge_pattern",
style="filled,setlinewidth(0)"];
DM; DM;
NFS; NFS;
mmap; mmap;
@ -449,13 +450,8 @@ digraph matrix {
shape=point, shape=point,
style=invis, style=invis,
width=0]; width=0];
bridges [fillcolor="#91b5c9",
shape=octagon,
tooltip="bridges between uniform virtual interfaces and various implementations",
URL="https://en.wikipedia.org/wiki/Bridge_pattern",
style="filled,setlinewidth(0)"];
} }
{ subgraph logical {
graph [rank=same]; graph [rank=same];
log_sys; log_sys;
log_prot; log_prot;
@ -473,8 +469,11 @@ digraph matrix {
fillcolor="#6a9ab1", fillcolor="#6a9ab1",
label="logical\nmemory"]; label="logical\nmemory"];
} }
{ subgraph HWI {
graph [rank=same]; graph [rank=same];
HWI [fillcolor="#71809b",
label="hardware\ninterfaces",
style="filled,setlinewidth(0)"];
bus_drv; bus_drv;
netif; netif;
block; block;
@ -486,28 +485,25 @@ digraph matrix {
shape=point, shape=point,
style=invis, style=invis,
width=0]; width=0];
HWI [fillcolor="#71809b",
label="hardware\ninterfaces",
style="filled,setlinewidth(0)"];
} }
{ subgraph HW {
graph [rank=same]; graph [rank=same];
H2;
net_hw;
H4;
CPU;
H7;
H0 [fixedsize=true,
height=0,
shape=point,
style=invis,
width=0];
HW [fillcolor="#777777", HW [fillcolor="#777777",
fontcolor=white, fontcolor=white,
label="electronics,\nhardware", label="electronics,\nhardware",
row=chip, row=chip,
style="filled,setlinewidth(0)"]; style="filled,setlinewidth(0)"];
H5 [color="#51bf5b", buses;
net_hw;
SD;
CPU;
display;
H0 [fixedsize=true,
height=0,
shape=point,
style=invis,
width=0];
RAM [color="#51bf5b",
fillcolor="#777777", fillcolor="#777777",
fontcolor=white, fontcolor=white,
fontsize=20, fontsize=20,
@ -519,28 +515,18 @@ digraph matrix {
height=0.5 height=0.5
]; ];
edge [color="#51bf5b"]; edge [color="#51bf5b"];
PC;
mmap;
SW;
mmap -> SW [color="#51bf5b", mmap -> SW [color="#51bf5b",
weight=0]; weight=0];
log_mem;
mmap -> log_mem [color="#51bf5b"]; mmap -> log_mem [color="#51bf5b"];
PA; PA -> RAM [color="#51bf5b"];
H5;
PA -> H5 [color="#51bf5b"];
memory;
memory_;
memory -> memory_ [arrowhead="", memory -> memory_ [arrowhead="",
color="#51bf5b", color="#51bf5b",
row=func]; row=func];
MA;
VM;
MA -> VM [color="#51bf5b"]; MA -> VM [color="#51bf5b"];
VM -> mmap [color="#51bf5b"]; VM -> mmap [color="#51bf5b"];
log_mem -> PA [color="#51bf5b"]; log_mem -> PA [color="#51bf5b"];
} }
bottom [label="© 2007-2020 Constantine Shulyupin http://www.MakeLinux.net/kernel/diagram", bottom [label="© 2007-2021 Constantine Shulyupin http://www.MakeLinux.net/kernel/diagram",
shape=plaintext, shape=plaintext,
style=""]; style=""];
H4 -> bottom [style=invis]; H4 -> bottom [style=invis];