Mercurial > hg > Papers > 2022 > matac-thesis
changeset 49:dcd42e72f474
...
author | matac42 <matac@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 03 Feb 2022 01:24:39 +0900 |
parents | 030e6f1456da |
children | 255000b82c41 |
files | slide/figs/inode.svg slide/slide.html slide/slide.md slide/slide.pdf.html |
diffstat | 4 files changed, 66 insertions(+), 91 deletions(-) [+] |
line wrap: on
line diff
--- a/slide/figs/inode.svg Wed Feb 02 22:10:46 2022 +0900 +++ b/slide/figs/inode.svg Thu Feb 03 01:24:39 2022 +0900 @@ -1,4 +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="822px" height="272px" viewBox="-0.5 -0.5 822 272" content="<mxfile host="app.diagrams.net" modified="2022-02-02T12:47:50.918Z" agent="5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36" etag="B7xc20-EuSjhntMfO2k_" version="16.5.2" type="device" pages="4"><diagram id="AAaulOYO_kfhROZJ8ttr" name="Page-1">7Vtbb+o4EP41kXYfinIhITwCpT0rUbXaHp2zfXSJAZ+amHVMgf76HSc2uZe0h0vZVqqEPRkb55vPM+MxNZzBfH3N0WJ2wwJMDdsM1oZzadi21bY9+JCSTSLpWHYimHISKKVUcE9esBKaSrokAY5yioIxKsgiLxyzMMRjkZMhztkqrzZhNP+tCzTFJcH9GNGy9CcJxCyR+nYnlX/DZDrT32x53eTJHGll9SbRDAVslRE5Q8MZcMZE0pqvB5hK8DQuybirmqfbhXEciiYDJr8e/vrOxishbnrXd87F7eh2dGEp8zwjulRvrFYrNhoCzpZhgOUspuH0VzMi8P0CjeXTFRgdZDMxp9CzoDkhlA4YZRz6IQtBqR8Jzp626DkgKS9dvc0z5gKvMyL1KteYzbHgG1DRT7sKVsUrT3VXqZGsjpLNsgbS45AixnQ7dYodNBR8b4FyN5IwC/AW70YRRYuEzBOylsgfBkPbzWPolzFsV0DYPhSC9vkhaOURtCpoeFQInfODsPvBIGzgEXEY9GRsSX1cBra8uwRg+OYf2Wm5uvugNOPO5TqrebnRvTURmWHQe8g8SQfJjh7zBvtEbMnHePdeFIhPsdjt9XCQC6Nla2es6VZYU8s4pkiQ53zwrTKx+oY7RuDNtmRq+3kyOV6BJcl7q1HZYFmYyHUKE1mFiRJgShPFjNu+9vtJ2NkvCSvJZL1KpjrimjuIu08S6oRvFwmdLxIegoR+iYQkhARfWoRjXCIkOHyRZ2HChUI6WJEhIkqmIXTHwBAM8r4MHwSS8J56MCdBQOtCVp7rExYKdYywOocKWm2vYJlyzPIrCOYcKmZ1KywVwKt8Wap4Tji1pfQWPqMMzbXzEJ76mGCd30mrGBJOnuTqKswZYeh6Hw3DJoet//9JwWqapWnX90HStI67pzTNN0+bplnt/fLwXA8LZlMe2l88PAgP3RIPnzBM2AMZyD0qc85HniOm9+9S1r/jXPAiipNBqW51FuuYDPo5tKbyU80tdXRZ/VOmtXYhodgWIk+W13bLPgf2173qMi5mbMpCRIeptABcqjNibKEs+AsLsVFwoqVgeftqX2VlPFXqt3b5qpynapm+syvSyt4d5gQgkyzZvwvzm7owr6ELa+ybfs/45UqBXL9tZvf/592sVsExVySu3jH3qj7Pnd2lX7HsUnXpV4Xk4S79NHL1zP/UYcrp5A1muccLU/iHu7ryh5fPouN/cwc/Xtbh7UWZ6EeMUsfIqJuatRA53nlJ1G4Yr5KfS/xGeIqHwgkGbTIKC5nJRvWZtWs7+SSpU/iFREHfK2Tib9XXfr5Ov5jpF/ShkbzhXrNyu3w6zPqmN2flr6Xk8fXAIRwexRNxBu6u3dmdlVume8xQX75IrDFStCJzihJDSKzUE4ndeEZoMEIbtpTLjQQaP+lef8Y4eQF9lJoWcY20Y+Y07uVINSfHkld3Gm2rILpB65ziCEVCr4ZRihYReYzXJwfOwf2QsM+EYHNt7gyXAjxBSyqORQKvWOu1K0hQVajcKu6fBeX8/IpQeZH3fbOovR7a9yaNYH+ScDqK1S7bqeRvhYEUMRg+oXGhagYDMczQV34e1ub24Q9QGsio6MJaB9C30j78SXUuBiyE5SMSWxEDeVZYEgicgkACPW6p/R5GvL7RdvOk/iaqkhaH8w3lW0M43M5JFBEWfpHiJKSoOtEclRR64gwpWq3WFxtOwobuEdlQeVxyTnlcel9Rr2X5fr6w5zn2ewp7Rz1JOU0PUmY1YfZe56ukQ/ko8QdsdhyiOTaGjuFbhj+wVas3NIau0TONfls2gMq+/+cBjgaHqIXU7NMK09Zu3W3NL7t3j1rqKN/GJE1lnr5uXCU/6tJWiz0pAKrtKY3ngyFdreHohqd12nHDNvz+J7BvzS86dK0ga2/H3I+9oZv+m0hSF0j/2cYZ/gc=</diagram><diagram id="s08jDtw-m_Aoh3yq8LbV" name="Page-2">7Vpbc9o8EP01zLQPydgyNvAYLmk70y+TKZ02eeoILIwS23KEHEx//SfZku+AW+5p8hJ0LOty9uyuVtAyBl70icJg/h+xkdsCmh21jGELAL0NLP5PIKsE6eggARyKbdkpA8b4N5KgJtEQ22hR6MgIcRkOiuCU+D6asgIGKSXLYrcZcYuzBtBBFWA8hW4V/YltNk/QLuhk+GeEnbmaWbd6yRMPqs5yJ4s5tMkyBxmjljGghLDkkxcNkCvIU7z86Oq/tf6D9jyMNH84+/V12PGvksFu/+SVdAsU+WzPQ3eTsV+hG0rCWsBy+Sz9GeGTCbu4hMZPrJdQbLXfAsZspvG/PKQt2EpSrkAxwNUiFsQN76B3gijumr1kOeJ/EDI154TuNJIahpOQrD6Bn9EqedGHHrriKPQCDsfPko0D7cMMu0g8/7intUhGRR8HQboYYsrlTeiqtIAvd9zl7kJvgqiUWTolYCgSXebMczmg848LRskzGkib+MRHYknYdUsQdLHj86aLZvFiEGWY+8SNhD1s22KS/nKOGRoHcCpmXPIIwDFKQt9GQjWa3K/0ar2TrkC5khHvuJE6pYrFUlCU802p1k+IeIjRFe8inwJNOp6MPEZXtpeZH4OexOY5HzYkBmXocNKhM/fgH6SH1HvL6LPzcL/87oHJeBmS8OVq8m2UbiHvLCWTZeTpa+jNWVNwO0j9y7i9jb2q1qDHo13vmUXarSrthlZDe+dQtGv/Au1AL9Ku19AOugeivXYLKkWuzw3NouPaMH2QDLMpvZTyQj7Sb0wgCrbx6+67XgTQX8PEX46c5rfmiWbjNjlct0gOxwTsc+m5LOmjZbr0tQs8wwR5xBABiglRr0uInQMlxPoQ8SeRWWsQmU8ZgU2tGIFTKnP0plE5T28K7p1fYzu/fBReSq2Tao5buAiS+mqGI2GPYzJrlZjtVZlt1xDbPhSv7TfCKygd1WoUe1RerbfBq6WdGa91J7Eyr759I65LssiZ47IYhDlbdPUgGtemaj7KnnFjGOV7DleqFWGWe423HnNPspdEQ72zq9EWJKRTtN2VGaQO2jSeDKXILlwXVSWQM7FZY2KFUeRChl+Ll0x1dpcz3BMcn5OkwjqlIsssn+KTfcu38rc6pYG67dJAoDRQQkxloFiG6bb/Xpl190c7KLNWYfpGha1Ts7ZFzQdXptFQmda7Mg+hzF5FmdjnFZCwCEWootLdS4kplw2vrS70ts3UwHXRYO1q0uuaVd0drLjQq/c+mFMVvVuwqQVPb8IGN6aXcCAsFzCnrl/Ud3AXz2upgNFPfdDW30jFXa5gTk9sk5L7Hy1hlDdvPSmqcHqmR0VjX0dF48hHRfXVy3sVs15z28V53hX2JYjzyX0Jb4fe3dR/ep2YxurxW9BXFxx5KXKGx7JJKJsTh/jQHWVoSY9Zn6+EBFKKT4ixlTyowpCRoqCVhPV8lEzlvFXCRqco4msLmNsis2jdI4o5X+IMfiR1dxuqu91Q3I1Vu1s2rRa3FZVc7hcvR/3epdbn9AqbZ+pzB3cQ9SOA/Qm/Psqa6uSpDqwqfO8cZXkz+41e0j37paMx+h8=</diagram><diagram id="_SMWdJT_P9braKPgiXsX" name="Page-3">7Vtbd6M2EP41Pqd9cA5INsaP8SVpT7N7ts2mm/QlhxjZVoIRFTjG/fWVjAQIcMA2kMvGL7YGMUKfvpnRDHIHjlfhJbW85RdiI6cDNDvswEkHAL0HDPbFJdtIMtBBJFhQbItOieAa/4eEUBPSNbaRr3QMCHEC7KnCGXFdNAsUmUUp2ajd5sRRR/WsBcoJrmeWk5f+wHawjKQmGCTy3xBeLOXIujGMrqws2VnMxF9aNtmkRHDagWNKSBD9WoVj5HDwJC7hzZ+TzXRLnnz30nlc3Y9v4KgbKbs45JZ4ChS5Qb2q5dyeLWctAOsAw2GjjOaEDcbXxSF0d8X4d82nOuoAOJ9r7JMWaX6wFZBLIVfQ9XeEOGcd9IEX7romNxkL/r1AgRyTPX00bHRFih/oSQM8oe2uh2GtPNZ0H3wvpdz3LPfE57eoP8GUsZfQbTceZ3fx96/Mor6uVw+IpiYZjSknCZThQYBCLl8GK4cJdP6IASVPaCxWwiUu4o+HHScjshy8cFnTQXOu4RnRADNLOBfiFbZtPshos8QBuvasGR9xw+yeyShZuzbiXNHE3IUt64P4CaQBwfixSzkpuMsfBYUpixQcvURkhQK6ZV3k1aGgpPA30BTtTWK9YNCPZMuU5ULRzxIOYxGrToyC/RB2cYj5mWU2Uo07OeI0amlHmplqMZprrVCG0REMQPuFERDx67/uVVtK7PoI2x5BocrPQQE9pVetm550rHn/PBq0d3v7Y3VzP3r+W8NdWMDODPAJVPoeMFNrwpdwHFMRXlzsCFjob1r0CmZf9QpFsJsFsPebgh38DLADletGAeiwIdCLJzA8BHWtAuqviW4fqKQu4LRuFMCrm03hexCp3zq8sT94M/BWcNVMC8uM9sW8dOj0vShdmuOQL0ebEbCnAjvMA9srwLXXFKy9DwKrpsKqFxC2VVyND4Kr+cZwHVTA1bXPefEj8ZspLFUXzNCi21veOOvL5p3ouWtMwnTPyVa2QhykbmOtu9SV5CbekPecumg+WdMZKjflwKI8XSn1pMhWij95CqSWuP/CRoUixwrws1oyKlp3McI3gncpmwzkA5Vh8e5UqojmLe5K12gyiozMhguCjKIImJyiHQ3jaR/PzKJM9wRmFjJMf5Fh+9islbC5cWbCisw0PpnZBDPzG3/sEpvXIQKKUI6lp9fQZow2iL7XKlo2tejlQ57Zag0tX2fGDKjwc/325C5G6foNC7xGc+un59bvXe4F+5k6UoupS2EVScujyALHtWgSGizJgriWM02kGY4mfa4I8QTCjygItoK51jogKv4nxmWgx1tLfl9XOyvdavLWN0QxA43bZGxcRQWvxiO5fIFZGspluC2N5acGaROe9VjElx+gUBQMh2daRmfDwVYi9O6tvada+6tnfvoHqQAZ4K0BW6UG9JPm1JX9nV7V37WTu5j6nnc+h+YuZmYz1XbuIufxmVbv51w5Od9WyefjkLOoylvTyZijjxGo52NqOQRU26QEULzP58mfOjcVeqZOH78PSb9ubjfrHeT9dHvpmfx9p/j6Mv+uePczzYTH5GbNu32zotsHFb1+ZXdelRD699HVHxje3KPF1V+aBTa4v5XF3XfEB5ada5rxPkghI1/5XmD4Wqx4sU5Q+wHBOH4eGmiSk3xJtFJPv7poE+s7/vxe++GpxeKBltmYFYWjporohcXCKjXYJI2YOZbv49lLmUT1ElwqfzCAeUgGUehKDluzjJmrDmL/mcjXSg2goavEyVY9qqYGcJhRlD1XV19qYE697+HscTa5fnj+YoHhud+dVjkNdjjfXt5bnpjbGiBbmtbgUbFuD/HqC3VVI53xqkzOnsU3jmRyL3NiDOp1MZk1k3/gRN2T/zHB6f8=</diagram><diagram id="HHLeNmLiLjBSiti2kdQe" name="Page-4">7Vtbd6o4FP41rjXz0C4SLuJjr6dz6/RMZ9ZpzxuVqJwiwRAr9tdPIuESQI2KWHvsS8mG7JC9v30ldvSrcfyFOOHoL+wivwM1N+7o1x0IgQEt9o9T5gmlC2BCGBLPFQ/lhEfvHQmiJqhTz0WR9CDF2KdeKBP7OAhQn0o0hxA8kx8bYF9eNXSGqEJ47Dt+lfrNc+koodqwm9PvkDccpSsDq5fcGTvpw2In0chx8axA0m86+hXBmCZX4/gK+Vx4qVwevd+1t/fb2eMFRC4mN0/Rf+gsYXa7yZRsCwQFdGvWD1/f9Zd/gnhyd9G7/ePH091kgs+AnfB+c/ypEFgHWj5b5XKA2WJs13QuRGlNpji9cRYtFH3BHgDdMM5vsquh+F/k0sc+JhKXDtQHA439FUnbrjZENF2QCSBZU36PF5JSXtE8YRU4Y3TGqM445Cz4vUQMUPtl4PmI3/91KVsovS2kKOb0ER37jADYpeN7w4Bd+2iwYI0I9RgsLwR57Lkun3w5G3kUPYZOn3OaMSNkNIKngYu44jQ2iijBrxl69Wz5tYAQwOFLo7hgDgIgXxAeI0rm7BFxVxdQT21dDGe54WTWMCoYTTrNEbY6zBjneGQXApIbwDNdbDk8mwXWAi9bYWuHBVJACiAGL1FYYB6FTrDj+zskuvYIc66YzEuA/+2eOfz76fgFkcImkzWVkZ7g80poIsABhzWzIL9Eas4i+N5FqAHdVi0E9GQT0a0aG+mabdqIUWMjJZ3l0gNL5FtQJxfuVWZW+u3twphqNXpAPdglPZg1erBrfJW5Nz3oh9NDe3KHstjr0K+3KfW6ALFU6JqC0A8pXBOa6+IvsGqkmxlD4+IFn0m8mTw/jHjhevEyLqxUWhYWi/lmFCb108CLuTraTBtLeWOvKlijRq7GvsSq4ImPQaywlGuAGsC2KlejKkaXFdtiiAkd4SEOHP8mp5YSt/yZPzEOhYh/IErnIo1wphTLCkCxR5/49HNTjJ4Ld65jwXkxmKeDgG03mWSBXkp4Lt7NJy5G0swHRDwmMUQEcWmmuisWIjwlfbRC4iIeUIfwMmSFnxZdGq6PldAiyHeo9yY3RxoHivk5DFDvfjADtBTkGrgXvG2WB9iCLGVjLFiJWbQRsM5Gai1SW2mRe7cUXdFSoKKhFFRsrkhole1JrPCAvUXfIs34rFIZ0y1BJ9m3mFXs7pUYWaDECJYYJYKpMFrAMNv29sjsNovM3Xy+uYnH3zsyoSIyzRMy94HMaofbC7DLu7yUIFRB6e7trT6DDU8djrPBVa5BjWrIs9tsb/Vq1OeyrZzUp1Tj1qmvzQ5+avzHngqatmwWLZa4vddwMrrEf1s3T/f2LJzE3+/+TfteR1WKAUMKzGfauWZ1t6nHVM2rFEobjOnpR/D16eZB67D0NY/e+gzZ+g5eiIFP0mKy4EcTrMLXrJ+1xFV2OmnQ/SClhA1kkG1dSthWiVHLpQRQ6Wv9pFVuirn14NRP4NwLOOuagw2dIdn6zJR8kqSR4zKNbUoIij9zOiPTZFJRPptRVyxltHaq0G7VT7dXLqXXz5KvX+ffJe9+rtn6NpXS/t2+rer2Fb1+S4VR7+gAwctlzToOVEDVZEA1UW0HFSnjQgjNIt+mIWLHKJcHJ/lYaIBm2Uucws7KzrUOasJOu0czVdoveb3Q950o8vqrSoZlZwLzUsKChnoxwQbrfUPxMIUhO6BtnE/TAaj+5INKa844ZN1hrPssplp36D0gMyqftdxz3QGrRfFKX9mfEq76ghfTFrO0Pbu2pr7rFMxP09IjuQdzekbpe49ek2vrrX7xgZsdUtnc6WVSz50eMK2i0ztvwu01nRKpJsCHcT/ZeFP3Y1p2PQDbcj/VkyfegMs59iJ6ciOq3wG0Uu5U83OKuqPRW3gRNsx/M5mgIP/lqX7zPw==</diagram></mxfile>" style="background-color: rgb(255, 255, 255);"><defs><clipPath id="mx-clip-684-121-132-30-0"><rect x="684" y="121" width="132" height="30"/></clipPath><clipPath id="mx-clip-684-151-132-30-0"><rect x="684" y="151" width="132" height="30"/></clipPath><clipPath id="mx-clip-684-181-132-30-0"><rect x="684" y="181" width="132" height="30"/></clipPath></defs><g><rect x="190" y="31" width="170" height="190" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="270" cy="71" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="230" cy="151" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="310" cy="151" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><path d="M 230 131 L 270 91" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 270 91 L 310 131" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><rect x="460" y="1" width="80" 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: 78px; height: 1px; padding-top: 16px; margin-left: 461px;"><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: 17px; 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="500" y="21" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px" text-anchor="middle">inode tree</text></switch></g><rect x="190" y="1" width="80" 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: 78px; height: 1px; padding-top: 16px; margin-left: 191px;"><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: 17px; 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="230" y="21" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px" text-anchor="middle">index tree</text></switch></g><ellipse cx="540" cy="71" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="500" cy="151" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="580" cy="151" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><path d="M 500 131 L 540 91" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 540 91 L 580 131" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><rect x="280" y="181" width="80" 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: 78px; height: 1px; padding-top: 196px; margin-left: 281px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">key: 2<br style="font-size: 17px" />value: 0</div></div></div></foreignObject><text x="320" y="201" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px" text-anchor="middle">key: 2...</text></switch></g><path d="M 160 46 L 179.9 46" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 186.65 46 L 177.65 50.5 L 179.9 46 L 177.65 41.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><rect x="100" y="31" 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: 46px; margin-left: 101px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">get key: 2</div></div></div></foreignObject><text x="130" y="51" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px" text-anchor="middle">get key...</text></switch></g><rect x="460" y="31" width="160" height="190" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><rect x="370" y="121" width="80" 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: 78px; height: 1px; padding-top: 136px; margin-left: 371px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">get key: 0</div></div></div></foreignObject><text x="410" y="141" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px" text-anchor="middle">get key: 0</text></switch></g><path d="M 522.5 211 L 522.5 241 L 650 241 L 650 71 L 750 71 L 750 80.9" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 750 87.65 L 745.5 78.65 L 750 80.9 L 754.5 78.65 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><rect x="470" y="181" width="105" 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: 103px; height: 1px; padding-top: 196px; margin-left: 472px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">key: 0<br style="font-size: 17px" />value: inode0</div></div></div></foreignObject><text x="472" y="201" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px">key: 0...</text></switch></g><path d="M 680 121 L 680 91 L 820 91 L 820 121" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><path d="M 680 121 L 680 211 L 820 211 L 820 121" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 680 121 L 820 121" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" pointer-events="none" text-anchor="middle" font-size="17px"><text x="749.5" y="113">inode0</text></g><g fill="rgb(0, 0, 0)" font-family="Helvetica" pointer-events="none" clip-path="url(#mx-clip-684-121-132-30-0)" font-size="17px"><text x="685.5" y="143">File Type</text></g><g fill="rgb(0, 0, 0)" font-family="Helvetica" pointer-events="none" clip-path="url(#mx-clip-684-151-132-30-0)" font-size="17px"><text x="685.5" y="173">Permission</text></g><g fill="rgb(0, 0, 0)" font-family="Helvetica" pointer-events="none" clip-path="url(#mx-clip-684-181-132-30-0)" font-size="17px"><text x="685.5" y="203">...</text></g><path d="M 330 151 L 395 151 L 479.98 151.07" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 486.73 151.08 L 477.72 155.57 L 479.98 151.07 L 477.73 146.57 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><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: 178px; height: 1px; padding-top: 86px; margin-left: 1px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">(filenameが2の場合)</div></div></div></foreignObject><text x="90" y="91" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px" text-anchor="middle">(filenameが2の場合)</text></switch></g><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: 298px; height: 1px; padding-top: 256px; margin-left: 481px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">valueにはinodeのpointerが入っている</div></div></div></foreignObject><text x="630" y="261" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px" text-anchor="middle">valueにはinodeのpointerが入っている</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 +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="783px" height="251px" viewBox="-0.5 -0.5 783 251" content="<mxfile host="app.diagrams.net" modified="2022-02-02T15:59:23.685Z" agent="5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36" etag="da0Sw5D39VMLHB7iTQc-" version="16.5.2" type="device" pages="4"><diagram id="AAaulOYO_kfhROZJ8ttr" name="Page-1">7Vttc6I6FP41fqwjIKAffenL3rHTznXv7u39lkrUtEDYEKv2198TSAQCVrZVW7ftdKbkcBKT5zw5L4ltWINgdclQNL+mHvYbZstbNaxhwzSNtunAHyFZpxLXMFPBjBFPKmWCMXnGUtiS0gXxcFxQ5JT6nERF4YSGIZ7wggwxRpdFtSn1i58aoRkuCcYT5JelP4nH56m0Y7qZ/AqT2Vx9suF00zcBUspyJfEceXSZE1nnDWvAKOXpU7AaYF+Ap3BJ+11sebuZGMMhr9Nh+nD37TudLDm/7l3eWmc3o5vRmSHN84T8hVyxnC1fKwgYXYQeFqO0GlZ/OSccjyM0EW+XYHSQzXngQ8uAxynx/QH1KYN2SENQ6sec0ccNehZIylOXq3nCjONVTiSXcolpgDlbg4p625WwSl45srnMjGS4UjbPG0j1Q5IYs83QGXbwIOH7HSh3IwmjAG/xbhRRHKVknpKVQP4wGJp2EcNOGcN2BYTtQyFonh6CRhFBo4KGR4XQOj0Iux8MwhoeEYdeT8SWzMflYCu6SwCGrf8VjaatmndSM2kMV3nN4Vq1VoTnukHrLvcm6yQaqs9v2CemCzbBu/ciR2yG+W6vh71CGC1bO2dNu8KaSsawjzh5KgbfKhPLT7ilBFa2IVO7UyST5WgsSdcte+WDpTaQbWkDGdpAKTClgRLGbZb9ehK6+yVhJZmMF8m0jbitHcTdJwlVwreLhNYXCQ9Bwk6JhGZT9AkhyxdmYRiXWAlenxepmBJCywkr0kTkk1kIzQnQBIO8L2IIgUy8J18ExPP8bXGrSPgpDbmsJQz3UJGr7WjmqUhBjQqaWYeKXN2SvYzUXh4s6MteeslQZa/WMe2lyHFC2ZptFjF875LBOL2qSw8P757wqhOZE8LQdj4ahnUKrz+/ajDqZmzK9X2QlM2195SydVrvm7IZ7f3y8FQLh1ZdHppfPDwID+0SDx8xDNgDGeSSOEQB5KKOL3LPe1bgp/NrIY7Ek5zwLE6SQtHLcKNV9hKeZuKvHL+XpLmLoMT1t6e3Pp7yE0huTS0x25xM5rPbqpB4uOy2W/Y8sMvGskkZn9MZDZF/nkk15DKdEaWRNOAD5nwt8UQLTovmVR7LyPmrzHvt8lgFf9Vsdaxd8Va0bjEjAJmogfbvyDp1HZlT05HV9lBvM3757EDMP7fj0/2bOoXMI3zW7dsu7t6q26yjlqbKm5zcvaB+KFOFpFOB5OHuBRVy9bbCpw9klquVdu0KCx7qWA1H/zz89ziOBu5V/6/eUzS0L3+dlZl/xDjWapqHT711w4q2YlEDgE1+XjC4FnReeePUrhnq0u9evCGyJV2hBELrnEIkUuF4e2pua1e9pqt93ULTd2z7TfrK32/T10sFTR8e0hXuNa03y+Wl5rb2nNKnNw2JbSC/+rROse3WyO6rwtrhEoTyDaW0lmajeEkCH6V2EFDJNwK6yZz43git6ULMNuZo8qha/Tll5Bn0UWZZxBTQVqugMRY95ZgMC37dKrANTXSNVgXFEYq5mg31fRTF5D6Zn+gYgCciYZ9yTgNl7RyVPDxFC58fiwOOfm5s1qzwNor7J0E5y7+AVB4k39fR1mx+33s0hu1JwtkoURu2M8nfEgMhotB96ieHXnPoiGGEvnT5MDe7D7+A0kAEThvmOoC2kbXhV6gziIohTB+RxIoYyLPEgkDgEzji6H5D7dcw4uV9tpsnL1xrHbXwN8v3kFAiBySOCQ2/SPEupKgqg45KCqtcUDabzS82vAsbukdkA/5hLy8658Mn7nau7MGP51V4o76wc0pHg02j0ykeDzqW+Zrjwbp230tRZdWtqVrVhHnraSE0s2+4p1VI9n8C1vn/</diagram><diagram id="s08jDtw-m_Aoh3yq8LbV" name="Page-2">7Vptc6o4FP41zOx+aIcXRfxo1d67O91Op93ZbT/toERMC4TGUPX++k0ggQBBufWl2lu/SA7JIXnynHNykmjWMFx9w248/wt5INBM3Vtp1kgzTaNj2vSPSdaZpGeYmcDH0OOVCsED/AG4UOfSBHpgUapIEAoIjMvCKYoiMCUlmYsxWparzVBQ/mrs+qAmeJi6QV36L/TIPJM6Zq+QfwfQn4svG3Y/exO6ojIfyWLuemgpiayxZg0xQiR7CldDEDDwBC7/OMYP/epRfxmt9Gg0++9m1IsuMmXXP9MkHwIGEdmzaifT/eYGCQdMM+2AfuVqhujH2LwECKdv7NeEDfVKM63ZTKc/WaQvyJpDLoRMwcUiJcSAVjB68SqtWjSyffYfJ0R8c4J30iTUUBCy3mfiF7DOGkZuCC6o1A1jKk7fZQM39d9mMADs/e976gtHlNXxgYsXI4gpvRFeVzrwxy01udsknADMaZZ/0iRgxarMSRhQgUEfFwSjFzDkcxKhCLAuwSCoiNwA+hEtBmCWdgZgAqlNDLg4hJ7HPnK1nEMCHmJ3yr64pB6AyjBKIg8w1uh8vNyqjV7eA2FKVjriVuzkLGZdASvJNjlbvwEUAoLXtIp4281acMdjOdwOl4UZm30um0smbHGZyz2Hn2surIM+cANRG8v4u/94t/w7NCcPywQlrxeT+3E+AtlWKjNWYGc0oCtNJoN2mJuXdX2dGpVyPo+Iul5G3a6jbukK1HuHQl3/FVC3yqgbCtRN50CoK0cg4mNzYGjnGht99EHCy6bYUgkKspvfGD2E2INvu496EbtRAxLv1JwHt/ZRZuMwqVjVSSpOAdhn16UQGYFl3vXGDp5gdDyihyhHQ0MVDXsHioZqD/Ezfllv4Zc/1P+aZQecQynBmztlGd5cuHd8re34Ui00jWpiqoStu4iz3GoGV2w+jomsU0G2X0e2owC2cyhcO58E105loaZg7FFxtT8Hrh3zxHBVLcSquEbegG2VFJ5TwrLshClaeP3ICpddUXziNdPCaCXXHK1FaQWJ1IyWnqQ3RSNWEG12nbQFSvAUbDdl4mIfbNLHXSnwSltFdQpIU9xVTLGQYRC4BL6VN5hU886/cIdgukziDLMrKVa3uojPxs1byTs6VUV2RZFZUZQBU1OU0jAf9vuZqdo72oGZSoYZGxnWxGZ9C5sPzkyrJTPtL2Yegpn9GjNhRBMgNiMYgBpLd88kppQ2NLU60502y+hdltOLTj3oOd067w6WXAgilmbQo6P5msGWM/jxU9hiu/QcFoTVBOaj8xdx/nb2uFYSGOOjF9rGJ8m4qxnMxwPbJuX+RVMYYc1bV4rCnZ7oUtHa11LROvJSUZwyfmUxzZzbTs7TzrDPgZzPwWtyPQpvp9Hz26RrrZ/u4yuxwSFTkSL8wIsIkznyUeQG40Ja4WNR5wahmFPxGRCy5gtVNyGoTGhBYUP2kjmdt1LY6pVJfGmb3W2emZXuAIYUL7YGPxK7nZbs7rQkd2vW7hZN68ltjSXne/By1HMXpc0ZNTRP1OYObiDiDsD+iK/2sla3crbZ7x7Kyy4HneE9tMGfk/VsPB35N8bbtfJeT5tLCjb91U+1yztNLS8ZiEZRdkQ/tjTH1PomO9xnz4Y2cPhDv1dXmrXmFccxw0lSko2rroZLbG1sa86QPXNJPeqcwlF7dXOlwdO05X+jR+pWPJIgo3zQrvJI+9hIUdKznj2Vt8KaKLaJvLpevWGTtRW3IN/HwBp/30O987n8UWVk7WZZ6iCOx1RTdSdEtcx+B1VpsbjpnDne4r64Nf4f</diagram><diagram id="_SMWdJT_P9braKPgiXsX" name="Page-3">7Vtbd6M2EP41Pqd9cA5INsaP8SVpT7N7ts2mm/QlhxjZVoIRFTjG/fWVjAQIcMA2kMvGL7YGMUKfvpnRDHIHjlfhJbW85RdiI6cDNDvswEkHAL0HDPbFJdtIMtBBJFhQbItOieAa/4eEUBPSNbaRr3QMCHEC7KnCGXFdNAsUmUUp2ajd5sRRR/WsBcoJrmeWk5f+wHawjKQmGCTy3xBeLOXIujGMrqws2VnMxF9aNtmkRHDagWNKSBD9WoVj5HDwJC7hzZ+TzXRLnnz30nlc3Y9v4KgbKbs45JZ4ChS5Qb2q5dyeLWctAOsAw2GjjOaEDcbXxSF0d8X4d82nOuoAOJ9r7JMWaX6wFZBLIVfQ9XeEOGcd9IEX7romNxkL/r1AgRyTPX00bHRFih/oSQM8oe2uh2GtPNZ0H3wvpdz3LPfE57eoP8GUsZfQbTceZ3fx96/Mor6uVw+IpiYZjSknCZThQYBCLl8GK4cJdP6IASVPaCxWwiUu4o+HHScjshy8cFnTQXOu4RnRADNLOBfiFbZtPshos8QBuvasGR9xw+yeyShZuzbiXNHE3IUt64P4CaQBwfixSzkpuMsfBYUpixQcvURkhQK6ZV3k1aGgpPA30BTtTWK9YNCPZMuU5ULRzxIOYxGrToyC/RB2cYj5mWU2Uo07OeI0amlHmplqMZprrVCG0REMQPuFERDx67/uVVtK7PoI2x5BocrPQQE9pVetm550rHn/PBq0d3v7Y3VzP3r+W8NdWMDODPAJVPoeMFNrwpdwHFMRXlzsCFjob1r0CmZf9QpFsJsFsPebgh38DLADletGAeiwIdCLJzA8BHWtAuqviW4fqKQu4LRuFMCrm03hexCp3zq8sT94M/BWcNVMC8uM9sW8dOj0vShdmuOQL0ebEbCnAjvMA9srwLXXFKy9DwKrpsKqFxC2VVyND4Kr+cZwHVTA1bXPefEj8ZspLFUXzNCi21veOOvL5p3ouWtMwnTPyVa2QhykbmOtu9SV5CbekPecumg+WdMZKjflwKI8XSn1pMhWij95CqSWuP/CRoUixwrws1oyKlp3McI3gncpmwzkA5Vh8e5UqojmLe5K12gyiozMhguCjKIImJyiHQ3jaR/PzKJM9wRmFjJMf5Fh+9islbC5cWbCisw0PpnZBDPzG3/sEpvXIQKKUI6lp9fQZow2iL7XKlo2tejlQ57Zag0tX2fGDKjwc/325C5G6foNC7xGc+un59bvXe4F+5k6UoupS2EVScujyALHtWgSGizJgriWM02kGY4mfa4I8QTCjygItoK51jogKv4nxmWgx1tLfl9XOyvdavLWN0QxA43bZGxcRQWvxiO5fIFZGspluC2N5acGaROe9VjElx+gUBQMh2daRmfDwVYi9O6tvada+6tnfvoHqQAZ4K0BW6UG9JPm1JX9nV7V37WTu5j6nnc+h+YuZmYz1XbuIufxmVbv51w5Od9WyefjkLOoylvTyZijjxGo52NqOQRU26QEULzP58mfOjcVeqZOH78PSb9ubjfrHeT9dHvpmfx9p/j6Mv+uePczzYTH5GbNu32zotsHFb1+ZXdelRD699HVHxje3KPF1V+aBTa4v5XF3XfEB5ada5rxPkghI1/5XmD4Wqx4sU5Q+wHBOH4eGmiSk3xJtFJPv7poE+s7/vxe++GpxeKBltmYFYWjporohcXCKjXYJI2YOZbv49lLmUT1ElwqfzCAeUgGUehKDluzjJmrDmL/mcjXSg2goavEyVY9qqYGcJhRlD1XV19qYE697+HscTa5fnj+YoHhud+dVjkNdjjfXt5bnpjbGiBbmtbgUbFuD/HqC3VVI53xqkzOnsU3jmRyL3NiDOp1MZk1k3/gRN2T/zHB6f8=</diagram><diagram id="HHLeNmLiLjBSiti2kdQe" name="Page-4">7Vtbd6o4FP41rjXz0C4SLuJjr6dz6/RMZ9ZpzxuVqJwiwRAr9tdPIuESQI2KWHvsS8mG7JC9v30ldvSrcfyFOOHoL+wivwM1N+7o1x0IgQEt9o9T5gmlC2BCGBLPFQ/lhEfvHQmiJqhTz0WR9CDF2KdeKBP7OAhQn0o0hxA8kx8bYF9eNXSGqEJ47Dt+lfrNc+koodqwm9PvkDccpSsDq5fcGTvpw2In0chx8axA0m86+hXBmCZX4/gK+Vx4qVwevd+1t/fb2eMFRC4mN0/Rf+gsYXa7yZRsCwQFdGvWD1/f9Zd/gnhyd9G7/ePH091kgs+AnfB+c/ypEFgHWj5b5XKA2WJs13QuRGlNpji9cRYtFH3BHgDdMM5vsquh+F/k0sc+JhKXDtQHA439FUnbrjZENF2QCSBZU36PF5JSXtE8YRU4Y3TGqM445Cz4vUQMUPtl4PmI3/91KVsovS2kKOb0ER37jADYpeN7w4Bd+2iwYI0I9RgsLwR57Lkun3w5G3kUPYZOn3OaMSNkNIKngYu44jQ2iijBrxl69Wz5tYAQwOFLo7hgDgIgXxAeI0rm7BFxVxdQT21dDGe54WTWMCoYTTrNEbY6zBjneGQXApIbwDNdbDk8mwXWAi9bYWuHBVJACiAGL1FYYB6FTrDj+zskuvYIc66YzEuA/+2eOfz76fgFkcImkzWVkZ7g80poIsABhzWzIL9Eas4i+N5FqAHdVi0E9GQT0a0aG+mabdqIUWMjJZ3l0gNL5FtQJxfuVWZW+u3twphqNXpAPdglPZg1erBrfJW5Nz3oh9NDe3KHstjr0K+3KfW6ALFU6JqC0A8pXBOa6+IvsGqkmxlD4+IFn0m8mTw/jHjhevEyLqxUWhYWi/lmFCb108CLuTraTBtLeWOvKlijRq7GvsSq4ImPQaywlGuAGsC2KlejKkaXFdtiiAkd4SEOHP8mp5YSt/yZPzEOhYh/IErnIo1wphTLCkCxR5/49HNTjJ4Ld65jwXkxmKeDgG03mWSBXkp4Lt7NJy5G0swHRDwmMUQEcWmmuisWIjwlfbRC4iIeUIfwMmSFnxZdGq6PldAiyHeo9yY3RxoHivk5DFDvfjADtBTkGrgXvG2WB9iCLGVjLFiJWbQRsM5Gai1SW2mRe7cUXdFSoKKhFFRsrkhole1JrPCAvUXfIs34rFIZ0y1BJ9m3mFXs7pUYWaDECJYYJYKpMFrAMNv29sjsNovM3Xy+uYnH3zsyoSIyzRMy94HMaofbC7DLu7yUIFRB6e7trT6DDU8djrPBVa5BjWrIs9tsb/Vq1OeyrZzUp1Tj1qmvzQ5+avzHngqatmwWLZa4vddwMrrEf1s3T/f2LJzE3+/+TfteR1WKAUMKzGfauWZ1t6nHVM2rFEobjOnpR/D16eZB67D0NY/e+gzZ+g5eiIFP0mKy4EcTrMLXrJ+1xFV2OmnQ/SClhA1kkG1dSthWiVHLpQRQ6Wv9pFVuirn14NRP4NwLOOuagw2dIdn6zJR8kqSR4zKNbUoIij9zOiPTZFJRPptRVyxltHaq0G7VT7dXLqXXz5KvX+ffJe9+rtn6NpXS/t2+rer2Fb1+S4VR7+gAwctlzToOVEDVZEA1UW0HFSnjQgjNIt+mIWLHKJcHJ/lYaIBm2Uucws7KzrUOasJOu0czVdoveb3Q950o8vqrSoZlZwLzUsKChnoxwQbrfUPxMIUhO6BtnE/TAaj+5INKa844ZN1hrPssplp36D0gMyqftdxz3QGrRfFKX9mfEq76ghfTFrO0Pbu2pr7rFMxP09IjuQdzekbpe49ek2vrrX7xgZsdUtnc6WVSz50eMK2i0ztvwu01nRKpJsCHcT/ZeFP3Y1p2PQDbcj/VkyfegMs59iJ6ciOq3wG0Uu5U83OKuqPRW3gRNsx/M5mgIP/lqX7zPw==</diagram></mxfile>" style="background-color: rgb(255, 255, 255);"><defs><clipPath id="mx-clip-645-121-132-30-0"><rect x="645" y="121" width="132" height="30"/></clipPath><clipPath id="mx-clip-645-151-132-30-0"><rect x="645" y="151" width="132" height="30"/></clipPath><clipPath id="mx-clip-645-181-132-30-0"><rect x="645" y="181" width="132" height="30"/></clipPath></defs><g><rect x="151" y="31" width="170" height="190" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="231" cy="71" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="191" cy="151" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="271" cy="151" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><path d="M 191 131 L 231 91" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 231 91 L 271 131" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><rect x="421" y="1" width="110" 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: 108px; height: 1px; padding-top: 16px; margin-left: 422px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">2. inode tree</div></div></div></foreignObject><text x="476" y="21" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px" text-anchor="middle">2. inode tree</text></switch></g><rect x="151" y="1" width="100" 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: 98px; height: 1px; padding-top: 16px; margin-left: 152px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">1. index tree</div></div></div></foreignObject><text x="201" y="21" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px" text-anchor="middle">1. index tree</text></switch></g><ellipse cx="501" cy="71" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="461" cy="151" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><ellipse cx="541" cy="151" rx="20" ry="20" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><path d="M 461 131 L 501 91" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 501 91 L 541 131" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><rect x="181" y="181" width="140" 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: 138px; height: 1px; padding-top: 196px; margin-left: 183px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">key: filename<br style="font-size: 17px" />value: inum</div></div></div></foreignObject><text x="183" y="201" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px">key: filename...</text></switch></g><path d="M 101 46 L 126 46 L 140.9 46.46" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 147.65 46.67 L 138.51 50.89 L 140.9 46.46 L 138.79 41.89 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><rect x="1" y="31" width="100" 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: 98px; height: 1px; padding-top: 46px; margin-left: 3px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">get<br />key:filename</div></div></div></foreignObject><text x="3" y="51" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px">get...</text></switch></g><rect x="421" y="31" width="160" height="190" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" pointer-events="all"/><rect x="331" y="111" width="110" 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: 108px; height: 1px; padding-top: 126px; margin-left: 333px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">get<br />key: inum</div></div></div></foreignObject><text x="333" y="131" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px">get...</text></switch></g><path d="M 471 211 L 471 241 L 616 241 L 616 71 L 711 71 L 711 80.9" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 711 87.65 L 706.5 78.65 L 711 80.9 L 715.5 78.65 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><rect x="431" y="181" 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: 196px; margin-left: 433px;"><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: 17px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">key: inum<br style="font-size: 17px" />value: inode pointer</div></div></div></foreignObject><text x="433" y="201" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="17px">key: inum...</text></switch></g><path d="M 641 121 L 641 91 L 781 91 L 781 121" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/><path d="M 641 121 L 641 211 L 781 211 L 781 121" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 641 121 L 781 121" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" pointer-events="none" text-anchor="middle" font-size="17px"><text x="710.5" y="113">inode</text></g><g fill="rgb(0, 0, 0)" font-family="Helvetica" pointer-events="none" clip-path="url(#mx-clip-645-121-132-30-0)" font-size="17px"><text x="646.5" y="143">File Type</text></g><g fill="rgb(0, 0, 0)" font-family="Helvetica" pointer-events="none" clip-path="url(#mx-clip-645-151-132-30-0)" font-size="17px"><text x="646.5" y="173">Permission</text></g><g fill="rgb(0, 0, 0)" font-family="Helvetica" pointer-events="none" clip-path="url(#mx-clip-645-181-132-30-0)" font-size="17px"><text x="646.5" y="203">...</text></g><path d="M 291 151 L 356 151 L 440.98 151.07" fill="none" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/><path d="M 447.73 151.08 L 438.72 155.57 L 440.98 151.07 L 438.73 146.57 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="3" stroke-miterlimit="10" pointer-events="none"/></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 Wed Feb 02 22:10:46 2022 +0900 +++ b/slide/slide.html Thu Feb 03 01:24:39 2022 +0900 @@ -118,7 +118,7 @@ <li>Cの下位言語である</li> <li>プログラムはCodeGearと呼ばれる処理の単位で記述する</li> <li>データはDataGearと呼ばれる単位を用いる</li> - <li>ノーマルレベルとメタレベルの処理を切り分けることが可能である</li> + <li>ノーマルレベルとメタレベルの処理を切り分けることが容易に可能である</li> <li>function callの継続の代わりにgotoによる継続を用いる <ul> <li>呼び出し履歴を持たないことから軽量継続と呼ぶ</li> @@ -142,11 +142,9 @@ <ul> <li>当研究室にて,信頼性と拡張性の両立を目的として開発している</li> + <li>CbCで記述されている</li> <li>Gearという概念があり,実行の単位をCodeGear,データの単位をDataGearと呼ぶ</li> - <li>同様にGearの概念を持つCbC(Continuation based C)で記述されている</li> - <li>軽量継続を基本とし,stackを持たない代わりに全てを従来OSのプロセスに当たるContext経由で実行する</li> - <li>ノーマルレベルとメタレベルの処理を切り分けることができる</li> - <li>OSとして動作するために今後実装しなければならない機能がいくつか残っている</li> + <li>ノーマルレベルとメタレベルの処理を切り分けることが容易にできる</li> </ul> @@ -189,13 +187,14 @@ <li>ノーマルレベルから直接参照されず,必ずMetaDataGearとしてMetaCodeGearから参照される</li> </ul> -<h3 id="contextの種類">Contextの種類</h3> +<!-- +### Contextの種類 -<ul> - <li>OS全体のContextを管理するKernel Context</li> - <li>ユーザープログラムごとに存在するUser Context</li> - <li>CPUやGPUごとに存在するCPU Context</li> -</ul> +- OS全体のContextを管理するKernel Context +- ユーザープログラムごとに存在するUser Context +- CPUやGPUごとに存在するCPU Context + +--> @@ -219,7 +218,7 @@ <!-- _S9SLIDE_ --> <h2 id="unixのfile-system">UnixのFile system</h2> -<p>UnixのFile systemはinodeのBTreeで構成されており,xv6もその仕組みを用いている</p> +<p>UnixのFile systemはBTreeを用いたinodeで構成されており,xv6もその仕組みを用いている</p> <h3 id="xv6">xv6</h3> @@ -249,8 +248,8 @@ <ul> <li>2つのRedBlackTreeを用いる <ol> - <li>inode numberとfileのポインタのペアを持つTree</li> - <li>filenameとinode numberのペアを持つTree</li> + <li>filenameとinode numberのペアを持つindex tree</li> + <li>inode numberとinodeのポインタのペアを持つinode tree</li> </ol> </li> <li>カレントディレクトリはgearsDirectory->currentDirectoryに保存される</li> @@ -376,7 +375,7 @@ <div class='slide'> <!-- _S9SLIDE_ --> -<h2 id="gearsdirectoryの非破壊的編集による">GearsDirectoryの非破壊的編集による</h2> +<h2 id="gearsdirectoryにおける非破壊編集ツリー">GearsDirectoryにおける非破壊編集ツリー</h2> <ul> <li>GearsOSにおける永続データは非破壊的な編集を行う木構造を用いて保存する</li> @@ -397,10 +396,9 @@ <ul> <li>gearsDirectoryの実装について説明した</li> + <li>RedBlackTreeを用いてinodeの仕組みを構築し,ls,cd,mkdirを作成するなどして,Unix Likeに構築することが出来た</li> <li>RedBlackTreeのシンプルなinterfaceにより比較的容易に実装を行うことができた</li> <li>形式手法とファイルシステムの機能の両面で信頼性の向上が図れると考える</li> - <li>RedBlackTreeを用いてinodeの仕組みを構築し,ls,cd,mkdirを作成するなどして, -Unix Likeに構築することが出来た</li> </ul> @@ -426,34 +424,23 @@ <li>filenameは一般的に文字列型であるためIntegerから文字列型に変更する必要がある</li> </ul> - - -</div> +<!-- +## GearsFileSystemの今後 -<div class='slide'> - <!-- _S9SLIDE_ --> -<h2 id="gearsfilesystemの今後-1">GearsFileSystemの今後</h2> +### gearsDirectory on disk -<h3 id="gearsdirectory-on-disk">gearsDirectory on disk</h3> +- 現状はgearsDirectoryはon memoryで実装されている +- inodeをdisk上に構築する必要がある -<ul> - <li>現状はgearsDirectoryはon memoryで実装されている</li> - <li>inodeをdisk上に構築する必要がある</li> -</ul> +### GearsShell -<h3 id="gearsshell">GearsShell</h3> +- 現状のGearsOSはユーザーの入力を受け付けることが出来ず,言語フレームワークの様に機能している +- gearsFileSystemなどGearsOSの各機能と接続し,今回作成したcdやlsの様なコマンドを受け付けるGearsShellを作成したい -<ul> - <li>現状のGearsOSはユーザーの入力を受け付けることが出来ず,言語フレームワークの様に機能している</li> - <li>gearsFileSystemなどGearsOSの各機能と接続し,今回作成したcdやlsの様なコマンドを受け付けるGearsShellを作成したい</li> -</ul> +### ファイルのバックアップ -<h3 id="ファイルのバックアップ">ファイルのバックアップ</h3> - -<ul> - <li>レコードのDataをファイルの差分履歴として保持し,日時情報を付け加えることでVersion Control Systemのような機能を持たせることが可能であると考えられる</li> -</ul> - +- レコードのDataをファイルの差分履歴として保持し,日時情報を付け加えることでVersion Control Systemのような機能を持たせることが可能であると考えられる +--> </div>
--- a/slide/slide.md Wed Feb 02 22:10:46 2022 +0900 +++ b/slide/slide.md Thu Feb 03 01:24:39 2022 +0900 @@ -18,7 +18,7 @@ - Cの下位言語である - プログラムはCodeGearと呼ばれる処理の単位で記述する - データはDataGearと呼ばれる単位を用いる -- ノーマルレベルとメタレベルの処理を切り分けることが可能である +- ノーマルレベルとメタレベルの処理を切り分けることが容易に可能である - function callの継続の代わりにgotoによる継続を用いる - 呼び出し履歴を持たないことから軽量継続と呼ぶ @@ -31,11 +31,9 @@ ## GearsOS - 当研究室にて,信頼性と拡張性の両立を目的として開発している +- CbCで記述されている - Gearという概念があり,実行の単位をCodeGear,データの単位をDataGearと呼ぶ -- 同様にGearの概念を持つCbC(Continuation based C)で記述されている -- 軽量継続を基本とし,stackを持たない代わりに全てを従来OSのプロセスに当たるContext経由で実行する -- ノーマルレベルとメタレベルの処理を切り分けることができる -- OSとして動作するために今後実装しなければならない機能がいくつか残っている +- ノーマルレベルとメタレベルの処理を切り分けることが容易にできる ## GearsOS @@ -58,12 +56,15 @@ - Gearの概念ではMetaDataGearに当たる - ノーマルレベルから直接参照されず,必ずMetaDataGearとしてMetaCodeGearから参照される +<!-- ### Contextの種類 - OS全体のContextを管理するKernel Context - ユーザープログラムごとに存在するUser Context - CPUやGPUごとに存在するCPU Context +--> + ## GearsOS ### CodeGear遷移の流れ @@ -74,7 +75,7 @@ ## UnixのFile system -UnixのFile systemはinodeのBTreeで構成されており,xv6もその仕組みを用いている +UnixのFile systemはBTreeを用いたinodeで構成されており,xv6もその仕組みを用いている ### xv6 @@ -92,8 +93,8 @@ ## GearsFileSystemにおけるdirectoryの構成 - 2つのRedBlackTreeを用いる -1. inode numberとfileのポインタのペアを持つTree -1. filenameとinode numberのペアを持つTree +1. filenameとinode numberのペアを持つindex tree +1. inode numberとinodeのポインタのペアを持つinode tree - カレントディレクトリはgearsDirectory-\>currentDirectoryに保存される <div style="text-align: center;"> @@ -199,7 +200,7 @@ --> -## GearsDirectoryの非破壊的編集による +## GearsDirectoryにおける非破壊編集ツリー - GearsOSにおける永続データは非破壊的な編集を行う木構造を用いて保存する - ディレクトリシステム自体にバックアップの機能を搭載することが可能と考える @@ -211,10 +212,9 @@ ## gearsDirectoryまとめ - gearsDirectoryの実装について説明した +- RedBlackTreeを用いてinodeの仕組みを構築し,ls,cd,mkdirを作成するなどして,Unix Likeに構築することが出来た - RedBlackTreeのシンプルなinterfaceにより比較的容易に実装を行うことができた - 形式手法とファイルシステムの機能の両面で信頼性の向上が図れると考える -- RedBlackTreeを用いてinodeの仕組みを構築し,ls,cd,mkdirを作成するなどして, -Unix Likeに構築することが出来た ## GearsFileSystemの今後 @@ -229,6 +229,7 @@ - 現状はgearsDirectoryのfilenameはIntegerの構造で管理されている - filenameは一般的に文字列型であるためIntegerから文字列型に変更する必要がある +<!-- ## GearsFileSystemの今後 ### gearsDirectory on disk @@ -244,4 +245,4 @@ ### ファイルのバックアップ - レコードのDataをファイルの差分履歴として保持し,日時情報を付け加えることでVersion Control Systemのような機能を持たせることが可能であると考えられる - +-->
--- a/slide/slide.pdf.html Wed Feb 02 22:10:46 2022 +0900 +++ b/slide/slide.pdf.html Thu Feb 03 01:24:39 2022 +0900 @@ -102,7 +102,7 @@ <li>Cの下位言語である</li> <li>プログラムはCodeGearと呼ばれる処理の単位で記述する</li> <li>データはDataGearと呼ばれる単位を用いる</li> - <li>ノーマルレベルとメタレベルの処理を切り分けることが可能である</li> + <li>ノーマルレベルとメタレベルの処理を切り分けることが容易に可能である</li> <li>function callの継続の代わりにgotoによる継続を用いる <ul> <li>呼び出し履歴を持たないことから軽量継続と呼ぶ</li> @@ -126,11 +126,9 @@ <ul> <li>当研究室にて,信頼性と拡張性の両立を目的として開発している</li> + <li>CbCで記述されている</li> <li>Gearという概念があり,実行の単位をCodeGear,データの単位をDataGearと呼ぶ</li> - <li>同様にGearの概念を持つCbC(Continuation based C)で記述されている</li> - <li>軽量継続を基本とし,stackを持たない代わりに全てを従来OSのプロセスに当たるContext経由で実行する</li> - <li>ノーマルレベルとメタレベルの処理を切り分けることができる</li> - <li>OSとして動作するために今後実装しなければならない機能がいくつか残っている</li> + <li>ノーマルレベルとメタレベルの処理を切り分けることが容易にできる</li> </ul> @@ -173,13 +171,14 @@ <li>ノーマルレベルから直接参照されず,必ずMetaDataGearとしてMetaCodeGearから参照される</li> </ul> -<h3 id="contextの種類">Contextの種類</h3> +<!-- +### Contextの種類 -<ul> - <li>OS全体のContextを管理するKernel Context</li> - <li>ユーザープログラムごとに存在するUser Context</li> - <li>CPUやGPUごとに存在するCPU Context</li> -</ul> +- OS全体のContextを管理するKernel Context +- ユーザープログラムごとに存在するUser Context +- CPUやGPUごとに存在するCPU Context + +--> @@ -203,7 +202,7 @@ <!-- _S9SLIDE_ --> <h2 id="unixのfile-system">UnixのFile system</h2> -<p>UnixのFile systemはinodeのBTreeで構成されており,xv6もその仕組みを用いている</p> +<p>UnixのFile systemはBTreeを用いたinodeで構成されており,xv6もその仕組みを用いている</p> <h3 id="xv6">xv6</h3> @@ -233,8 +232,8 @@ <ul> <li>2つのRedBlackTreeを用いる <ol> - <li>inode numberとfileのポインタのペアを持つTree</li> - <li>filenameとinode numberのペアを持つTree</li> + <li>filenameとinode numberのペアを持つindex tree</li> + <li>inode numberとinodeのポインタのペアを持つinode tree</li> </ol> </li> <li>カレントディレクトリはgearsDirectory->currentDirectoryに保存される</li> @@ -360,7 +359,7 @@ <div class='slide'> <!-- _S9SLIDE_ --> -<h2 id="gearsdirectoryの非破壊的編集による">GearsDirectoryの非破壊的編集による</h2> +<h2 id="gearsdirectoryにおける非破壊編集ツリー">GearsDirectoryにおける非破壊編集ツリー</h2> <ul> <li>GearsOSにおける永続データは非破壊的な編集を行う木構造を用いて保存する</li> @@ -381,10 +380,9 @@ <ul> <li>gearsDirectoryの実装について説明した</li> + <li>RedBlackTreeを用いてinodeの仕組みを構築し,ls,cd,mkdirを作成するなどして,Unix Likeに構築することが出来た</li> <li>RedBlackTreeのシンプルなinterfaceにより比較的容易に実装を行うことができた</li> <li>形式手法とファイルシステムの機能の両面で信頼性の向上が図れると考える</li> - <li>RedBlackTreeを用いてinodeの仕組みを構築し,ls,cd,mkdirを作成するなどして, -Unix Likeに構築することが出来た</li> </ul> @@ -410,34 +408,23 @@ <li>filenameは一般的に文字列型であるためIntegerから文字列型に変更する必要がある</li> </ul> - - -</div> +<!-- +## GearsFileSystemの今後 -<div class='slide'> - <!-- _S9SLIDE_ --> -<h2 id="gearsfilesystemの今後-1">GearsFileSystemの今後</h2> +### gearsDirectory on disk -<h3 id="gearsdirectory-on-disk">gearsDirectory on disk</h3> +- 現状はgearsDirectoryはon memoryで実装されている +- inodeをdisk上に構築する必要がある -<ul> - <li>現状はgearsDirectoryはon memoryで実装されている</li> - <li>inodeをdisk上に構築する必要がある</li> -</ul> +### GearsShell -<h3 id="gearsshell">GearsShell</h3> +- 現状のGearsOSはユーザーの入力を受け付けることが出来ず,言語フレームワークの様に機能している +- gearsFileSystemなどGearsOSの各機能と接続し,今回作成したcdやlsの様なコマンドを受け付けるGearsShellを作成したい -<ul> - <li>現状のGearsOSはユーザーの入力を受け付けることが出来ず,言語フレームワークの様に機能している</li> - <li>gearsFileSystemなどGearsOSの各機能と接続し,今回作成したcdやlsの様なコマンドを受け付けるGearsShellを作成したい</li> -</ul> +### ファイルのバックアップ -<h3 id="ファイルのバックアップ">ファイルのバックアップ</h3> - -<ul> - <li>レコードのDataをファイルの差分履歴として保持し,日時情報を付け加えることでVersion Control Systemのような機能を持たせることが可能であると考えられる</li> -</ul> - +- レコードのDataをファイルの差分履歴として保持し,日時情報を付け加えることでVersion Control Systemのような機能を持たせることが可能であると考えられる +--> </div>