Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Nerves on Cloud (Japanese edition)

Nerves on Cloud (Japanese edition)

Nerves on Cloud は,次の理由で二酸化炭素を減らす効果的な解決策になると考えている: (1) Nerves はシステムを再現可能にすることで,十分にスケーラビリティと再起動時の同一の挙動を保証することができる (2) Nervesはシステムを最小化することで,十分に計算資源と消費電力を減らすことができる (3) Nerves はI/Oを制御できるので,デバイスの電源をオンオフできる.この事例では,Nervesカーネル上のそれぞれのNervesアプリケーションを仮想化することで,Nerves on Cloud を実現する試行を詳細に説明する.

Nerves on Cloud will be an effective solution to reduce carbon dioxide, because (1) Nerves makes a system be reproducible enough to ensure scalability and the same behavior when restarted; (2) Nerves enables a system be minimized enough to reduce computer resources and electricity; and (3) Nerves can control I/O that enables power of devices turn on and off. This case study explains a trial to realize Nerves on Cloud by virtualizing each Nerves application on a Nerves kernel, in detail.

83722380372c00bd75ac920f2089f6aa?s=128

Susumu Yamazaki (ZACKY)

November 13, 2020
Tweet

Transcript

  1. /FSWFTPO$MPVE ๺۝भࢢཱେֶࢁ࡚ਐ 1 ˜4VTVNV:BNB[BLJ

  2. ࢁ࡚ਐ ;"$,: w 5XJUUFS(JU)VC(NBJM;"$,: w ๺۝भࢢཱେֶࠃࡍ؀ڥ޻ֶ෦ w ।ڭत w φοδࣾձ࣮૷ݚڀηϯλʔ

    ηϯλʔ௕ w 1FMFNBZΛݚڀ։ൃ w &MJYJSͷฒྻωΠςΟϒίʔυੜ੒ܥ w ݱঢ়Ͱ͸4*.%໋ྩΛੜ੒ w কདྷ͸ෳ਺ͷίΞ΍(16ΛۦಈͰ͖Δ Α͏ʹ͢Δ༧ఆ  ˜4VTVNV:BNB[BLJ
  3. എܠ 3 ˜4VTVNV:BNB[BLJ

  4. ίϯϐϡʔλσόΠεͷిྗফඅྔ <"OESBFBOE&EMFS> w ௨৴ٕज़ʹؔ࿈͢Δίϯϐϡʔλ σόΠε౳ʹ͔͔Δిྗফඅྔ w ೥࣌఺ͷ༧૝ฏۉέʔεͰ ੈքͷిྗڙڅྔͷˋ w ೥࣌఺ͷ༧૝࠷ѱέʔεͰ

    ੈքͷిྗڙڅྔͷ w ΄͔ͷࢿྉͱ߹ΘͤΔͱ ೥࣌఺Ͱ͸ӈਤͷ&YQFDUFE γφϦΦͰਪҠ͍ͯ͠Δʁ  ˜4VTVNV:BNB[BLJ © "OESBFBOE&EMFS
  5. ίϯϐϡʔλσόΠεͷిྗফඅྔͷ಺༁ <"OESBFBOE&EMFS> w தͰ΋ݻఆ໢΍σʔληϯ λʔͷిྗফඅྔ͕৳ͼΔ w ΠϯϑϥετϥΫνϟʔଆͷ ෛՙ͕ٸ্ঢ w (ͷීٴ

    w ػցֶश౳ͷܭࢉྔͷ૿େ  ˜4VTVNV:BNB[BLJ © "OESBFBOE&EMFS
  6. ίϯϐϡʔλ͸ ஍ٿԹஆԽͷ໰୊ʹ ແԑͰ͸ͳ͍ 6 ˜4VTVNV:BNB[BLJ

  7. ఏҊ /FSWFTPO$MPVE 7 ˜4VTVNV:BNB[BLJ

  8. /FSWFT w *P5σόΠε܈Λਝ଎͔ͭେن໛ʹߏஙɼσϓϩΠ͠ɼ҆શʹ؅ཧ͢ΔͨΊʹඞཁͳΦʔϓϯιʔ εͷϓϥοτϑΥʔϜͰ͋Γιϑτ΢ΣΞج൫Ͱ͋Δ</FSWFT> w &MJYJSͱ-JOVYΛ࠾༻͓ͯ͠Γɼ3BTQCFSSZ1JγϦʔζΛ͸͡Ίͱ͢Δ༷ʑͳ*P5ϘʔυͰಈ࡞͢Δ w ϑοτϓϦϯτ͕খ͍͞ w ಡࠐΈઐ༻γεςϜ༻ύʔςΟγϣϯηοτͱɼಡॻ͖Մೳͳσʔλ༻ύʔςΟγϣϯηοτ

    ʹ۠੾͍ͬͯΔ w γεςϜ༻ύʔςΟγϣϯ͸ɼͲͪΒ͔ҰํͷΈΛΞΫςΟϒʹ͢Δ w Ξοϓσʔτ࣌ʹඇΞΫςΟϒͳύʔςΟγϣϯΛॻ͖׵͑Δ w /FSWFT)VC w ৽͍͠ϑΝʔϜ΢ΣΞΛΞοϓϩʔυ͢Δͱɼ/FSWFT͕ࣗಈΞοϓσʔτͯ͠࠶ىಈ͢Δ 8 ˜4VTVNV:BNB[BLJ © UIF/FSWFT1SPKFDUEFWFMPQFST
  9. લఏ௿ফඅిྗίϯϐϡʔλɾϢχοτͷ࢖༻ w +FUTPO"(99BWJFSͷΑ͏ͳ௿ফඅిྗߴੑೳ ͳίϯϐϡʔλɾϢχοτͰɼίϯϐϡʔλɾ ΫϥελΛߏ੒͢Δ w "3.WίΞ (16 7PMUB ίΞ

     5FOTPSίΞ .-޲͚  7-*87JTJPOϓϩηο α w ୆͋ͨΓ8Iఔ౓໿ສԁ w ࠷େిྗ͸΋͏গ͠ଟ͍ʁ w ୆ଋͶͯ΋L8Iఔ౓ສԁن໛ w ফඅిྗ͸ۀ຿༻ͷྫྷஆ๪ఔ౓ w ݱঢ়Ͱ͸+FUTPOγϦʔζ্Ͱ/FSWFT͸ಈ͔ͳ͍ w ଱ٱੑ͕՝୊ʁ  ˜4VTVNV:BNB[BLJ © /7*%*"
  10. 10 ˜4VTVNV:BNB[BLJ

  11. /FSWFTPO$MPVE ࣍ͷΑ͏ͳΞϓϩʔνͰফඅిྗΛ࡟ݮ͢Δ  ࢖Θͳ͍ϞδϡʔϧͷΫϩοΫΛఀࢭ͢ΔͳͲిྗίϯτϩʔϧΛ͜·Ίʹߦ͏Α͏ʹ͢Δ ‎/FSWFTͷ࣋ͭ*0੍ޚػೳͰ࣮ݱ  ฒྻॲཧΛ࠷େݶʹੜ͔ͯ͠ܭࢉೳྗΛߴΊɼ͔ͭͰ͖Δ͚ͩಉظɾഉଞ੍ޚͰܭࢉ͕ఀࢭ͠ ͳ͍Α͏ʹ͢Δ ‎௿$16ΫϩοΫͷෳ਺ͷϚϧνίΞɾίϯϐϡʔλɾϢχοτͰฒྻ෼ࢄͤ͞Δ ‎͔ͭج൫ͱͳ͍ͬͯΔ&MJYJSͱɼ௒ฒྻॲཧܥ1FMFNBZͷซ༻Ͱ࣮ݱ

    ‎/FSWFTʹΑΔిݯίϯτϩʔϧͰίϯϐϡʔλɾϢχοτ΍ίΞ਺ͷՔಇ཰Λ੍ޚ  ໨తΛୡ੒͢ΔͷʹඞཁͳΫϩοΫ਺Λ࡟ݮ͢Δ ‎௒ฒྻॲཧܥ1FMFNBZͷซ༻Ͱ࣮ݱ 11 ˜4VTVNV:BNB[BLJ
  12. /FSWFTPO$MPVEͷར఺  /FSWFT͸γεςϜΛ࠶ݱՄೳͱ͢Δ͜ͱͰɼे෼ʹεέʔϥϏϦ ςΟͱ࠶ىಈ࣌ͷಉҰͷڍಈΛอূͰ͖Δ ‎লిྗԽͷͨΊγεςϜΛҰ࣌ఀࢭͯ͠΋࠶ىಈ࣌ʹෆ۩߹͕ ੜ͡ΔՄೳੑΛݮΒͤΔ  /FSWFT͸γεςϜΛ࠷খԽ͢Δ͜ͱͰɼे෼ʹܭࢉࢿݯͱফඅి ྗΛݮΒͤΔ 

    /FSWFT͸*0Λ੍ޚͰ͖ΔͷͰɼσόΠεͷిݯΛΦϯΦϑͰ͖Δ ‎ͦͷ࣌ʑʹԠͨ͡ඞཁ࠷খݶͷγεςϜߏ੒ͰՔಇͰ͖Δ 12 ˜4VTVNV:BNB[BLJ
  13. Ξϓϩʔν 13 ˜4VTVNV:BNB[BLJ

  14. ߟ͑ΒΕΔΞϓϩʔν  ͦΕͧΕͷ/FSWFTΛ࣮ϚγϯʹΠϯετʔϧ͢Δ  ͦΕͧΕͷ/FSWFTΛɼ7JSUVBM#PYͷΑ͏ͳϑϧԾ૝Խͨ͠Ծ૝ػ ցʹΠϯετʔϧ͢Δ  ͦΕͧΕͷ/FSWFTΛɼ%PDLFSͷΑ͏ͳ04ϨϕϧԾ૝Խͨ͠Ծ૝ ػցʹΠϯετʔϧ͢Δ 

    γϯάϧϢʔβͷ/FSWFT্Ͱɼ%PDLFSʹΑΔԾ૝ػցΛߏங͢Δ  ఏҊख๏ .VPO5SBQΛ༻͍ͯίϯτϩʔϧάϧʔϓͱDISPPUΛ ࢦఆͯ͠ࢠσʔϞϯϓϩηεΛىಈ͢Δ 14 ˜4VTVNV:BNB[BLJ
  15. ߟ͑ΒΕΔΞϓϩʔν  ͦΕͧΕͷ/FSWFTΛ࣮ϚγϯʹΠϯετʔϧ͢Δ ‎࣮ݱ͕༰қͰ͋Δ ‎Ϣʔβʔ਺ͱಉ਺ͷ࣮ϚγϯΛ༻ҙ͢Δඞཁ͕͋ΓɼҰରҰʹରԠͤ͞Δඞཁ͕͋Δ ‎Ϋϥ΢υͷར఺ͷͭͰ͋ΔεέʔϥϏϦςΟ͕ଛͳΘΕΔ  ͦΕͧΕͷ/FSWFTΛɼ7JSUVBM#PYͷΑ͏ͳϑϧԾ૝Խͨ͠Ծ૝ػցʹΠϯετʔϧ͢Δ ‎ରԠ͢ΔΠϝʔδϑΝΠϧΛ༻ҙ͢Δඞཁ͕͋Δ͕ɼݱঢ়Ͱ͸ఏڙ͞Ε͍ͯͳ͍ ‎͔ͭͯ͸ఏڙ͞Ε͍͕ͯͨɼύϑΥʔϚϯε͕ѱ͔ͬͨͷͰɼݱঢ়Ͱ͸ఏڙ͍ͯ͠ͳ͍

    ‎$16ɼϝϞϦɼετϨʔδͷޮ཰ͷ໘Ͱɼ೉఺͕͋Δ͜ͱ͕૝૾ʹ೉͘ͳ͍  ͦΕͧΕͷ/FSWFTΛɼ%PDLFSͷΑ͏ͳ04ϨϕϧԾ૝Խͨ͠Ծ૝ػցʹΠϯετʔϧ͢Δ  γϯάϧϢʔβͷ/FSWFT্Ͱɼ%PDLFSʹΑΔԾ૝ػցΛߏங͢Δ  ఏҊख๏ .VPO5SBQΛ༻͍ͯίϯτϩʔϧάϧʔϓͱDISPPUΛࢦఆͯ͠ࢠσʔϞϯϓϩηεΛىಈ͢Δ 15 ˜4VTVNV:BNB[BLJ
  16. ߟ͑ΒΕΔΞϓϩʔν  ͦΕͧΕͷ/FSWFTΛ࣮ϚγϯʹΠϯετʔϧ͢Δ  ͦΕͧΕͷ/FSWFTΛɼ7JSUVBM#PYͷΑ͏ͳϑϧԾ૝Խͨ͠Ծ૝ػցʹΠϯετʔϧ͢Δ  ͦΕͧΕͷ/FSWFTΛɼ%PDLFSͷΑ͏ͳ04ϨϕϧԾ૝Խͨ͠Ծ૝ػցʹΠϯετʔϧ͢Δ ‎࣮ݱͰ͖Δ͔ෆ෼໌ ‎͜ͷख๏ʹର͢ΔఏҊख๏ͷ༏Ґੑ͕͋Δͷ͔Ͳ͏͔Λٞ࿦͍ͯ͘͠ඞཁ͕͋Δ 

    γϯάϧϢʔβͷ/FSWFT্Ͱɼ%PDLFSʹΑΔԾ૝ػցΛߏங͢Δ ‎طʹ࣮ݱͰ͖͍ͯΔ ‎͜ͷख๏ʹର͢ΔఏҊख๏ͷ༏Ґੑ͕͋Δͷ͔Ͳ͏͔Λٞ࿦͍ͯ͘͠ඞཁ͕͋Δ  ఏҊख๏ .VPO5SBQΛ༻͍ͯίϯτϩʔϧάϧʔϓͱDISPPUΛࢦఆͯ͠ࢠσʔϞϯϓϩηε Λىಈ͢Δ 16 ˜4VTVNV:BNB[BLJ
  17. ఏҊख๏ 17 ˜4VTVNV:BNB[BLJ

  18. ఏҊख๏ͷ֓ཁ w .VPO5SBQͰίϯτϩʔϧάϧʔϓΛࢦఆ͢Δ͜ͱͰɼϝϞϦ΍$16ͷར༻Λ੍ݶͰ͖Δ w ͜ΕΛར༻ͯ͠ɼϝϞϦ΍$16ͷར༻Λద੾ʹ੍ݶͨ͠ɼϢʔβʔ͝ͱͷσʔϞϯϓϩη εΛىಈ͢Δ w .VPO5SBQͰ͸ɼ͜ͷσʔϞϯϓϩηεͷ؂ࢹ΍ɼෆ۩߹࣌ͷ࠶ىಈΛߦ͑Δ w .VPO5SBQͰੜ੒ͨ͠σʔϞϯϓϩηεʹDISPPUΛ༻͍ͯϑΝΠϧγεςϜͷϧʔτΛ༩͑Δ

    ͜ͱͰɼσʔϞϯϓϩηεʹࣄ্࣮ͷݸผͷϑΝΠϧγεςϜΛ༩͑Δ w ͜ͷࡍʹ0WFSMBZ'4Λ࢖༻͢Δ͜ͱͰɼڞ௨ϑΝΠϧ܈ͱࠩ෼ϑΝΠϧ܈ΛͦΕͧΕผͷ σΟϨΫτϦʹ֨ೲͨ͠ঢ়ଶͰɼ݁߹ͨ͠Ծ૝తͳϑΝΠϧγεςϜΛ࡞Δ͜ͱ͕Ͱ͖Δͷ Ͱɼޮ཰͕ྑ͍ϑΝΠϧγεςϜΛߏஙͰ͖Δ w /FSWFT44)Λ༻͍Δ͜ͱͰɼϙʔτ൪߸Λࢦఆͯ͠44)σʔϞϯΛ࡞Δ͜ͱ͕Ͱ͖Δ w ͜ΕΛ௨ͯ͠ɼϢʔβʔ͝ͱ΁ͷσʔϞϯϓϩηε΁ͷΞΫηεखஈΛઃ͚Δ͜ͱ͕Ͱ͖Δ 18 ˜4VTVNV:BNB[BLJ
  19. .VPO5SBQ w &SMBOH΍&MJYJS͔Βىಈ͢ΔϓϩάϥϜ΍σʔϞϯɼΞϓϦ έʔγϣϯΛִ཭ͯ͠ਖ਼ৗʹಉͤ͞ΔͨΊͷػߏ w ίϯτϩʔϧάϧʔϓΛઃఆͯ͠ࢠϓϩηεΛىಈ͠ɼىಈ ͨ͠&SMBOH΍&MJYJSͱ͸ҟͳΔϢʔβʔ΍άϧʔϓͰ04ϓϩ ηεΛىಈͰ͖Δ w ίϯτϩʔϧάϧʔϓ

    DHSPVQ ͸ɼ-JOVYΧʔωϧ͔ Βαϙʔτ͞ΕΔΑ͏ʹͳͬͨɼϓϩηεάϧʔϓ͕$16ɼ ϝϞϦɼσΟεΫ*0ͳͲͷϦιʔεΛར༻͢Δ͜ͱΛ੍ݶ ͨ͠Γִ཭ͨ͠Γ͢Δ-JOVYΧʔωϧͷػೳ 19 ˜4VTVNV:BNB[BLJ
  20. .VPO5SBQ w &MJYJSͰ࣍ͷΑ͏ʹ04ϓϩηεΛىಈͰ͖Δ iex> System.cmd("echo", ["hello"]) {"hello\n", 0} w .VPO5SBQͰ΋ಉ༷ʹ04ϓϩηεΛىಈͰ͖Δ

    iex> MuonTrap.cmd("echo", ["hello"]) {"hello\n", 0} 20 ˜4VTVNV:BNB[BLJ
  21. .VPO5SBQʹΑΔσʔϞϯϓϩηεͷىಈ w BQQMJDBUJPOFYʹ࣍ͷΑ͏ʹهड़͢Δ ͱzMPOH@SVOOJOH@DPNNBOEzΛσʔϞϯϓϩηεͱͯ͠ى ಈͰ͖Δ ΞϓϦέʔγϣϯ໊͕)FMMP/FSWFTͷ৔߹  21 ˜4VTVNV:BNB[BLJ

  22. .VPO5SBQʹΑΔϝϞϦ੍ݶ w λʔήοτ্ͷJFYͰ࣍ͷΑ͏ʹ࣮ߦ͢ΔͱɼϝϞϦΛ੍ݶͯ͠MTΛ࣮ߦͰ͖Δ w ্͸,#ͯ͠੒ޭɼԼ͸,#Ͱ࣮ߦͰϝϞϦෆ଍Ͱࣦഊ͍ͯ͠Δ w DHSPVQ@CBTFͰࢦఆ͍ͯ͠ΔGPP͸ίϯτϩʔϧάϧʔϓ໊Ͱɼຊདྷ͸ίϯτϩʔϧ άϧʔϓΛ࡞੒͠ͳ͍ͱ࢖͑ͳ͍͸͕ͣͩɼͱΓ͋͑ͣద౰ͳ஋GPPͰ΋࣮ߦͰ͖ͨ w ಉ༷ͷํ๏Ͱɼ$16ͷ࢖༻཰ʹ΋੍ݶΛՃ͑ΒΕΔ

    22 ˜4VTVNV:BNB[BLJ
  23. SPPUGT@PWFSMBZʹΑΔσΟϨΫτϦͷෳ੡ w NLEJSQSPPUGT@PWFSMBZTIBSFCJO ͱͯ͠λʔήοτͰ࣮ߦ͢Δͱɼ TIBSFCJOͱ͍͏σΟϨΫτϦ͕Ͱ͖Δ w λʔήοτ্Ͱ DNElNPVOUŠCJOECJOTIBSFCJOz Λ࣮ߦ͢ΔͱɼCJOͷΫϩʔϯ͕TIBSFCJOʹͰ͖Δ w

    ͜ΕΛར༻ͯ͠DISPPUΛ࣮ߦ͍͕ͨ͠ɼॳظঢ়ଶͰ͸DISPPU͸/FSWFTʹΠϯετʔϧ͞Ε͍ͯͳ͍ w ͜ͷखॱͰΠϯετʔϧͰ͖Δ IUUQTHJUIVCDPNOFSWFTQSPKFDUOFSWFTCMPCNBJOEPDT $VTUPNJ[JOH4ZTUFNTNECVJMESPPUQBDLBHFDPOpHVSBUJPO w ·ͨɼUBSHFUFYTʹԼهͷΑ͏ͳઃఆΛ͢Ε͹NPVOUͰ͖Δ͕ɼΦϓγϣϯ౳ͷࢦఆ͕͏·͍ͬ͘ ͍ͯͳ͍Α͏Ͱɼਖ਼ৗʹ࣮ݱͰ͖͍ͯͳ͍ͷͰɼཁௐࠪ DPOpHOFSWFT FSMJOJU  NPVOUlCJOTIBSFCJOTRVBTIGTSP SFMBUJNFCJOE 23 ˜4VTVNV:BNB[BLJ
  24. JFY@TTI@TIFMMΛར༻ͨ͠γΣϧϓϩηεͷ࡞੒ w /FSWFT44)͔Β೿ੜͨ͠ɼJFY@TTI@TIFMMΛར༻͢Δ͜ͱͰɼ TTIͰϩάΠϯͰ͖Δϙʔτͷ௥Ճʹ੒ޭͨ͠ w NJYFYTͷEFQTʹ࣍ͷઃఆΛ଍͠ɼ \JFY@TTI@TIFMM d UBSHFUT!BMM@UBSHFUT^ 

    UBSHFUFYTʹ࣍ͷΑ͏ͳઃఆΛ͢Δ͜ͱͰɼ DPOpHJFY@TTI@TIFMM  QPSU  BVUIPSJ[FE@LFZT"QQMJDBUJPOHFU@FOW OFSWFT@TTI BVUIPSJ[FE@LFZT  ඪ४ͷϙʔτͷଞʹTTIͰϩάΠϯͰ͖ΔϙʔτΛఆٛͰ͖Δ w JFY@TTI@TIFMMΛࢀߟʹɼΧελϜγΣϧϋϯυϥΛ࡞੒͢Ε͹ɼ ೚ҙͷϩάΠϯϙʔτΛ࡞੒Ͱ͖ͦ͏ 24 ˜4VTVNV:BNB[BLJ
  25. ఏҊख๏·ͱΊ w SPPUGT@PWFSMBZͱFSMJOJUΛ༻͍ͯɼDISPPU͢ΔઌͱͳΔΧελϜϧʔτϑΝΠϧ γεςϜͷσΟϨΫτϦΛ࡞੒͢Δ w JFY@TTI@TIFMMͱ/FSWFT44)ΛࢀߟʹΧελϜγΣϧϋϯυϥΛ࣮૷͢Δ w ͦͷதͰ.VPO5SBQΛ༻͍ͯϝϞϦͱ$16ͷར༻Λద੾ʹ੍ݶͨ͠ϓϩηεΛ ىಈ͢Δ w

    ͦͷϓϩηεͰDISPPUΛ࣮ߦ͔ͯ͠ΒɼγΣϧͳΓJFYͳΓΛىಈ͢Δ w ࢒՝୊ w FSMJOJUΛ༻͍ͯNPVOUŠCJOE͢Δ΍Γํͷௐࠪ w ্هͷΑ͏ͳΧελϜγΣϧϋϯυϥͷ࣮૷ 25 ˜4VTVNV:BNB[BLJ
  26. ϑΝΠϧγεςϜͷઃܭʹؔ͢Δߟ࡯ w /FSWFT͸EBUB چ໊শSPPU ʹಡΈॻ͖ՄೳͳϑΝΠϧΛஔ͘ w UNQ͸Ұ࣌ϑΝΠϧΛஔ͘ ཁ֬ೝ  w

    TZT QSPD EFWʹ͸γεςϜϑΝΠϧ͕ஔ͔ΕΔ w ͦΕҎ֎ͷ৔ॴͷϑΝΠϧ FUD CJOͳͲ ͸ϦʔυΦϯϦʔͰ͋Δ w UNQͱEBUB͸7.͝ͱʹҟͳΔϑΝΠϧγεςϜʹͳ͍ͬͯΔͱ޷౎߹ w ίϚϯυ౳͸ϢʔβʔʹΑͬͯՄࢹੑ͕ҟͳΔ͔΋͠Εͳ͍ w 7.͝ͱʹݸผͷϧʔτΛ࡞ΓɼFUD CJOͳͲͷڞ༗͍ͨ͠ϑΝΠϧ܈ ΛNPVOUŠCJOEͯ͠ɼͦΕҎ֎͸ݸผʹͳΔΑ͏ʹߏ੒͢Δ 26 ˜4VTVNV:BNB[BLJ
  27. ఏҊख๏ͷ੍໿ w Ϣʔβʔ͝ͱͷσʔϞϯϓϩηε͚͕ͩ࢖༻͢ΔϑΝΠϧ܈Λมߋ͠ ͚ͨͩͷ৔߹Ͱ΋ɼϑΝʔϜ΢ΣΞશମͷߋ৽ͱγεςϜ࠶ىಈΛඞ ཁͱ͢Δ w ͦͷͨΊɼϢʔβʔΞϓϦέʔγϣϯΛॻ͖׵͑Δ౓ʹɼଞͷϢʔβʔ ϓϩηε΋ר͖ࠐΜͰ࠶ىಈ͢Δ͜ͱʹͳͬͯ͠·͍ɼ͔ͭμ΢ϯλ ΠϜ͕ੜͯ͡͠·͏ w

    ͜ΕΛճආ͢ΔͨΊʹ͸ɼγεςϜΛଟॏԽͯ͠࠶ىಈͷλΠϛϯά ΛͣΒ͢͜ͱͰɼμ΢ϯλΠϜΛͳ͘͢ඞཁ͕͋Δ w ݱঢ়Ͱ͸ɼσόΠεʹλάΛ͚ͭͯɼλά͝ͱʹॱ࣍/FSWFT)VC ʹΞοϓσʔτ͢Δ͜ͱͰΞυϗοΫʹ࣮ݱ͍ͯ͠Δͱͷ͜ͱ 27 ˜4VTVNV:BNB[BLJ
  28. ·ͱΊͱকདྷ՝୊ 28 ˜4VTVNV:BNB[BLJ

  29. ·ͱΊͱকདྷ՝୊ w Ϋϥ΢υ্ͷίϯϐϡʔλγεςϜͷফඅిྗΛݮΒ͠ɼ؅ཧΛ͠΍͘͢ ͢ΔͨΊʹɼ/FSWFTPO$MPVEΛఏҊͨ͠ w ຊൃදͰ͸.VPO5SBQΛ༻͍ͯϢʔβʔ͝ͱʹԾ૝ԽͰ͖Δ͜ͱΛࣔͨ͠ w কདྷ՝୊ w %PDLFSͳͲͷ04ϨϕϧԾ૝ԽʹΑΔԾ૝ػցʹ/FSWFTΛΠϯετʔ

    ϧͨ͠৔߹ͱൺ΂ͨ࣌ͷ༏Ґੑʹ͍ͭͯݟۃΊΔඞཁ͕͋Δ w ۩ମతʹ࣮૷ͯ͠ϥΠϒϥϦΛఏڙ͢Δ w ͜ΕΛਓ޻Ӵ੕͔Βͷ๲େͳը૾Λॲཧ͢ΔίϯϐϡʔλɾΫϥελɾγ εςϜ<:BNB[BLJ>ʹԠ༻͢Δ͜ͱΛ໨ࢦ͍ͯ͠Δ 29 ˜4VTVNV:BNB[BLJ
  30. ँࣙ w ຊݚڀ੒Ռ͸ɺՊֶٕज़ৼڵػߏݚڀ੒Ռల։ࣄۀݚڀ੒Ռ࠷ దల։ࢧԉϓϩάϥϜ"45&1τϥΠΞ΢τ+1.+5.) ͷࢧԉΛड͚ͨ w ࣥචʹ͋ͨͬͯɼ࣍ͷํʹ͸ಛʹ༗ӹͳॿݴΛ͍͍ͨͩͨ w 5SPPEPO4PGUXBSF--$͓Αͼ/FSWFT1SPKFDUͷ'SBOL )VOMFUIࢯ

    w 5PNCP8PSLT୅දͷҥ઒྄ଠࢯ w +BSFNZ$SFFDIMFZࢯ 30 ˜4VTVNV:BNB[BLJ
  31. ͓·͚ 31 ˜4VTVNV:BNB[BLJ

  32. "QQMF4JMJDPO౥ࡌ.BDͷൃද w .BDͷ$16͕*OUFM͔Β"3.ʹҠߦ w $16ҠߦظͰ͋Δ͜ͱɼ౥ࡌϝϞϦྔͷ໰୊ͳͲͰɼҰൠʹ͸͓קΊͰ͖ͳ͍ w $16(16ີ݁߹ΞʔΩςΫνϟͳͷͰɼ$16ͱ(16ͷؒͷσʔλసૹ͕ۃΊͯߴ଎ͩΖ͏ͱ༧ଌ͞ΕΔ w ը૾ॲཧੑೳ͕ͱͯ΋ߴͦ͏ʂ w

    Ձ֨͋ͨΓͷը૾ॲཧੑೳ͕+FUTPO"(99BWJFSΑΓߴ͍ͱࢥΘΕΔ w +FUTPO"(99BWJFSͷՁ֨ ԁ ετϨʔδ(#F..$  w .BDNJOJͷՁ֨ ԁ ετϨʔδ(#/7.F44%૬౰  w ফඅిྗ͋ͨΓͷը૾ॲཧੑೳ͸Ͳ͏͔ʁ w +FUTPO"(99BWJFSͷ࠷େফඅిྗ8I ͦΕΑΓଟ͘ফඅ͢ΔϞʔυ΋͋Δ  w .BDNJOJͷ࠷େফඅిྗ8I ఆৗ࣌ͷফඅిྗ͸ͦΕΑΓ௿͍ͱࢥΘΕΔ 32 ˜4VTVNV:BNB[BLJ
  33. "QQMF4JMJDPO౥ࡌ.BDͷൃද w Ձ֨͋ͨΓͷը૾ॲཧੑೳ͕+FUTPO"(99BWJFSΑΓߴ͍ͱࢥΘΕΔ w ফඅిྗ͋ͨΓͷը૾ॲཧੑೳ͸Ͳ͏͔ʁ w ݒ೦ը૾ॲཧʹؔ࿈͢Δ"1*ମܥ͕·ΔͰҟͳΔ w +FUTPO"(99BWJFS$6%" DV%//

    71* 7JTPO8PSLT w .BDNJOJ.FUBM $PSF.- $PSF*NBHF 7JTJPO w ΋ͪΖΜ0QFO$7͸ڞ௨ͯ͠࢖͑Δ͕ɼύϑΥʔϚϯεʹ೉͕͋Δ໛༷ ཁௐࠪ  w ந৅Խ͢ΔϨΠϠʔΛઃ͚Δඞཁ͕͋Δ͔ͱࢥ͏ w ͋ͨ͞͠Γ&MJYJS͔Β4XJGUͷ"1*Λݺͼग़͢खஈʹ͍ͭͯ͸ௐࠪͨ͠ IUUQTRJJUBDPN[BDLZJUFNTDCCFDCE 33 ˜4VTVNV:BNB[BLJ