blob: 42c1e2c2cff5c0bd3a61f29c4e16f6a87c5dfdd2 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!-- Do not edit this file with editors other than diagrams.net -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="969px" height="174px" viewBox="-0.5 -0.5 969 174" content="&lt;mxfile host=&quot;Electron&quot; modified=&quot;2021-11-15T10:32:51.258Z&quot; agent=&quot;5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/15.7.3 Chrome/91.0.4472.164 Electron/13.6.1 Safari/537.36&quot; etag=&quot;s0sJyFyO8vm2RvDcSVRr&quot; version=&quot;15.7.3&quot; type=&quot;device&quot; pages=&quot;10&quot;&gt;&lt;diagram name=&quot;Page-1&quot; id=&quot;Page-1&quot;&gt;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&lt;/diagram&gt;&lt;diagram name=&quot;Page-2&quot; id=&quot;Page-2&quot;&gt;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&lt;/diagram&gt;&lt;diagram name=&quot;Generation and Compilation&quot; id=&quot;exu5nDOwPNsS-1o7_T8F&quot;&gt;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&lt;/diagram&gt;&lt;diagram name=&quot;Binary - Intermediate 1&quot; id=&quot;82nTh_K6cSc6jdaV63IV&quot;&gt;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&lt;/diagram&gt;&lt;diagram name=&quot;Binary - Intermediate 2&quot; id=&quot;Kr30LreMGFj5Nu7hcQJr&quot;&gt;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&lt;/diagram&gt;&lt;diagram name=&quot;Binary - Final&quot; id=&quot;4_DaHoipRD9ubsSO98u2&quot;&gt;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&lt;/diagram&gt;&lt;diagram name=&quot;Device handles&quot; id=&quot;8lbhWPVE4YV11fLJGD-d&quot;&gt;7VpZU+JKFP41Vs08SKWz55FVZUBRZERepkLSJD0k6dgkbL/+ns4CgaDjhvc6V6yS9Nfr6f6+c44dT6S6vzxjZuh2qY29E1GwlydS40QUkWio8MWRVY4IGeIwYmfYFuiTNc5AIUNjYuPZTsOIUi8i4S5o0SDAVrSDmYzRxW6zCfV2Zw1NB5eAvmV6ZfSO2JGboroibPFzTBw3nxkJWY1v5o0zYOaaNl0UIKl5ItUZpVH65C/r2OO7l+/LGK2qjj20Fh7CNxe/BsO6Xj9NB2u9pMvGBIaD6H2HFtOh56YXZ/uV2Rqt8g2cYxYR2M+qR5wAIJ/YNq+rmRlgwaowA2A+s5cXDUAQFCbE8+rUoywZRRrbtoZ5L4eZNoEeeV1AAw7D5oZ8wlmEA4t434JRrdOgVafRvOkJa6l/sfqNF0J/cOP0YbhaJzam3REddtzFpXEFQBRPqx67DNsO6q8b5/L1HewEtL68d0a3099VeTBdtAfO2TBwoLXaGKJ1Z+LTlW8PKdKWrrL2b9rqtSzW7uoTS6TtiV1l0PJ+Dr+qPaM+1q7a0jkMKrbP0Pnl2RoedXnq3bq9n3ULVv6dWxExOsUFs43kB2o8c4y9mmlNHUbjwN6zPsEwPygBSm7ke9kuLlwS4X5oWnxvFiBRwLIjg2PByz2O/4EgaMNa0DumPo7YCvplo4hqRvRM6rqeFhdb2Wi5bNyiZKSMNGYmVWcz9JaO8JAx8gXslA6wU/Vg2lq4w1H1IeYizBlZ3TDSN5lDglMPT6C6KmwRli6/CEU05EC43EJjGkXU36Cw39EpgYMK8q7zfMaNKGzCwIsRykEvYslx5cuDJyf7ToyYUBjokB284nSWuNIqMpK5E2hi+sSD06nWacwIWCgKlxg8Us1K6VQFxgnJ5+BKPBzBtpzOgE4EZJCb5ZEAn+YHWkXctykAU94s4rOhx00Y50DXnGKQPN5UMH70e60BGh/A0n34a/bm29FMu3Wxz73Ex9s0Nxmh8ez7X2haicrvRWGAwy329qgql6PqBGPFML6i6n84qsrSTlBFeV5ciKpI1spR1RCOFFTlR4Pqs9QLDRIBi0KyacKujDksqqaf7qgkcc4Cy8mYkRK+GWIreWGr+ryyqH0ocvnnVSUnAJhQWNquN+ALTx1CXr91C7zuGZ6hgecEOAMHZQag1lnRU7zCTbzdJWh7LiEj/v/IG2SmfQJHwD1W0RPkoi84AlmWy45A1I/kCJS3OwLlZY5gk5kFkJl9OnewxqG7Yr9ChoUK9iZPiv+9ha5/xf5PGPtFzdgN/qJR0rwoSGXNK8cK/mqZjDnFjDLFLAULY+n5FJv/PO80ZhdOs7cwf5PrgexOBnDYrj6OtZtmpyvWW3MDr7qj+991qyf5I3Hkghmjpmn2uuqCRhcP7YUzkC7V0cj/0bsWibCeTmet+m33QjCi6lXrTO70e+uW+bCmfiyjhT+C8dFtJFyxmtZtCMum6lhKk14qDwTNZyb64c8p6t9NW+KgVbuYtpSR/7DA5qB9j4Tg4f6MeDG5imOph3SxB2u5+hE3jFEc64pyCztV861ZaPVv/LjZ/vR0VMS9XFSQKko5G9UPBCFDOxIhtQ8PQp81G51ZjIQR5JwtBwe/sgy0Eq5eH4f4fVYxyOx7gD9kk0fOw54fJXfHer161CfVg1BFQTv6USqaWJaPiirogEvXlcqxrkmR8VFXwkhBucd4dys2r1kOxCZ+iYNtB/ezuoxPtjlzEzqhrNAzuQY5OcRKotrki3PVZFGVv03adsaBnSNjj1rTvFn2CktJmxRKJd+/uZ/KNH/Lb5AbBaCW3R8XsU5yF11EbjKSCE+RvkDwRzTGU8LkUxIaMICthlA4FWA7UI7c8+qKbKg50FgWOzRWxVIPMwLnzPXWEDYq42fyCr7BIcOfAhZ+ol2mIDgQBz81nniYvwx7ZkTmu4s7RNmkK/DAXBUahJQE3NMW36b1OFZQhrKnDHUvZUtXnvXak8ZmoW9QC3pcLUj6kssb5HJsaivPpPYj4ei9qH2Y17Iu7nl8cY++6YjvS+b8Rd+7BzBN0HbN0Y4VviT96zrlRfmsjeebLNb60MsU8etNymf881WT90LuoduUPEX/kNsU+YmUNZHBVxB+dc66JNEw68yf02RVyYvbVJUXVoXCRyeq6jOjeRof/oVMVdWUii6IxuazIyKJ3wEZxn5tPn5qfimLLU2ii/vDyhWtOOxe2H11dgzF7X/cpc23/7goNf8B&lt;/diagram&gt;&lt;diagram name=&quot;app_smem_aligned&quot; id=&quot;GgPtIHaKcKCI4rhGFcy1&quot;&gt;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&lt;/diagram&gt;&lt;diagram name=&quot;Interrupt tables&quot; id=&quot;EZewVbx_TtcUbZXsNIiB&quot;&gt;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&lt;/diagram&gt;&lt;diagram name=&quot;Kernel object hash&quot; id=&quot;UInpcb0AS365lY2_Gv2W&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;" style="background-color: rgb(255, 255, 255);"><defs/><g><path d="M 217 173 L 967 173 L 967 41 L 217 41 L 217 173" fill="#bdd7ee" stroke="#939393" stroke-miterlimit="10" pointer-events="all"/><path d="M 0 153 L 147 153 L 147 63 L 0 63 L 0 153" fill="#fee599" stroke="#939393" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 145px; height: 1px; padding-top: 108px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><p style="margin-left: 0 ; margin-right: 0 ; margin-top: 0px ; margin-bottom: 0px ; text-indent: 0 ; direction: ltr"><font style="font-size: 19px ; font-family: &quot;courier new&quot; ; color: #000000 ; direction: ltr ; letter-spacing: 0px ; line-height: 120% ; opacity: 1"><b>Makefile<br /></b></font><font style="font-size: 19px ; font-family: &quot;courier new&quot; ; color: #000000 ; direction: ltr ; letter-spacing: 0px ; line-height: 120% ; opacity: 1">(</font><font style="font-size: 19px ; font-family: &quot;themed&quot; ; color: #000000 ; direction: ltr ; letter-spacing: 0px ; line-height: 120% ; opacity: 1">various)</font><font style="font-size: 19px ; font-family: &quot;themed&quot; ; color: #000000 ; direction: ltr ; letter-spacing: 0px ; line-height: 120% ; opacity: 1"><b><br /></b></font></p></div></div></div></foreignObject><text x="73" y="112" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="12px" text-anchor="middle">Makefile...</text></switch></g><path d="M 350 28 L 794 28 L 794 0 L 350 0 L 350 28" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 442px; height: 1px; padding-top: 14px; margin-left: 351px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><font style="font-size: 19px ; font-family: &quot;calibri&quot; ; color: #000000 ; direction: ltr ; letter-spacing: 0px ; line-height: 120% ; opacity: 1"><b>Device handles<br /></b></font></div></div></div></foreignObject><text x="572" y="18" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="12px" text-anchor="middle">Device handles&#xa;</text></switch></g><path d="M 236 132 L 439 132 L 439 82 L 236 82 L 236 132" fill="#fee599" stroke="#939393" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 201px; height: 1px; padding-top: 107px; margin-left: 237px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><font style="font-size: 15px ; font-family: &quot;courier new&quot; ; color: #000000 ; direction: ltr ; letter-spacing: 0px ; line-height: 120% ; opacity: 1">zephyr_pre0.elf<br /></font></div></div></div></foreignObject><text x="338" y="111" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="12px" text-anchor="middle">zephyr_pre0.elf&#xa;</text></switch></g><path d="M 480 105 C 480 78.21 521.19 56.5 572 56.5 C 622.81 56.5 664 78.21 664 105 C 664 131.79 622.81 153.5 572 153.5 C 521.19 153.5 480 131.79 480 105" fill="#c5e0b3" stroke="#939393" stroke-miterlimit="10" pointer-events="all"/><rect x="491.51" y="62.22" width="161.13" height="85.2" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 159px; height: 1px; padding-top: 105px; margin-left: 493px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><font style="font-size: 15px ; font-family: &quot;calibri&quot; ; color: #000000 ; direction: ltr ; letter-spacing: 0px ; line-height: 120% ; opacity: 1">scripts/build/gen_handles.py<br /></font></div></div></div></foreignObject><text x="572" y="108" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="12px" text-anchor="middle">scripts/build/gen_handles.py&#xa;</text></switch></g><path d="M 147 107.21 L 209.13 106.55" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="2 2" pointer-events="stroke"/><path d="M 215.13 106.48 L 209.16 109.55 L 209.1 103.55 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 439 105 L 472.88 105" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="2 2" pointer-events="stroke"/><path d="M 478.88 105 L 472.88 108 L 472.88 102 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 697 132 L 948 132 L 948 82 L 697 82 L 697 132" fill="#fee599" stroke="#939393" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 249px; height: 1px; padding-top: 107px; margin-left: 698px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><font style="font-size: 15px ; font-family: &quot;courier new&quot; ; color: #000000 ; direction: ltr ; letter-spacing: 0px ; line-height: 120% ; opacity: 1">dev_handles.c<br /></font></div></div></div></foreignObject><text x="823" y="111" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="12px" text-anchor="middle">dev_handles.c&#xa;</text></switch></g><path d="M 664 105.97 L 689.88 106.14" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="2 2" pointer-events="stroke"/><path d="M 695.88 106.18 L 689.86 109.14 L 689.9 103.14 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg>