changeset 44:53b74a9cb1ef

...
author matac42 <matac@cr.ie.u-ryukyu.ac.jp>
date Mon, 31 Jan 2022 23:43:55 +0900
parents 9274f7bd0ebd
children d40d5c4e392f
files paper/figs/cd.svg paper/figs/ls.svg paper/figs/mkdir.svg slide/slide.html slide/slide.md slide/slide.pdf.html
diffstat 6 files changed, 221 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/figs/cd.svg	Mon Jan 31 23:43:55 2022 +0900
@@ -0,0 +1,4 @@
+<?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="701px" height="381px" viewBox="-0.5 -0.5 701 381" content="&lt;mxfile host=&quot;app.diagrams.net&quot; modified=&quot;2022-01-31T14:27:14.728Z&quot; agent=&quot;5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36&quot; etag=&quot;3kEqHgka453PqLswF5Cy&quot; version=&quot;16.5.2&quot; type=&quot;device&quot; pages=&quot;4&quot;&gt;&lt;diagram id=&quot;AAaulOYO_kfhROZJ8ttr&quot; name=&quot;Page-1&quot;&gt;7Vpbb+I6EP41PBbFCQR4LLTbcySqrU5X2u2jSwzx1omRYwrsrz9jYpOLA2S7XLKoEhLxZGzsb77xjMe0vFG0ehB4Hj7ygLCW6wSrlnfXcl3kDlz4UpJ1Kun5g1QwEzTQSpngmf4iWuho6YIGJCkoSs6ZpPOicMLjmExkQYaF4Mui2pSz4q/O8YxYgucJZrb0Ow1kmEr7bi+T/0PoLDS/jMz6ImyU9UqSEAd8mRN59y1vJDiX6VO0GhGmwDO4pP2+7Hi7nZggsazTYfrz5d9vfLKU8vH24cm7+Tr+Or5BfjrMO2YLvWI9W7k2EAi+iAOiRnFa3nAZUkme53ii3i7B6CALZcSgheBxShkbccYFtGMeg9LQnqie+zsRkqxyIj3xB8IjIsUaVMxbR4OoWeTr5jIzCTKyMG+OvhZiTYPZdugMKXjQYP0OcIdxg1GApeQwZjiZp9Sd0pXC+SiI+UXE+jZinQrAOqfCy206Xm4RL1RBsfMC5tkABbA16SYXMuQzHmN2n0mHRVfNdMaczzV4P4mUa73P4oXkRWjJisofuecXNVS7q1t3Kz3yprE2jRjWqzrdOG0HuUaSdvX9nhFkvTetQvcnIijgRoQW7rRowhdiQvbgpmGTWMyI3IevNpwCdS9BBGFY0vdiPDi6ub2G+4frNMw/agQuEge3KgXIQlEOpKKrbDmsyW4IjA6RV/tL5iMveRep9JePc9utyW1Uk9o523UrbGdktT1A/8ITp7CyLXW8QZE6nl/iRLpu3SufwZQG6nRKA6HSQCkw1kAbfm2X/XHK9Y5LuUrqoHpbbYmmzgGafpxyJuc+RDnvk3KnoFzfohyN4YylLCIIsegHm7ksci6Rgr+RUkZekaRjRmcxNCfAEBWFhyo0UDgH3eoXEQ0Ctiv4FJl9hHDj9Yu4d+xoU5Xve6eKNoMKOwSwlGu3Q/ngdWk7GPdrbJ5U3jAufe5CTT+odpqWWKKmH1U7/aYhVufwcm25OKqbGZktqyGpkd87UmrUcy+bGqHOcVn3d6TjTl3WuZ+sOwnruhbr3ggMeAsykPtM5X2vAp5m6kmrqbfmGuAas8TScWu72IuliQN7K2h48dQpbCBtp++dt26K+nV3Fr/mznKewimyj8hq/q6Td8urdbyD12JndTuzNzf8NrFcXLj8baLBaTeJrzh6uKXoUXWeOS+N7cwyb4c9MX5TnLtiU3m97sFAPzirqeya/A4bJEsaMZzizGNpUgEFzCSkLBjjNV+o6SYST95MaxhyQX+BPs4sh4XUKYDnFDSeVU89piAJ6DwZsFFJ9IhXBcUxTqSZDWcMzxP6upmf6hhBSKbxkEvJI62Up0pApnix4eQJ9saqAhaqqi5sL9CPb2M7wn+hTNXAv63nO2uvv+thjEzlPv9KwLVoPBtv1O46meQ/jYESceg+ZZvzZggdCYwwnKujyAaT7hA+gNJIJYVdmOsI2ihrw0epCzniMUwf040VCVBjSRQ9wJ8llvh1S1zb3vud5DALzKmqptFP59d2wR1S3YgmCeXxp8lPYPKqJOisJvfs5LHdbn/a+gS2Hlzc1nYVxTL0+Wp3bt+/8OHbZJyH/7Wkbd2Qsl75nn2bD/7pPTvqlgb6cFkPmtl/bFP17J/K3v3/&lt;/diagram&gt;&lt;diagram id=&quot;s08jDtw-m_Aoh3yq8LbV&quot; name=&quot;Page-2&quot;&gt;7Vpdc5s6EP01nmkfkgFksPMYx07bmd5Mpu7cmzx1ZCNjJYCILGLcX38lI/EpF5LixEzrF1sHaUFnj1e7SANwFSSfKIzW/xAX+QPLcJMBmA4sy7QuLP4lkF2KjEwJeBS7slMOzPFPJEFDojF20abUkRHiMxyVwSUJQ7RkJQxSSrblbivil+8aQQ/VgPkS+nX0P+yydYqOrVGOf0bYW6s7m85FeiWAqrOcyWYNXbItQGA2AFeUEJb+CpIr5AvyFC//js2fxuTOeJwmRjhd/fg6HYVnqbHrlwzJpkBRyF5tevbZu7vdfg+sxXwbk/jpbPFtJocYz9CPJV9yrmynCKQkDl0kjJgDMNmuMUPzCC7F1S2XDMfWLPDl5RUJ2RXxCd2PBdfXBv8IHPu+wkMS8sETeWdEGUoqrmqYp5mRz1WLSIAY3fFx0oot5yT1ajp22t7m3rcM2Wdd8PxQ9oNScF5mOSeV/5C8vsB91ks4NlpwfIjLdsRpOD/IpaXI26m2USPTdDRkZmDnbIJmNrkVHl1QM5NwE6UhZ4UTwf7ReARWhcdxncehTpPHYnHYRxatcZlFoFHjm7Lo9JFF4JwYi6MWLIbupcgF8ohXYK4cPDlbdHcnGue2at7LnvvGNCn2nO5UK8GsMIy37gtX8kGioca8zEUbEtMlav5TMkg99Ct7MgQit5T51B1ecKitcajCKPIhw8/lfEnnZXmHW4L5dPP11i7rya6G/nTeclQxQakYcoyKIbNiKCWmZmgvumzar9fhuFsdavVk/lJPh7RrNGi3Yx2Cljp0/urwGDq8qOkQh7wsEx6hCNU0ycM+Kwtxwyh5RJUUUZM1Qh97IW8uuWwQxydiEcG8dLqUFwLsuv6htass96Ot+ZXValhfrHT5JzjWYmXWKybMaUj+emfffnf3mDX39CElq5QH710dqFc8/WKxWh6Y753Ymv2sVZ1To7FNsfpHFAjqf9mYmakweKKpGegqNQNvnJqZdrdS7G+NoBTWLMXTrlb7IMUH/ym+ngY3y/DheWGD3f23aKJeFhSFxxmeyyahbE08EkJ/lqMV9eV9vhISSeE9IMZ2chcHxoyU5asEaxYjYCbeRsGCUVmy545lN0Vd0bpFFHO+RBZc0HJFUV2Ke9xS3EO9lFtr9PfWRd0LC8dnchtmIPbU1E6M8xSLbSrOHFit9nsyBcjxxHcUMzV8QRWoEP6Aqc0UfkTcP5f8DiEM0BlHYSDSlf219HEs4wOvaZC4/rFuVj6ysOAhSDdTTHlyQ+iuYuvLDS98b+JgwV3ffWXloxU7zbpK5VIqtozqKVi2wfo2dVX9pUTNIX3ZxHrTPSxt7DZr3J1o7D52oE134X8jgOrXZmCU/z/muLK3e+Q00dJtaXQSmStx+HDAdvFzFdpEMKwF8PbhN3uAop0CXLhjIbyHaJtZ/6NCePUYgi6E644hdBHCtUc9WrwZ69tRj+oy6VjnmsMeuoXyFYc9eDM/65NGivzEFJj9Dw==&lt;/diagram&gt;&lt;diagram id=&quot;_SMWdJT_P9braKPgiXsX&quot; name=&quot;Page-3&quot;&gt;7Vpdc+I2FP01zLQPZGwLG3gMJNl2mu5sm6ab9CWjYGGU2BaVRYD99ZWwhC1bxIaCgc3mJejavpbOPfdLcgsMo8UnCqeT34mPwpZj+YsWuGo5ju30Hf5PSJappGtLQUCxL2/KBHf4G5JCS0pn2EeJdiMjJGR4qgtHJI7RiGkySCmZ67eNSai/dQoDVBLcjWBYln7FPpuk0p7TzeS/IBxM1Jttr59eiaC6Wa4kmUCfzHMicN0CQ0oIS39FiyEKBXgKl8X9H1fz6yV5TeJP4Uv0NLwHg3aq7GabR9ZLoChme1YtF/sGw5kETC6WLRWClMxiHwktVgsM5hPM0N0UjsTVOecMl01YFPKRzX+OcRgOSUgoH8ck5jcN5BsQZWhRsEnFguw1ypyeiESI0SV/TmpxLTfVo5gp7TTPzGx7UjbJm7gnhVBSK1irzuDjPySCW6DpnC+YHM0TAxNUg8m18DCCqoGEyTSNLWO8EOAfDEZg6zD2yzB2DCh2DgVi5xxBXJNPgmgbyHgoFO2/Bre/YXD/hILbPy3ozLG7bBtA83mSkUNC2YQEJIbhdSYd6I6e3XNLyFQC+oIYW8qMCWeM6HCjBWYP4vELV44ec1euFlLzarBUg5gvN33I46FdCh7zV7MHVyPtyS+IYo4YolIoTIt5Kr0McRBzWYR9P8yikABhB7tzIMmMjtA793myUIA0QO/q88xEoiiEDL/ps9u7c3nn6FzAPZ5zGafbrYFi7F+KUjBLgznkdEfLeYCb579dxX+jt1nvetuhvaBT0wuA2eA5g7oGgypZbV+Rb/hCMF9dVoV1dD6BboEo6TLlU/n6tKioX1DkFBSlOJQUrUi3XvbuPOztl4f/L3q728TuQ/MQ1OThhmD8g4db8bDckeGYd+XCABShEid5emA6ERNGySsq9A2GVgLKrD7iLBEpf3O6N+Uune6HylbFHs8tJytTVwIOlaxUea9Zx+dr/pDWKTaNR7eOfY4VmevpHG+wZ6RDa/rPi0c7Dw9fo/unwdvfFm5bZcxOvttxLC1jtq0LC4BdWp4xiZnyxJYDbm4s/tdAjlW7qpVJ1tlApmZaHjXNM/MwR/ewo/c89llubnnWqcFYZ3vrY/aOteOJvcHmzVTt3b5OqZ2r9l6noKjhqt1290vF76h9VFVZNRWPupHx/VDRtC/phaIPSaYw1jjp/TsTx5cD7Vcg/r8iPodLfnMMI9TmUhiJvLO6lmp2rJ9434LE9Z/VC/iE03ekSpT4mdZ86w4TlcsUUw0QpMkVpjwdErosTPrXz7yL/jyLnnmtt2m2e+/eQjRmJ9q7FfZLTG3H+hC/me6tW46YzTUe6vejFnWrIq0WZy+s3k49x8EDcK9mAHbMjGmotTBtwKZ+KpqylvhERPVlWQwA4/GqQyuFBbHSzM1TDeWgtFusqwwTp+/+hSPWusf9+3B+4xGrd3a+L/YYLO8sAoAqQKorsP4xI4Ca5hEjgPT8+DmZlqoRpfVHjVG/xihUwp6hxrCarDGc8g7xOvhva9mMPVkJqvMnRvO1vg9l+OKxDbAM+UX1W/s2vHFTu87JQNaej0KYJHj0Xoe+aaM469w9p1O/d+eDxsvCo57Xgqpj1rrtNujauiL3YO22kVlONbMy5tgb3DL/0ecGYjX4MegRi0MjxDV2y88N4jqpcV8Rkg+zr9RT2mff+oPr/wA=&lt;/diagram&gt;&lt;diagram id=&quot;HHLeNmLiLjBSiti2kdQe&quot; name=&quot;Page-4&quot;&gt;7Vtdc7I4FP41zuxetBMIoF7aD7f79U53nZ1tL6lEzfsisSFW7a/fRBJCAAVdoTptbwoHciDPec5Xgh14O1//Qv3F7E8SoLBjg2DdgXcd27bsvs3/CckmkXQtKZhSHMibtGCE35EUAild4gDFxo2MkJDhhSkckyhCY2bIfErJyrxtQkLzqQt/igqC0dgPi9J/ccBmibRnd7X8AeHpTD3Z8vrJlbmvbpYziWd+QFYZEbzvwFtKCEuO5utbFArwFC4j/Bt4ex+uRgMbBYTeP8X/oKtE2fCQIekUKIrY0aof/3qHL39H69eHQX/4+/enh9dXIoeANz9cSrzkXNlGAUjJMgqQUAI68GY1wwyNFv5YXF1xynDZjM1DfmbxwwkOw1sSEsrPIxLxm27kExBlaJ0zScV8rBRkzk5E5ojRDR8ntbjATfQoYsq5rLSVLU/KZlkL96TQl8yapqo1evxAAngAmNblgsnRPDMw7WowuRYeRVA1kH68SELLBK8F+I3BCC0Txn4RRqcERacpEOElgpiST4JolZCxVRSdImgBzzHylFA2I1MS+eG9lt6Yjq7v+YOQhQT0O2JsIxOmv2TEhButMXsSw69defacuXK3lpq3Jxt1EvHpJoM8q68Ez9mreuD2zBj5iCjmiCEqhcK0mGfSQYinEZfNcRCEOgoJEI6wOweSLOkY7QFcBnbm0yli+wKuV04kikKf4Tfz7U5OC/cSnQu6Z+ZcXg0Uo2AgKkGdBjPImY6W8QA3y3+riv+l3gb2elvTXgBreoFdbvCMQd0SgypZbV+RT3gkmM9OV2GOySfYzRElmaYclS1P84r6OUV2TlGCQ0HRlnTptI/nYfe0PPx/0ds9JHY3zUO7Jg/dLx6egIe9Ag9xxJtyYQCKUIGTPD0wk4gxo+QHyvUNJa2EL7P6mLNEpPzd6b4sd5l0bypb5Xs8t5isyroS2FSy6pcYJ+BT/pTGyfeMH20c1XtdVkHmeibFP7pltKwiaGff7djAyJhX4BpAeEzLMyERU67YseFwCPhfCzlWLapWF3s72NROy6Ne88JczDZd7MN7Husi12U8cG4wOjVg/Jy9Y+14YoFym7dTtXf7JqWOrtp7Tk5Ry1W7VWcx6HO2j6osq6Yi/KLiKahYtqLmhaIRiRd+ZHDSe12K3csb42gq/v9A/B0G/ObIn6MrLvXnIu9sryWabfATb1yQuP6zegB/4eQZiRIlfqE1n3rEi8ppiledIp/Gd5jydEjoJvfSv37jXfS35fyF13q73vbk7VuIJuxMm7fceklZ35Hu4bfTvnWLEbO9xkMdPxtRtyrSGnH2GvSO6jkaD8C9ugG4nDEttRbFhS/lp6Ip64gvRFRfpmMAnEy2HVohLIiZajdPNBSD0nGxrjJMnL/757ZY6273N+f8/YtzfrHIALyLiAB23RJsRzPQTgSwy9bv2o0A0vOjl3hRqEaU1q8ao36NkauEvZIaA7QZZtTEMhRLg/+hltXs0SWoyZ8IrVJ9n8rw+W0bCEryi+q32jF8nYVL3Z+PQz+O8Xhfi75rpVi37p7t1G/e+UnrdeGOr2fa6bdh1T5r3X4bdi1Tkdtuv23XWMzV1LF2OGb2s88dzGrxc9BzKw/tGiu9l4ZxnezYcpAsLmLuTYrjJRUIZHIc2I4CDSe+U2yK5wgAgLHR10RKNF3KKUmJqZ+1Y+3Dvrw7PCWmmOqUKPdpVUq8Bl734LSYWee2kuHZbV8tOasGTP3ypXJ790M/osrnZMc6Mic7+a+xvJZzcvFrPjwRFl7jmH1FpIQzeRs19/0OP9U/k0psrH9sBu//Aw==&lt;/diagram&gt;&lt;/mxfile&gt;" style="background-color: rgb(255, 255, 255);"><defs/><g><rect x="435" y="20" width="160" height="180" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="180" y="20" width="160" height="180" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="260" cy="60" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="220" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 300 160 L 299.99 233.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 299.99 238.88 L 296.49 231.88 L 299.99 233.63 L 303.49 231.88 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><ellipse cx="300" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 220 120 L 260 80" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 260 80 L 300 120" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><rect x="435" y="0" width="60" height="30" 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: 58px; height: 1px; padding-top: 15px; margin-left: 436px;"><div data-drawio-colors="color: rgb(0, 0, 0); " 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;">inode tree</div></div></div></foreignObject><text x="465" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">inode tree</text></switch></g><rect x="180" y="0" width="60" height="30" 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: 58px; height: 1px; padding-top: 15px; margin-left: 181px;"><div data-drawio-colors="color: rgb(0, 0, 0); " 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;">index tree</div></div></div></foreignObject><text x="210" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">index tree</text></switch></g><ellipse cx="515" cy="60" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 475 160 L 474.98 242.64" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 474.98 247.89 L 471.48 240.89 L 474.98 242.64 L 478.48 240.89 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><ellipse cx="475" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="555" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 475 120 L 515 80" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 515 80 L 555 120" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><rect x="170" y="240" width="210" height="30" 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 flex-start; width: 208px; height: 1px; padding-top: 255px; margin-left: 172px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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;"><span>key: name-&gt;value (filename)</span><br /><span>value: gearsDirectory-&gt;INodeNumber</span></div></div></div></foreignObject><text x="172" y="259" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">key: name-&gt;value (filename)...</text></switch></g><path d="M 160 35 L 173.63 35" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 178.88 35 L 171.88 38.5 L 173.63 35 L 171.88 31.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="0" y="20" width="160" height="30" 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 flex-start; width: 158px; height: 1px; padding-top: 35px; margin-left: 2px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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 color="#ff0000">get</font><br />key: name-&gt;value (filename)</div></div></div></foreignObject><text x="2" y="39" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">get...</text></switch></g><path d="M 375 325 L 405 325 L 405 34.9 L 427.67 34.93" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 432.92 34.94 L 425.92 38.43 L 427.67 34.93 L 425.93 31.43 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="175" y="310" width="200" height="30" 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 flex-start; width: 198px; height: 1px; padding-top: 325px; margin-left: 177px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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 color="#ff0000">get</font><br />key: <span>gearsDirectory-&gt;INodeNumber</span></div></div></div></foreignObject><text x="177" y="329" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">get...</text></switch></g><rect x="435" y="250" width="195" height="30" 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 flex-start; width: 193px; height: 1px; padding-top: 265px; margin-left: 437px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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;">key: gearsDirectory-&gt;INodeNumber<br />value: newDirectory</div></div></div></foreignObject><text x="437" y="269" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">key: gearsDirectory-&gt;INodeNumber...</text></switch></g><path d="M 301.04 270 L 301.01 293.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 301 298.88 L 297.51 291.88 L 301.01 293.63 L 304.51 291.89 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="0" y="20" width="160" height="30" rx="4.5" ry="4.5" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="175" y="310" width="195" height="30" rx="4.5" ry="4.5" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="430" y="350" width="270" height="30" 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: 268px; height: 1px; padding-top: 365px; margin-left: 431px;"><div data-drawio-colors="color: #000000; " 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;">gearsDirectory-&gt;currentDirectory = newDirectory</div></div></div></foreignObject><text x="565" y="369" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">gearsDirectory-&gt;currentDirectory = newDirecto...</text></switch></g><path d="M 474.97 282.01 L 475.08 341.62" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 475.09 346.87 L 471.58 339.88 L 475.08 341.62 L 478.58 339.87 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="470" y="300" width="60" height="30" 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: 58px; height: 1px; padding-top: 315px; margin-left: 471px;"><div data-drawio-colors="color: #000000; " 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;">if exist</div></div></div></foreignObject><text x="500" y="319" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">if exist</text></switch></g></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%">Text is not SVG - cannot display</text></a></switch></svg>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/figs/ls.svg	Mon Jan 31 23:43:55 2022 +0900
@@ -0,0 +1,4 @@
+<?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="631px" height="341px" viewBox="-0.5 -0.5 631 341" content="&lt;mxfile host=&quot;app.diagrams.net&quot; modified=&quot;2022-01-31T14:26:44.308Z&quot; agent=&quot;5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36&quot; etag=&quot;yD-rH5nX8-crcdYnvhqq&quot; version=&quot;16.5.2&quot; type=&quot;device&quot; pages=&quot;4&quot;&gt;&lt;diagram id=&quot;AAaulOYO_kfhROZJ8ttr&quot; name=&quot;Page-1&quot;&gt;7Vpbb+I6EP41PBbFCQR4LLTbcySqrU5X2u2jSwzx1omRYwrsrz9jYpOLA2S7XLKoEhLxZGzsb77xjMe0vFG0ehB4Hj7ygLCW6wSrlnfXcl3kDlz4UpJ1Kun5g1QwEzTQSpngmf4iWuho6YIGJCkoSs6ZpPOicMLjmExkQYaF4Mui2pSz4q/O8YxYgucJZrb0Ow1kmEr7bi+T/0PoLDS/jMz6ImyU9UqSEAd8mRN59y1vJDiX6VO0GhGmwDO4pP2+7Hi7nZggsazTYfrz5d9vfLKU8vH24cm7+Tr+Or5BfjrMO2YLvWI9W7k2EAi+iAOiRnFa3nAZUkme53ii3i7B6CALZcSgheBxShkbccYFtGMeg9LQnqie+zsRkqxyIj3xB8IjIsUaVMxbR4OoWeTr5jIzCTKyMG+OvhZiTYPZdugMKXjQYP0OcIdxg1GApeQwZjiZp9Sd0pXC+SiI+UXE+jZinQrAOqfCy206Xm4RL1RBsfMC5tkABbA16SYXMuQzHmN2n0mHRVfNdMaczzV4P4mUa73P4oXkRWjJisofuecXNVS7q1t3Kz3yprE2jRjWqzrdOG0HuUaSdvX9nhFkvTetQvcnIijgRoQW7rRowhdiQvbgpmGTWMyI3IevNpwCdS9BBGFY0vdiPDi6ub2G+4frNMw/agQuEge3KgXIQlEOpKKrbDmsyW4IjA6RV/tL5iMveRep9JePc9utyW1Uk9o523UrbGdktT1A/8ITp7CyLXW8QZE6nl/iRLpu3SufwZQG6nRKA6HSQCkw1kAbfm2X/XHK9Y5LuUrqoHpbbYmmzgGafpxyJuc+RDnvk3KnoFzfohyN4YylLCIIsegHm7ksci6Rgr+RUkZekaRjRmcxNCfAEBWFhyo0UDgH3eoXEQ0Ctiv4FJl9hHDj9Yu4d+xoU5Xve6eKNoMKOwSwlGu3Q/ngdWk7GPdrbJ5U3jAufe5CTT+odpqWWKKmH1U7/aYhVufwcm25OKqbGZktqyGpkd87UmrUcy+bGqHOcVn3d6TjTl3WuZ+sOwnruhbr3ggMeAsykPtM5X2vAp5m6kmrqbfmGuAas8TScWu72IuliQN7K2h48dQpbCBtp++dt26K+nV3Fr/mznKewimyj8hq/q6Td8urdbyD12JndTuzNzf8NrFcXLj8baLBaTeJrzh6uKXoUXWeOS+N7cwyb4c9MX5TnLtiU3m97sFAPzirqeya/A4bJEsaMZzizGNpUgEFzCSkLBjjNV+o6SYST95MaxhyQX+BPs4sh4XUKYDnFDSeVU89piAJ6DwZsFFJ9IhXBcUxTqSZDWcMzxP6upmf6hhBSKbxkEvJI62Up0pApnix4eQJ9saqAhaqqi5sL9CPb2M7wn+hTNXAv63nO2uvv+thjEzlPv9KwLVoPBtv1O46meQ/jYESceg+ZZvzZggdCYwwnKujyAaT7hA+gNJIJYVdmOsI2ihrw0epCzniMUwf040VCVBjSRQ9wJ8llvh1S1zb3vud5DALzKmqptFP59d2wR1S3YgmCeXxp8lPYPKqJOisJvfs5LHdbn/a+gS2Hlzc1nYVxTL0+Wp3bt+/8OHbZJyH/7Wkbd2Qsl75nn2bD/7pPTvqlgb6cFkPmtl/bFP17J/K3v3/&lt;/diagram&gt;&lt;diagram id=&quot;s08jDtw-m_Aoh3yq8LbV&quot; name=&quot;Page-2&quot;&gt;7Vpdc5s6EP01nmkfkgFksPMYx07bmd5Mpu7cmzx1ZCNjJYCILGLcX38lI/EpF5LixEzrF1sHaUFnj1e7SANwFSSfKIzW/xAX+QPLcJMBmA4sy7QuLP4lkF2KjEwJeBS7slMOzPFPJEFDojF20abUkRHiMxyVwSUJQ7RkJQxSSrblbivil+8aQQ/VgPkS+nX0P+yydYqOrVGOf0bYW6s7m85FeiWAqrOcyWYNXbItQGA2AFeUEJb+CpIr5AvyFC//js2fxuTOeJwmRjhd/fg6HYVnqbHrlwzJpkBRyF5tevbZu7vdfg+sxXwbk/jpbPFtJocYz9CPJV9yrmynCKQkDl0kjJgDMNmuMUPzCC7F1S2XDMfWLPDl5RUJ2RXxCd2PBdfXBv8IHPu+wkMS8sETeWdEGUoqrmqYp5mRz1WLSIAY3fFx0oot5yT1ajp22t7m3rcM2Wdd8PxQ9oNScF5mOSeV/5C8vsB91ks4NlpwfIjLdsRpOD/IpaXI26m2USPTdDRkZmDnbIJmNrkVHl1QM5NwE6UhZ4UTwf7ReARWhcdxncehTpPHYnHYRxatcZlFoFHjm7Lo9JFF4JwYi6MWLIbupcgF8ohXYK4cPDlbdHcnGue2at7LnvvGNCn2nO5UK8GsMIy37gtX8kGioca8zEUbEtMlav5TMkg99Ct7MgQit5T51B1ecKitcajCKPIhw8/lfEnnZXmHW4L5dPP11i7rya6G/nTeclQxQakYcoyKIbNiKCWmZmgvumzar9fhuFsdavVk/lJPh7RrNGi3Yx2Cljp0/urwGDq8qOkQh7wsEx6hCNU0ycM+Kwtxwyh5RJUUUZM1Qh97IW8uuWwQxydiEcG8dLqUFwLsuv6htass96Ot+ZXValhfrHT5JzjWYmXWKybMaUj+emfffnf3mDX39CElq5QH710dqFc8/WKxWh6Y753Ymv2sVZ1To7FNsfpHFAjqf9mYmakweKKpGegqNQNvnJqZdrdS7G+NoBTWLMXTrlb7IMUH/ym+ngY3y/DheWGD3f23aKJeFhSFxxmeyyahbE08EkJ/lqMV9eV9vhISSeE9IMZ2chcHxoyU5asEaxYjYCbeRsGCUVmy545lN0Vd0bpFFHO+RBZc0HJFUV2Ke9xS3EO9lFtr9PfWRd0LC8dnchtmIPbU1E6M8xSLbSrOHFit9nsyBcjxxHcUMzV8QRWoEP6Aqc0UfkTcP5f8DiEM0BlHYSDSlf219HEs4wOvaZC4/rFuVj6ysOAhSDdTTHlyQ+iuYuvLDS98b+JgwV3ffWXloxU7zbpK5VIqtozqKVi2wfo2dVX9pUTNIX3ZxHrTPSxt7DZr3J1o7D52oE134X8jgOrXZmCU/z/muLK3e+Q00dJtaXQSmStx+HDAdvFzFdpEMKwF8PbhN3uAop0CXLhjIbyHaJtZ/6NCePUYgi6E644hdBHCtUc9WrwZ69tRj+oy6VjnmsMeuoXyFYc9eDM/65NGivzEFJj9Dw==&lt;/diagram&gt;&lt;diagram id=&quot;_SMWdJT_P9braKPgiXsX&quot; name=&quot;Page-3&quot;&gt;7Vpdc+I2FP01zLQPZGwLG3gMJNl2mu5sm6ab9CWjYGGU2BaVRYD99ZWwhC1bxIaCgc3mJejavpbOPfdLcgsMo8UnCqeT34mPwpZj+YsWuGo5ju30Hf5PSJappGtLQUCxL2/KBHf4G5JCS0pn2EeJdiMjJGR4qgtHJI7RiGkySCmZ67eNSai/dQoDVBLcjWBYln7FPpuk0p7TzeS/IBxM1Jttr59eiaC6Wa4kmUCfzHMicN0CQ0oIS39FiyEKBXgKl8X9H1fz6yV5TeJP4Uv0NLwHg3aq7GabR9ZLoChme1YtF/sGw5kETC6WLRWClMxiHwktVgsM5hPM0N0UjsTVOecMl01YFPKRzX+OcRgOSUgoH8ck5jcN5BsQZWhRsEnFguw1ypyeiESI0SV/TmpxLTfVo5gp7TTPzGx7UjbJm7gnhVBSK1irzuDjPySCW6DpnC+YHM0TAxNUg8m18DCCqoGEyTSNLWO8EOAfDEZg6zD2yzB2DCh2DgVi5xxBXJNPgmgbyHgoFO2/Bre/YXD/hILbPy3ozLG7bBtA83mSkUNC2YQEJIbhdSYd6I6e3XNLyFQC+oIYW8qMCWeM6HCjBWYP4vELV44ec1euFlLzarBUg5gvN33I46FdCh7zV7MHVyPtyS+IYo4YolIoTIt5Kr0McRBzWYR9P8yikABhB7tzIMmMjtA793myUIA0QO/q88xEoiiEDL/ps9u7c3nn6FzAPZ5zGafbrYFi7F+KUjBLgznkdEfLeYCb579dxX+jt1nvetuhvaBT0wuA2eA5g7oGgypZbV+Rb/hCMF9dVoV1dD6BboEo6TLlU/n6tKioX1DkFBSlOJQUrUi3XvbuPOztl4f/L3q728TuQ/MQ1OThhmD8g4db8bDckeGYd+XCABShEid5emA6ERNGySsq9A2GVgLKrD7iLBEpf3O6N+Uune6HylbFHs8tJytTVwIOlaxUea9Zx+dr/pDWKTaNR7eOfY4VmevpHG+wZ6RDa/rPi0c7Dw9fo/unwdvfFm5bZcxOvttxLC1jtq0LC4BdWp4xiZnyxJYDbm4s/tdAjlW7qpVJ1tlApmZaHjXNM/MwR/ewo/c89llubnnWqcFYZ3vrY/aOteOJvcHmzVTt3b5OqZ2r9l6noKjhqt1290vF76h9VFVZNRWPupHx/VDRtC/phaIPSaYw1jjp/TsTx5cD7Vcg/r8iPodLfnMMI9TmUhiJvLO6lmp2rJ9434LE9Z/VC/iE03ekSpT4mdZ86w4TlcsUUw0QpMkVpjwdErosTPrXz7yL/jyLnnmtt2m2e+/eQjRmJ9q7FfZLTG3H+hC/me6tW46YzTUe6vejFnWrIq0WZy+s3k49x8EDcK9mAHbMjGmotTBtwKZ+KpqylvhERPVlWQwA4/GqQyuFBbHSzM1TDeWgtFusqwwTp+/+hSPWusf9+3B+4xGrd3a+L/YYLO8sAoAqQKorsP4xI4Ca5hEjgPT8+DmZlqoRpfVHjVG/xihUwp6hxrCarDGc8g7xOvhva9mMPVkJqvMnRvO1vg9l+OKxDbAM+UX1W/s2vHFTu87JQNaej0KYJHj0Xoe+aaM469w9p1O/d+eDxsvCo57Xgqpj1rrtNujauiL3YO22kVlONbMy5tgb3DL/0ecGYjX4MegRi0MjxDV2y88N4jqpcV8Rkg+zr9RT2mff+oPr/wA=&lt;/diagram&gt;&lt;diagram id=&quot;HHLeNmLiLjBSiti2kdQe&quot; name=&quot;Page-4&quot;&gt;7Vtbc+o2EP41zLQPycgSNvBILjS9nUnLdJo8OliAzjEWkUWA/PpKWLIs24Ch2IFJ8hJrba2tb7/d1UqihW5nq1+YP5/+SQMctiAIVi1014LQgT0o/knJOpF0vF4imDASqIeMYEjesRICJV2QAMfWg5zSkJO5LRzRKMIjbsl8xujSfmxMQ/utc3+CC4LhyA+L0n9JwKeJtAs7Rv6AyWSq3+zo8c18/bAaSTz1A7rMiNB9C90ySnlyNVvd4lCCp3EZkt/A2/tgOexDHFB2/xT/g68SZYNDuqRDYDjiR6t+/OsdvfwdrV4f+r3B79+fHl5fqeoC3vxwofBSY+VrDSCjiyjAUglooZvllHA8nPsjeXcpKCNkUz4LRcsRl2MShrc0pEy0IxqJh27UGzDjeJUzyZ7xOCnIgp2YzjBna9FPaXGBm+jRxFRjWRorO56STbMW7iqhr5g1SVUb9MSFAvAAMJ3LBVOgeWZgwv1gCi0iiuD9QPrxPAktY7KS4NcGI3JsGHtFGNslKLbrAhFdIogp+RSITgkZG0WxXQQtEDlGNSnjUzqhkR/eG+mN7ejmmT8onStAv2PO1yph+gtObbjxivAn2f3aVa3nzJ27ldK8aax1IxLDTTp5Tk8LnrN3TcdNy+r5iBkRiGGmhNK0RGTSfkgmkZDNSBCEJgpJEI6wuwCSLtgI7wBcBXbuswnmuwKuV04khkOfkzf7605OC/cSnQu5Z+ZcXgUUo6AvZ4ImDWaQsx0t4wFulv/OPv6XehvY6W11ewGq6AWw3OAZg7olBtWyyr6i3vBIiRidmYW1bT6hTo4oyTBVr+z0NK+ol1MEc4oSHAqKNqRLh308Dzun5eH/i97uIbG7bh7Cijx0v3h4Ah52CzwkkSjKpQEYxgVOivTAbSLGnNEfOFc3lJQSvsrqI8ESmfK3p/uy3GXTva5sla/x3GKyKqtKUF3JqldinEAM+VMaJ18zfrRxdO11WRMy17Mp/tElo+MUQTv7agcCK2NegWuA0DElz5hGXLtiC6LBAIi/BnKsUzXJwi1saqbk0Z95YS4GbRf78JrHuch1GQ+cG4ztCjB+ztqxcjxxQLnNm5m1d3o2pY6etXfbOUUNz9qdKotBn7N81NOy/VREX1Q8BRXLVtS8UBYi8dyPLE56rwu5e3ljXU3k/x9YfENfPBz5M3wlpP5M5p3NvUQzBD+JwgXL+z/rF4gPTt6RKNHiF1bxrUd8qBqm/NQJ9ll8R5hIh5Stcx/96zdRRX9bzF7EXG/b1568fAvxmJ9p8ZZbLymrO9I9/GbKt04xYjZXeOjrZyvq7ou0Vpy9Bt2jao7aA3C3agAuZ0xDpUVx4Uv7qSzKWvKEiK7LTAxA4/GmQiuEBTlS4+aJhmJQOi7W7Q0T5+/+uS3Wqtv99Tl/7+KcXy4yAO8iIgCsOgXbUgw0EwFg2fpdsxFAeX70Es8LsxGt9WuOUX2OkZsJeyVzDNBkmNEDy1AsDf6HWtawx0xBbf5EeJnq+1SGz2/bIFCSX3S91Yzhqyxcmvp8FPpxTEa7SvRtK8WmdPdgu3rxLhqNzwu3nJ5ppt5G+/ZZq9bbqOPYitxm621YYTHXUMfZ4pjZY59bmNXgcdBzmx7CCiu9l4ZxlezYcJAsLmLuTIqjBZMIZHIc2PQCNSe+U2yK5wgAgLXRV0dKtF2qXZISUz9rxtqHnbw7PCWmmJqUqPZpdUq8Bl7n4LSYWed2ku7ZbV8jOasCTP/yZe/27oceosrn5LZzZE5u509jeQ3n5OJpPjKWFl6RmH9FpIQzeRvVd35HNM3PpBIbmx+bofv/AA==&lt;/diagram&gt;&lt;/mxfile&gt;" style="background-color: rgb(255, 255, 255);"><defs/><g><rect x="435" y="20" width="160" height="180" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="180" y="20" width="160" height="180" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="260" cy="60" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="220" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 300 160 L 299.99 233.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 299.99 238.88 L 296.49 231.88 L 299.99 233.63 L 303.49 231.88 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><ellipse cx="300" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 220 120 L 260 80" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 260 80 L 300 120" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><rect x="435" y="0" width="60" height="30" 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: 58px; height: 1px; padding-top: 15px; margin-left: 436px;"><div data-drawio-colors="color: rgb(0, 0, 0); " 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;">inode tree</div></div></div></foreignObject><text x="465" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">inode tree</text></switch></g><rect x="180" y="0" width="60" height="30" 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: 58px; height: 1px; padding-top: 15px; margin-left: 181px;"><div data-drawio-colors="color: rgb(0, 0, 0); " 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;">index tree</div></div></div></foreignObject><text x="210" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">index tree</text></switch></g><ellipse cx="515" cy="60" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 475 160 L 474.98 242.64" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 474.98 247.89 L 471.48 240.89 L 474.98 242.64 L 478.48 240.89 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><ellipse cx="475" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="555" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 475 120 L 515 80" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 515 80 L 555 120" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><rect x="170" y="240" width="210" height="30" 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 flex-start; width: 208px; height: 1px; padding-top: 255px; margin-left: 172px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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;"><span>key: name-&gt;value (filename)</span><br /><span>value: gearsDirectory-&gt;INodeNumber</span></div></div></div></foreignObject><text x="172" y="259" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">key: name-&gt;value (filename)...</text></switch></g><path d="M 160 35 L 173.63 35" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 178.88 35 L 171.88 38.5 L 173.63 35 L 171.88 31.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="0" y="20" width="160" height="30" 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 flex-start; width: 158px; height: 1px; padding-top: 35px; margin-left: 2px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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 color="#ff0000">get</font><br />key: name-&gt;value (filename)</div></div></div></foreignObject><text x="2" y="39" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">get...</text></switch></g><path d="M 375 325 L 405 325 L 405 34.9 L 427.67 34.93" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 432.92 34.94 L 425.92 38.43 L 427.67 34.93 L 425.93 31.43 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="175" y="310" width="200" height="30" 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 flex-start; width: 198px; height: 1px; padding-top: 325px; margin-left: 177px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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 color="#ff0000">get</font><br />key: <span>gearsDirectory-&gt;INodeNumber</span></div></div></div></foreignObject><text x="177" y="329" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">get...</text></switch></g><rect x="435" y="250" width="195" height="30" 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 flex-start; width: 193px; height: 1px; padding-top: 265px; margin-left: 437px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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;">key: gearsDirectory-&gt;INodeNumber<br />value: newDirectory</div></div></div></foreignObject><text x="437" y="269" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">key: gearsDirectory-&gt;INodeNumber...</text></switch></g><path d="M 301.04 270 L 301.01 293.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 301 298.88 L 297.51 291.88 L 301.01 293.63 L 304.51 291.89 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="0" y="20" width="160" height="30" rx="4.5" ry="4.5" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="175" y="310" width="195" height="30" rx="4.5" ry="4.5" fill="none" stroke="rgb(0, 0, 0)" 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%">Text is not SVG - cannot display</text></a></switch></svg>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/figs/mkdir.svg	Mon Jan 31 23:43:55 2022 +0900
@@ -0,0 +1,4 @@
+<?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="386px" height="381px" viewBox="-0.5 -0.5 386 381" content="&lt;mxfile host=&quot;app.diagrams.net&quot; modified=&quot;2022-01-31T14:26:10.980Z&quot; agent=&quot;5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36&quot; etag=&quot;i_0LCAG9sZPzsEHlly6F&quot; version=&quot;16.5.2&quot; type=&quot;device&quot; pages=&quot;4&quot;&gt;&lt;diagram id=&quot;AAaulOYO_kfhROZJ8ttr&quot; name=&quot;Page-1&quot;&gt;7Vpbb+I6EP41PBbFCQR4LLTbcySqrU5X2u2jSwzx1omRYwrsrz9jYpOLA2S7XLKoEhLxZGzsb77xjMe0vFG0ehB4Hj7ygLCW6wSrlnfXcl3kDlz4UpJ1Kun5g1QwEzTQSpngmf4iWuho6YIGJCkoSs6ZpPOicMLjmExkQYaF4Mui2pSz4q/O8YxYgucJZrb0Ow1kmEr7bi+T/0PoLDS/jMz6ImyU9UqSEAd8mRN59y1vJDiX6VO0GhGmwDO4pP2+7Hi7nZggsazTYfrz5d9vfLKU8vH24cm7+Tr+Or5BfjrMO2YLvWI9W7k2EAi+iAOiRnFa3nAZUkme53ii3i7B6CALZcSgheBxShkbccYFtGMeg9LQnqie+zsRkqxyIj3xB8IjIsUaVMxbR4OoWeTr5jIzCTKyMG+OvhZiTYPZdugMKXjQYP0OcIdxg1GApeQwZjiZp9Sd0pXC+SiI+UXE+jZinQrAOqfCy206Xm4RL1RBsfMC5tkABbA16SYXMuQzHmN2n0mHRVfNdMaczzV4P4mUa73P4oXkRWjJisofuecXNVS7q1t3Kz3yprE2jRjWqzrdOG0HuUaSdvX9nhFkvTetQvcnIijgRoQW7rRowhdiQvbgpmGTWMyI3IevNpwCdS9BBGFY0vdiPDi6ub2G+4frNMw/agQuEge3KgXIQlEOpKKrbDmsyW4IjA6RV/tL5iMveRep9JePc9utyW1Uk9o523UrbGdktT1A/8ITp7CyLXW8QZE6nl/iRLpu3SufwZQG6nRKA6HSQCkw1kAbfm2X/XHK9Y5LuUrqoHpbbYmmzgGafpxyJuc+RDnvk3KnoFzfohyN4YylLCIIsegHm7ksci6Rgr+RUkZekaRjRmcxNCfAEBWFhyo0UDgH3eoXEQ0Ctiv4FJl9hHDj9Yu4d+xoU5Xve6eKNoMKOwSwlGu3Q/ngdWk7GPdrbJ5U3jAufe5CTT+odpqWWKKmH1U7/aYhVufwcm25OKqbGZktqyGpkd87UmrUcy+bGqHOcVn3d6TjTl3WuZ+sOwnruhbr3ggMeAsykPtM5X2vAp5m6kmrqbfmGuAas8TScWu72IuliQN7K2h48dQpbCBtp++dt26K+nV3Fr/mznKewimyj8hq/q6Td8urdbyD12JndTuzNzf8NrFcXLj8baLBaTeJrzh6uKXoUXWeOS+N7cwyb4c9MX5TnLtiU3m97sFAPzirqeya/A4bJEsaMZzizGNpUgEFzCSkLBjjNV+o6SYST95MaxhyQX+BPs4sh4XUKYDnFDSeVU89piAJ6DwZsFFJ9IhXBcUxTqSZDWcMzxP6upmf6hhBSKbxkEvJI62Up0pApnix4eQJ9saqAhaqqi5sL9CPb2M7wn+hTNXAv63nO2uvv+thjEzlPv9KwLVoPBtv1O46meQ/jYESceg+ZZvzZggdCYwwnKujyAaT7hA+gNJIJYVdmOsI2ihrw0epCzniMUwf040VCVBjSRQ9wJ8llvh1S1zb3vud5DALzKmqptFP59d2wR1S3YgmCeXxp8lPYPKqJOisJvfs5LHdbn/a+gS2Hlzc1nYVxTL0+Wp3bt+/8OHbZJyH/7Wkbd2Qsl75nn2bD/7pPTvqlgb6cFkPmtl/bFP17J/K3v3/&lt;/diagram&gt;&lt;diagram id=&quot;s08jDtw-m_Aoh3yq8LbV&quot; name=&quot;Page-2&quot;&gt;7Vpdc5s6EP01nmkfkgFksPMYx07bmd5Mpu7cmzx1ZCNjJYCILGLor7+SkfiUC0lxYk/rF1sHaUFnj1e7SANwFSSfKIzW/xAX+QPLcJMBmA4sy7QuLP4lkDRDRs5FBngUu7JTAczxTyRBQ6IxdtGm0pER4jMcVcElCUO0ZBUMUkq21W4r4lfvGkEPNYD5EvpN9D/ssnWGjq1RgX9G2FurO5tqfgFUneVMNmvokm0JArMBuKKEsOxXkFwhX5CnePl3bP40JnfG4zQxwunqx9fpKDzLjF2/ZEg+BYpC9mrTs8/e3e32e2At5tuYxE9ni28zOcR4hn4s+ZJzZakikJI4dJEwYg7AZLvGDM0juBRXt1wyHFuzwJeXVyRkV8QndDcWXF8b/CNw7PsKD0nIB0/knRFlKKm5qmWeZk4+Vy0iAWI05eOkFVvOSerVdOysvS28bxmyz7rk+aHsB6XgvNxyQSr/IXl9gfusl3BsdOB4H5fdiNNwvpdLS5GXqrbRINN0NGTmYO9sgnY2uRUeXVA7k3ATZSFnhRPB/sF4BFaNx3GTx6FOk4dicXiKLFrjKotAo8Y3ZdE5RRaBc2QsjjqwGLqXIhcoIl6JuWrw5GzR9E40zm3VvJc9d41pUu45TVUrwaw0jLfuS1eKQaKhxrzMRRsS0yVq/1MySD30K3syBCK3kvk0HV5yqK1xqMIo8iHDz9V8SedleYdbgvl0i/XWrurJrof+bN5yVDlBqRlyjJohs2YoI6ZhaCe6fNqv1+G4Xx1q9WT+Uk/7tGu0aLdnHYKOOnT+6vAQOrxo6BCHvCwTHqEINTTJwz6rCnHDKHlEtRRRkzVCH3shby65bBDHJ2IRwbx0upQXAuy6/r61qyr3g635tdVq2FysdPknONRiZTYrJsxpSP56Z9d+d/eYDfecQkpWKw/euzowO5Ssx8divTww3zuxNU+zVnWOjcYuxeofUSCo/2VrZqbC4JGmZqCv1Ay8cWpm2v1K8XRrBKWwdiked7V6ClJ88J/i62lwswwfnhc2SO+/RRP1sqAsPM7wXDYJZWvikRD6swKtqa/o85WQSArvATGWyl0cGDNSla8SrFmOgLl4WwULRlXJnjuW3RZ1ResWUcz5EllwScs1RfUp7nFHcQ/1Uu6s0d9bF3UvLByfyW2YgdhTUzsxzlMstqk4c2C12u3JlCDHE99RzNTwBVWgQvgDZjYz+BFx/1zyO4QwQGcchYFIV3bXssexjA+8pkHi+semWfnIwoKHIN1MMeXJDaFpzdaXG1743sTBgru+/8rKRyt2nHWVyqVUbBk1U7B8g/Vt6qrmS4mGQ05lE+tN97C0sdtscHeksfvQgTbbhf+NAKpfm4FR/f+Y49re7oHTREu3pdFLZK7F4f0B28XPdWgTwbARwLuH3/wBynZKcOmOpfAeom1u/Y8K4fVjCLoQrjuG0EcI1x716PBm7NSOetSXScc61xz20C2UrzjswZvFWZ8sUhQnpsDsfw==&lt;/diagram&gt;&lt;diagram id=&quot;_SMWdJT_P9braKPgiXsX&quot; name=&quot;Page-3&quot;&gt;7Vpdc+I2FP01zLQPZGwLG3gMJNl2mu5sm6ab9CWjYGGU2BaVRYD99ZWwhC1bxIaCgc3mJejavpbOPfdLcgsMo8UnCqeT34mPwpZj+YsWuGo5ju30Hf5PSJappOv1U0FAsS9vygR3+BuSQktKZ9hHiXYjIyRkeKoLRySO0YhpMkgpmeu3jUmov3UKA1QS3I1gWJZ+xT6bpNKe083kvyAcTNSbbbW+CKqb5UqSCfTJPCcC1y0wpISw9Fe0GKJQgKdwWdz/cTW/XpLXJP4UvkRPw3swaKfKbrZ5ZL0EimK2Z9VysW8wnEnA5GLZUiFIySz2kdBitcBgPsEM3U3hSFydc85w2YRFIR/Z/OcYh+GQhITycUxiftNAvgFRhhYFm1QsyF6jzOmJSIQYXfLnpBbXclM9ipnSTvPMzLYnZZO8iXtSCCW1grXqDD7+QyK4BZrO+YLJ0TwxMEE1mFwLDyOoGkiYTNPYMsYLAf7BYAS2DmO/DGPHgGLnUCB2zhHENfkkiLaBjIdC0f5rcPsbBvdPKLj904LOHLvLtgE0nycZOSSUTUhAYhheZ9KB7ujZPbeETCWgL4ixpcyYcMaIDjdaYPYgHr9w5egxd+VqITWvBks1iPly04c8Htql4DF/NXtwNdKe/IIo5oghKoXCtJin0ssQBzGXRdj3wywKCRB2sDsHkszoCL1znycLBUgD9K4+z0wkikLI8Js+u707l3eOzgXc4zmXcbrdGijG/qUoBbM0mENOd7ScB7h5/ttV/Dd6m/Wutx3aCzo1vQCYDZ4zqGswqJLV9hX5hi8E89VlVVhH5xPoFoiSLlM+la9Pi4r6BUVOQVGKQ0nRinTrZe/Ow95+efj/ore7Tew+NA9BTR5uCMY/eLgVD8sdGY55Vy4MQBEqcZKnB6YTMWGUvKJC32BoJaDM6iPOEpHyN6d7U+7S6X6obFXs8dxysjJ1JeBQyUqV95p1fL7mD2mdYtN4dOvY51iRuZ7O8QZ7Rjq0pv+8eLTz8PA1un8avP1t4bZVxuzkux3H0jJm27qwANil5RmTmClPbDng5sbifw3kWNupmWSdDWRqpuVR0zwzD3N0Dzt6z2Of5eaWZ50ajHW2tz5m71g7ntgbbN5M1d7t65TauWrvdQqKGq7abXe/VPyO2kdVlVVT8agbGd8PFU37kl4o+pBkCmONk96/M3F8OdB+BeL/K+JzuOQ3xzBCbS6Fkcg7q2upZsf6ifctSFz/Wb2ATzh9R6pEiZ9pzbfuMFG5TDHVAEGaXGHK0yGhy8Kkf/3Mu+jPs+iZ13qbZrv37i1EY3aivVthv8TUdqwP8Zvp3rrliNlc46F+P2pRtyrSanH2wurt1HMcPAD3agZgx8yYhloL0wZs6qeiKWuJT0RUX5bFADAerzq0UlgQK83cPNVQDkq7xbrKMHH67l84Yq173L8P5zcesXpn5/tij8HyziIAqAKkugLrHzMCqGkeMQJIz4+fk2mpGlFaf9QY9WuMQiXsGWoMq8kawynvEK+D/7aWzdiTlaA6f2I0X+v7UIYvHtsAy5BfVL+1b8MbN7XrnAxk7fkohEmCR+916Js2irPO3XM69Xt3Pmi8LDzqeS2oOmat226Drq0rcg/WbhuZ5VQzK2OOvcEt8x99biBWgx+DHrE4NEJcY7f83CCukxr3FSH5MPtKPaV99q0/uP4P&lt;/diagram&gt;&lt;diagram id=&quot;HHLeNmLiLjBSiti2kdQe&quot; name=&quot;Page-4&quot;&gt;7Vtbc+o2EP41zLQPycgSNvBILjS9nUnLdJo8OliAzjEWkUWA/PpKWLIs24Ch2IFJ8hJrba2tb7/d1UqihW5nq1+YP5/+SQMctiAIVi1014LQgT0o/knJOpF0vF4imDASqIeMYEjesRICJV2QAMfWg5zSkJO5LRzRKMIjbsl8xujSfmxMQ/utc3+CC4LhyA+L0n9JwKeJtAs7Rv6AyWSq3+zo8c18/bAaSTz1A7rMiNB9C90ySnlyNVvd4lCCp3EZkt/A2/tgOexDHFB2/xT/g68SZYNDuqRDYDjiR6t+/OsdvfwdrV4f+r3B79+fHl5fqeoC3vxwofBSY+VrDSCjiyjAUglooZvllHA8nPsjeXcpKCNkUz4LRcsRl2MShrc0pEy0IxqJh27UGzDjeJUzyZ7xOCnIgp2YzjBna9FPaXGBm+jRxFRjWRorO56STbMW7iqhr5g1SVUb9MSFAvAAMJ3LBVOgeWZgwv1gCi0iiuD9QPrxPAktY7KS4NcGI3JsGHtFGNslKLbrAhFdIogp+RSITgkZG0WxXQQtEDlGNSnjUzqhkR/eG+mN7ejmmT8onStAv2PO1yph+gtObbjxivAn2f3aVa3nzJ27ldK8aax1IxLDTTp5Tk8LnrN3TcdNy+r5iBkRiGGmhNK0RGTSfkgmkZDNSBCEJgpJEI6wuwCSLtgI7wBcBXbuswnmuwKuV04khkOfkzf7605OC/cSnQu5Z+ZcXgUUo6AvZ4ImDWaQsx0t4wFulv/OPv6XehvY6W11ewGq6AWw3OAZg7olBtWyyr6i3vBIiRidmYW1bT6hTo4oyTBVr+z0NK+ol1MEc4oSHAqKNqRLh308Dzun5eH/i97uIbG7bh7Cijx0v3h4Ah52CzwkkSjKpQEYxgVOivTAbSLGnNEfOFc3lJQSvsrqI8ESmfK3p/uy3GXTva5sla/x3GKyKqtKUF3JqldinEAM+VMaJ18zfrRxdO11WRMy17Mp/tElo+MUQTv7agcCK2NegWuA0DElz5hGXLtiC6LBAIi/BnKsUzXJwi1saqbk0Z95YS4GbRf78JrHuch1GQ+cG4ztCjB+ztqxcjxxQLnNm5m1d3o2pY6etXfbOUUNz9qdKotBn7N81NOy/VREX1Q8BRXLVtS8UBYi8dyPLE56rwu5e3ljXU3k/x9YfENfPBz5M3wlpP5M5p3NvUQzBD+JwgXL+z/rF4gPTt6RKNHiF1bxrUd8qBqm/NQJ9ll8R5hIh5Stcx/96zdRRX9bzF7EXG/b1568fAvxmJ9p8ZZbLymrO9I9/GbKt04xYjZXeOjrZyvq7ou0Vpy9Bt2jao7aA3C3agAuZ0xDpUVx4Uv7qSzKWvKEiK7LTAxA4/GmQiuEBTlS4+aJhmJQOi7W7Q0T5+/+uS3Wqtv99Tl/7+KcXy4yAO8iIgCsOgXbUgw0EwFg2fpdsxFAeX70Es8LsxGt9WuOUX2OkZsJeyVzDNBkmNEDy1AsDf6HWtawx0xBbf5EeJnq+1SGz2/bIFCSX3S91Yzhqyxcmvp8FPpxTEa7SvRtK8WmdPdgu3rxLhqNzwu3nJ5ppt5G+/ZZq9bbqOPYitxm621YYTHXUMfZ4pjZY59bmNXgcdBzmx7CCiu9l4ZxlezYcJAsLmLuTIqjBZMIZHIc2PQCNSe+U2yK5wgAgLXRV0dKtF2qXZISUz9rxtqHnbw7PCWmmJqUqPZpdUq8Bl7n4LSYWed2ku7ZbV8jOasCTP/yZe/27oceosrn5LZzZE5u509jeQ3n5OJpPjKWFl6RmH9FpIQzeRvVd35HNM3PpBIbmx+bofv/AA==&lt;/diagram&gt;&lt;/mxfile&gt;" style="background-color: rgb(255, 255, 255);"><defs/><g><rect x="10" y="125" width="200" height="45" rx="6.75" ry="6.75" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="225" y="220" width="160" height="160" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="305" cy="260" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="265" cy="340" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="345" cy="340" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 265 320 L 305 280" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 305 280 L 345 320" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><rect x="225" y="0" width="60" height="30" 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: 58px; height: 1px; padding-top: 15px; margin-left: 226px;"><div data-drawio-colors="color: rgb(0, 0, 0); " 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;">inode tree</div></div></div></foreignObject><text x="255" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">inode tree</text></switch></g><rect x="225" y="200" width="60" height="30" 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: 58px; height: 1px; padding-top: 215px; margin-left: 226px;"><div data-drawio-colors="color: rgb(0, 0, 0); " 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;">index tree</div></div></div></foreignObject><text x="255" y="219" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">index tree</text></switch></g><ellipse cx="305" cy="60" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="265" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="345" cy="140" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 265 120 L 305 80" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 305 80 L 345 120" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 210 345 L 230 345 L 225 345 L 253.63 345" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 258.88 345 L 251.88 348.5 L 253.63 345 L 251.88 341.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="0" y="330" width="210" height="30" 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 flex-start; width: 208px; height: 1px; padding-top: 345px; margin-left: 2px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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 color="#ff0000">put<br /></font>key: name-&gt;value (filename)<br />value: gearsDirectory-&gt;INodeNumber</div></div></div></foreignObject><text x="2" y="349" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">put...</text></switch></g><rect x="225" y="20" width="160" height="160" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/><path d="M 210 145 L 253.63 145" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 258.88 145 L 251.88 148.5 L 253.63 145 L 251.88 141.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="10" y="130" width="200" height="30" 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 flex-start; width: 198px; height: 1px; padding-top: 145px; margin-left: 12px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><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 color="#ff0000">put</font><br /><div><span>key: gearsDirectory-&gt;INodeNumber</span></div>value: newDirectory</div></div></div></foreignObject><text x="12" y="149" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">put...</text></switch></g><rect x="0" y="322.5" width="210" height="45" rx="6.75" ry="6.75" fill="none" stroke="rgb(0, 0, 0)" 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%">Text is not SVG - cannot display</text></a></switch></svg>
\ No newline at end of file
--- a/slide/slide.html	Mon Jan 31 18:55:49 2022 +0900
+++ b/slide/slide.html	Mon Jan 31 23:43:55 2022 +0900
@@ -7,7 +7,7 @@
 <html>
 <head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8">
-   <title>GearsOSにおけるinodeを用いたFileSystemの設計</title>
+   <title>GearsOSにおけるinodeを用いたFile systemの設計</title>
 
    <meta name="generator" content="Slide Show (S9) v4.1.0 on Ruby 3.0.3 (2021-11-24) [arm64-darwin21]">
    <meta name="author"    content="又吉 雄斗" >
@@ -70,7 +70,7 @@
       <tr>
         <td>
           <div align="center">
-              <h1><font color="#808db5">GearsOSにおけるinodeを用いたFileSystemの設計</font></h1>
+              <h1><font color="#808db5">GearsOSにおけるinodeを用いたFile systemの設計</font></h1>
           </div>
         </td>
       </tr>
@@ -142,9 +142,9 @@
   <li>当研究室にて,信頼性と拡張性の両立を目的として開発している</li>
   <li>Gearという概念があり,実行の単位をCodeGear,データの単位をDataGearと呼ぶ</li>
   <li>同様にGearの概念を持つCbC(Continuation based C)で記述されている.</li>
-  <li>軽量継続を基本とし,stackを持たない代わりに全てをContext経由で実行する</li>
+  <li>軽量継続を基本とし,stackを持たない代わりに全てを従来OSのプロセスに当たるContext経由で実行する</li>
   <li>ノーマルレベルとメタレベルの処理を切り分けることができる</li>
-  <li>OSとして動作するために今後実装しなければならない機能がいくつか残っている.</li>
+  <li>OSとして動作するために今後実装しなければならない機能がいくつか残っている</li>
 </ul>
 
 
@@ -157,6 +157,15 @@
 
 <h3 id="codegearとmetacodegearの関係">CodeGearとmetaCodeGearの関係</h3>
 
+<ul>
+  <li>ノーマルレベルとメタレベルの存在
+    <ul>
+      <li>CodeGearがDataGearを受け取り,処理後にDataGearを次のCodeGearに渡すという動作をしているように見える</li>
+      <li>実際にはデータの整合性の確認や資源管理などのメタレベルの処理が存在し,それらの計算はMetaCodeGearで行われる</li>
+    </ul>
+  </li>
+</ul>
+
 <div style="text-align: center;">
   <img src="../paper/figs/meta_cg_dg.svg" width="1200" />
 </div>
@@ -169,6 +178,31 @@
   <!-- _S9SLIDE_ -->
 <h2 id="gearsos-2">GearsOS</h2>
 
+<h3 id="context">Context</h3>
+
+<ul>
+  <li>GearsOS上全てのCodeGear,DataGearの参照を持つ</li>
+  <li>OS上の処理の実行単位</li>
+  <li>Gearの概念ではMetaDataGearに当たる</li>
+  <li>ノーマルレベルから直接参照されず,必ずMetaDataGearとしてMetaCodeGearから参照される</li>
+</ul>
+
+<h3 id="contextの種類">Contextの種類</h3>
+
+<ul>
+  <li>OS全体のContextを管理するKernel Context</li>
+  <li>ユーザープログラムごとに存在するUser Context</li>
+  <li>CPUやGPUごとに存在するCPU Context</li>
+</ul>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
+<h2 id="gearsos-3">GearsOS</h2>
+
 <h3 id="contextを参照する流れ">Contextを参照する流れ</h3>
 
 <div style="text-align: center;">
@@ -262,6 +296,20 @@
   <!-- _S9SLIDE_ -->
 <h2 id="unix-like-な-interface-1">Unix Like な interface</h2>
 
+<h3 id="mkdir-1">mkdir</h3>
+
+<div style="text-align: center;">
+  <img src="../paper/figs/mkdir.svg" width="600" />
+</div>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
+<h2 id="unix-like-な-interface-2">Unix Like な interface</h2>
+
 <h3 id="ls">ls</h3>
 
 <pre><code class="language-c">__code ls(struct GearsDirectoryImpl* gearsDirectory, struct Integer* name, __code next(...)) {
@@ -284,7 +332,21 @@
 
 <div class='slide'>
   <!-- _S9SLIDE_ -->
-<h2 id="unix-like-な-interface-2">Unix Like な interface</h2>
+<h2 id="unix-like-な-interface-3">Unix Like な interface</h2>
+
+<h3 id="ls-1">ls</h3>
+
+<div style="text-align: center;">
+  <img src="../paper/figs/ls.svg" width="800" />
+</div>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
+<h2 id="unix-like-な-interface-4">Unix Like な interface</h2>
 
 <h3 id="cd">cd</h3>
 
@@ -314,6 +376,20 @@
 
 <div class='slide'>
   <!-- _S9SLIDE_ -->
+<h2 id="unix-like-な-interface-5">Unix Like な interface</h2>
+
+<h3 id="cd-1">cd</h3>
+
+<div style="text-align: center;">
+  <img src="../paper/figs/cd.svg" width="800" />
+</div>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
 <h2 id="gearsdirectoryの非破壊的編集によるバックアップ">GearsDirectoryの非破壊的編集によるバックアップ</h2>
 
 <ul>
--- a/slide/slide.md	Mon Jan 31 18:55:49 2022 +0900
+++ b/slide/slide.md	Mon Jan 31 23:43:55 2022 +0900
@@ -1,4 +1,4 @@
-title: GearsOSにおけるinodeを用いたFileSystemの設計
+title: GearsOSにおけるinodeを用いたFile systemの設計
 author: 又吉 雄斗
 profile: 河野研
 
@@ -31,20 +31,39 @@
 - 当研究室にて,信頼性と拡張性の両立を目的として開発している
 - Gearという概念があり,実行の単位をCodeGear,データの単位をDataGearと呼ぶ
 - 同様にGearの概念を持つCbC(Continuation based C)で記述されている.
-- 軽量継続を基本とし,stackを持たない代わりに全てをContext経由で実行する
+- 軽量継続を基本とし,stackを持たない代わりに全てを従来OSのプロセスに当たるContext経由で実行する
 - ノーマルレベルとメタレベルの処理を切り分けることができる
-- OSとして動作するために今後実装しなければならない機能がいくつか残っている.
+- OSとして動作するために今後実装しなければならない機能がいくつか残っている
 
 ## GearsOS
 
 ### CodeGearとmetaCodeGearの関係
 
+- ノーマルレベルとメタレベルの存在
+  - CodeGearがDataGearを受け取り,処理後にDataGearを次のCodeGearに渡すという動作をしているように見える
+  - 実際にはデータの整合性の確認や資源管理などのメタレベルの処理が存在し,それらの計算はMetaCodeGearで行われる
+
 <div style="text-align: center;">
   <img src="../paper/figs/meta_cg_dg.svg" width="1200">
 </div>
 
 ## GearsOS
 
+### Context
+
+- GearsOS上全てのCodeGear,DataGearの参照を持つ
+- OS上の処理の実行単位
+- Gearの概念ではMetaDataGearに当たる
+- ノーマルレベルから直接参照されず,必ずMetaDataGearとしてMetaCodeGearから参照される
+
+### Contextの種類
+
+- OS全体のContextを管理するKernel Context
+- ユーザープログラムごとに存在するUser Context
+- CPUやGPUごとに存在するCPU Context
+
+## GearsOS
+
 ### Contextを参照する流れ
 
 <div style="text-align: center;">
@@ -106,6 +125,15 @@
 
 ## Unix Like な interface
 
+### mkdir
+
+
+<div style="text-align: center;">
+  <img src="../paper/figs/mkdir.svg" width="600">
+</div>
+
+## Unix Like な interface
+
 ### ls
 
 ```c
@@ -125,6 +153,14 @@
 
 ## Unix Like な interface
 
+### ls
+
+<div style="text-align: center;">
+  <img src="../paper/figs/ls.svg" width="800">
+</div>
+
+## Unix Like な interface
+
 ### cd
 
 ```c
@@ -148,6 +184,14 @@
 }
 ```
 
+## Unix Like な interface
+
+### cd
+
+<div style="text-align: center;">
+  <img src="../paper/figs/cd.svg" width="800">
+</div>
+
 ## GearsDirectoryの非破壊的編集によるバックアップ
 
 - GearsOSにおける永続データは非破壊的な編集を行う木構造を用いて保存する
--- a/slide/slide.pdf.html	Mon Jan 31 18:55:49 2022 +0900
+++ b/slide/slide.pdf.html	Mon Jan 31 23:43:55 2022 +0900
@@ -7,7 +7,7 @@
 <html>
 <head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8">
-   <title>GearsOSにおけるinodeを用いたFileSystemの設計</title>
+   <title>GearsOSにおけるinodeを用いたFile systemの設計</title>
 
    <meta name="generator" content="Slide Show (S9) v4.1.0 on Ruby 3.0.3 (2021-11-24) [arm64-darwin21]">
    <meta name="author"    content="又吉 雄斗" >
@@ -55,7 +55,7 @@
       <tr>
         <td>
           <div align="center">
-              <h1><font color="#808db5">GearsOSにおけるinodeを用いたFileSystemの設計</font></h1>
+              <h1><font color="#808db5">GearsOSにおけるinodeを用いたFile systemの設計</font></h1>
           </div>
         </td>
       </tr>
@@ -126,9 +126,9 @@
   <li>当研究室にて,信頼性と拡張性の両立を目的として開発している</li>
   <li>Gearという概念があり,実行の単位をCodeGear,データの単位をDataGearと呼ぶ</li>
   <li>同様にGearの概念を持つCbC(Continuation based C)で記述されている.</li>
-  <li>軽量継続を基本とし,stackを持たない代わりに全てをContext経由で実行する</li>
+  <li>軽量継続を基本とし,stackを持たない代わりに全てを従来OSのプロセスに当たるContext経由で実行する</li>
   <li>ノーマルレベルとメタレベルの処理を切り分けることができる</li>
-  <li>OSとして動作するために今後実装しなければならない機能がいくつか残っている.</li>
+  <li>OSとして動作するために今後実装しなければならない機能がいくつか残っている</li>
 </ul>
 
 
@@ -141,6 +141,15 @@
 
 <h3 id="codegearとmetacodegearの関係">CodeGearとmetaCodeGearの関係</h3>
 
+<ul>
+  <li>ノーマルレベルとメタレベルの存在
+    <ul>
+      <li>CodeGearがDataGearを受け取り,処理後にDataGearを次のCodeGearに渡すという動作をしているように見える</li>
+      <li>実際にはデータの整合性の確認や資源管理などのメタレベルの処理が存在し,それらの計算はMetaCodeGearで行われる</li>
+    </ul>
+  </li>
+</ul>
+
 <div style="text-align: center;">
   <img src="../paper/figs/meta_cg_dg.svg" width="1200" />
 </div>
@@ -153,6 +162,31 @@
   <!-- _S9SLIDE_ -->
 <h2 id="gearsos-2">GearsOS</h2>
 
+<h3 id="context">Context</h3>
+
+<ul>
+  <li>GearsOS上全てのCodeGear,DataGearの参照を持つ</li>
+  <li>OS上の処理の実行単位</li>
+  <li>Gearの概念ではMetaDataGearに当たる</li>
+  <li>ノーマルレベルから直接参照されず,必ずMetaDataGearとしてMetaCodeGearから参照される</li>
+</ul>
+
+<h3 id="contextの種類">Contextの種類</h3>
+
+<ul>
+  <li>OS全体のContextを管理するKernel Context</li>
+  <li>ユーザープログラムごとに存在するUser Context</li>
+  <li>CPUやGPUごとに存在するCPU Context</li>
+</ul>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
+<h2 id="gearsos-3">GearsOS</h2>
+
 <h3 id="contextを参照する流れ">Contextを参照する流れ</h3>
 
 <div style="text-align: center;">
@@ -246,6 +280,20 @@
   <!-- _S9SLIDE_ -->
 <h2 id="unix-like-な-interface-1">Unix Like な interface</h2>
 
+<h3 id="mkdir-1">mkdir</h3>
+
+<div style="text-align: center;">
+  <img src="../paper/figs/mkdir.svg" width="600" />
+</div>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
+<h2 id="unix-like-な-interface-2">Unix Like な interface</h2>
+
 <h3 id="ls">ls</h3>
 
 <pre><code class="language-c">__code ls(struct GearsDirectoryImpl* gearsDirectory, struct Integer* name, __code next(...)) {
@@ -268,7 +316,21 @@
 
 <div class='slide'>
   <!-- _S9SLIDE_ -->
-<h2 id="unix-like-な-interface-2">Unix Like な interface</h2>
+<h2 id="unix-like-な-interface-3">Unix Like な interface</h2>
+
+<h3 id="ls-1">ls</h3>
+
+<div style="text-align: center;">
+  <img src="../paper/figs/ls.svg" width="800" />
+</div>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
+<h2 id="unix-like-な-interface-4">Unix Like な interface</h2>
 
 <h3 id="cd">cd</h3>
 
@@ -298,6 +360,20 @@
 
 <div class='slide'>
   <!-- _S9SLIDE_ -->
+<h2 id="unix-like-な-interface-5">Unix Like な interface</h2>
+
+<h3 id="cd-1">cd</h3>
+
+<div style="text-align: center;">
+  <img src="../paper/figs/cd.svg" width="800" />
+</div>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
 <h2 id="gearsdirectoryの非破壊的編集によるバックアップ">GearsDirectoryの非破壊的編集によるバックアップ</h2>
 
 <ul>