Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
Search
Infiniteloop
October 18, 2023
Programming
0
150
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
【タガヤス その13】ILの日常業務から 発表資料
https://tagayas.connpass.com/event/145290/
Infiniteloop
October 18, 2023
Tweet
Share
More Decks by Infiniteloop
See All by Infiniteloop
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2025年版)
infiniteloop_inc
16
59k
俺の PHP プロファイラの話 PHP スクリプトで PHP 処理系のメモリをのぞき込む
infiniteloop_inc
1
550
心理的安全性を学び直し、 「いい組織とは何か?」を考えてみる
infiniteloop_inc
1
790
ゼロからつくる 2D物理シミュレーション ~物理現象をコードに落とし込む方法~
infiniteloop_inc
1
1.1k
詫び石の裏側
infiniteloop_inc
0
770
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
7
34k
リファクタリングで実装が○○分短縮した話
infiniteloop_inc
0
240
ADRという考えを取り入れてみて
infiniteloop_inc
0
250
500万行のPHPプロジェクトにおけるログ出力の歩み
infiniteloop_inc
0
180
Other Decks in Programming
See All in Programming
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
900
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
350
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
3.3k
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
130
CSC305 Lecture 02
javiergs
PRO
1
260
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
130
フロントエンド開発に役立つクライアントプログラム共通のノウハウ / Universal client-side programming best practices for frontend development
nrslib
7
3.9k
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
100
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
4
1.3k
どの様にAIエージェントと 協業すべきだったのか?
takefumiyoshii
2
590
ソフトウェア設計の実践的な考え方
masuda220
PRO
3
440
エンジニアとして高みを目指す、 利益を生み出す設計の考え方 / design-for-profit
minodriven
23
12k
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
A better future with KSS
kneath
239
17k
Music & Morning Musume
bryan
46
6.8k
Building Adaptive Systems
keathley
43
2.8k
Git: the NoSQL Database
bkeepers
PRO
431
66k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
9
580
YesSQL, Process and Tooling at Scale
rocio
173
14k
BBQ
matthewcrist
89
9.8k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Transcript
I ❤ Virtual Machines ԾڥΛΑΓศརʹ͏πʔϧͨͪ
ࣗݾհ wYDࡀ
੨ݝീށࢢੜ·Ε
ࣗݾհ wYDࡀ w੨ݝീށࢢੜ·Ε wೖࣾϲ݄ͷ υ৽ਓ
ೖࣾͯ͋ͬͨ͋͠Δ
ࠓλΨϠεͰ ͬͯΈͳ͍ʁ
ͦͷͷϊϦ͚ͩͰ Ҿ͖ड͚͍͍ͨͷͷ
😰
˞ݸਓͷภݟͰ͢
😰
˞ݸਓͷภݟͰ͢
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
WT
࣋ͪωλͰҰ੮
None
ຊ
ͷલʹ
લఏ
wఆ͍ͯ͠Δͷେͷ෦͕1)1 Ͱॻ͔Ε͍ͯΔ8FCΞϓϦέʔγϣ ϯͷ։ൃͰ͢
w։ൃऀ͕ར༻͍ͯ͠Δීஈ͍ͷڥ w8JOEPXT wNBD04
wຊ൪ڥ-JOVYΛఆ͍ͯ͠·͢
࣍
None
None
None
None
ԾϚγϯʹΑΔ ։ൃڥߏங
ํ๏ͦͷ ۃ
͓ۚͰղܾ
ϓϩδΣΫτ͝ͱʹ·ͬͨ͘ಉڥͷઐ༻ ։ൃαʔό
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
ํ๏ͦͷ
ݱ࣮తͳͭ
ԾϚγϯ
ԾϚγϯΛ࣮ݱ͢Δ ༏लͳϓϩμΫτ ଟʑ͋Γ·͕͢
ࠓճࣄྫଟ͘ ೖ͍͢͠ 7BHSBOU 7JSUVBM#PYͰ͓ΛਐΊ·͢
7JSUVBM#PY
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ w8JOEPXT NBD04-JOVYͷϓ ϥοτϑΥʔϜͰಈ࡞
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ w8JOEPXTNBD04 -JOVYͷϓϥοτϑΥʔϜͰ ಈ࡞ wख࣋ͪͷ1$ͷதʹԾ తͳ1$Λ্ཱͪ͛ͯ ͘ΕΔ
7BHSBOU
7BHSBOU wԾϚγϯΫϥυ ্ͷϚγϯΛΑ͠ͳʹ ઃఆ্ཱͯͪ͛ͯ͘͠ ΕΔαϙʔτπʔϧ
7BHSBOU wԾϚγϯΫϥυ্ͷϚ γϯΛΑ͠ͳʹઃఆཱͯͪ͠ ্͛ͯ͘ΕΔαϙʔτπʔϧ w7BHSBOUpMFͱ͍͏ 3VCZεΫϦϓτ
7BHSBOU wԾϚγϯΫϥυ্ͷϚ γϯΛΑ͠ͳʹઃఆཱͯͪ͠ ্͛ͯ͘ΕΔαϙʔτπʔϧ w7BHSBOUpMFͱ͍͏3VCZε ΫϦϓτ wଞͷߏཧπʔϧͱ ͷڠௐ
ϝϦοτ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ wߏஙͷࣗಈԽ w։ൃऀಉ࢜Ͱखܰʹڞ༗Ͱ͖Δ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ wߏஙͷࣗಈԽ w։ൃऀಉ࢜Ͱखܰʹڞ༗Ͱ͖Δ wؒҧͬͯյͯ͠
σϝϦοτ wͦΕͳΓʹεϖοΫඞཁ
σϝϦοτ w ͦΕͳΓʹεϖοΫඞཁ wͨͿΜ͙͜͜Β͍ͳΒ
σϝϦοτ w ͦΕͳΓʹεϖοΫඞཁ w ͨͿΜ͙͜͜Β͍ͳΒ wཉΛݴ͑ϝϞϦ(#ͰετϨʔ δ44% w ͓ࡒʹ͍͞͠ͱԿͩͬͨͷ͔
͜͜·Ͱ·ͱΊ ઃඋࢿΛ͓͑ͭͭ͞ ීஈ͍ͷڥͷ ΠϯύΫτΛ͑ͨ։ ൃڥΛ࡞Γ͍ͨ ͱ͍͏͜ͱͰ͋Ε Ծڥͷߏங͕͓ ͢͢Ί
7JTVBM4UVEJP$PEF 3FNPUF%FWFMPQNFOU &YUFOTJPOͷհ
ԾڥͰίʔυΛॻ͘ͱ͖ ͥͻͬͯ΄͍͠
ฐࣾͰ1)14UPSN͕ਓؾͷΑ͏Ͱ͢ ͪ͜Β͍͍͢Ͱ͢Α
ࢲ74$PEF͕͖ ͳͷͰ74$PEFͰॻ͍͍͖ͯ·͠ΐ͏
͜ͷ࣌Ͱͷ ։ൃڥͷߏ
None
None
None
None
None
None
͜ͷลʹʮΠέςφΠײʯ ͋Γ·ͤΜʁ ೋॏཧ͍ͬͯ͏͔ɾɾɾ
None
ήετ͔ΒͷΞΫηε͕͍
None
None
ʅɾТɾʆ γϣϯϘϦοΫϦϯΫ
None
͜Ε͡Όҙຯ͕ͳ͍Αͳ͋
None
None
None
None
None
None
None
None
None
None
None
None
None
None
εοΩϦʂ
͜͜·Ͱ·ͱΊ 74$PEF 3FNPUF %FWFMPQNFOU ԾϚγϯΫϥ υͳͲͷϦϞʔτ։ ൃͷਏΈΛ૬Ϩϕ ϧͰܰݮͯ͘͠ΕΔ
τϯωϦϯάαʔϏεΛ ͓͏
։ൃ͕ਐΜͰ͖ͨΒ
$BTF"
։ൃதͷϓϩμΫτʹ͍ͭͯ Կ͔ఏҊ͍ͨ͠ͱ͖ʹ։ൃதͷ ಈ͖Λݟͤͨ΄͏͕खͬऔΓૣ͍ͱ͖ͬͯ͋Γ·ͤΜ͔ʁ
ϓϩμΫγϣϯڥҎ֎Ͱ ಈ࡞ڥΛ࡞ͬͯͦ͜ʹ ։ൃதϒϥϯνΛσϓϩΠ
͏࡞Δͱ͔ͦ͜·Ͱ େࣄ͡Όͳͯ͘ɾɾɾ Ͱݟ͍ͤͨײ
Ұ࣌తͰ͍͍
$BTF#
ϩʔΧϧϚγϯͰϒϥβ͔ΒݟΔ 8FCΞϓϦΛ IPTUTϑΝΠϧΛฤू͢Δ͜ͱͰ ֬ೝ͍ͯͨ͠
ػೳՃ
֎෦"1*ͱͷଓ
ίʔϧόοΫઌʹ IUUQTͰ7BMJEͳূ໌ॻΛ ࣋ͬͨϗεςΟϯά͕ඞਢ
None
ͦΜͳͱ͖ʹͬͯ΄͍͠ OHSPLͳͲͷτϯωϦϯάαʔϏε
τϯωϦϯάαʔϏεͱ wϩʔΧϧϚγϯ͔Β αʔϏεଆͷαʔόʹ ͭͳ͍ͩ44)ίωΫ γϣϯΛͬͯτϯω ϧԽ͢Δ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷ αʔόʹͭͳ͍ͩ44)ίωΫγϣ ϯΛͬͯτϯωϧԽ͢Δ wαʔϏεଆ͔Βϗετ ໊͕ൃߦ͞ΕΔ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷ αʔόʹͭͳ͍ͩ44)ίωΫγϣ ϯΛͬͯτϯωϧԽ͢Δ w αʔϏεଆ͔Βϗετ໊͕ൃߦ͞Ε Δ wͦͷϗετ໊ʹ͔ͬ ͯϒϥβ͕
)551 T ௨৴Λ͢Δ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷαʔ όʹͭͳ͍ͩ44)ίωΫγϣϯΛ ͬͯτϯωϧԽ͢Δ w αʔϏεଆ͔Βϗετ໊͕ൃߦ͞ΕΔ w ͦͷϗετ໊ʹ͔ͬͯϒϥβ͕ )551
T ௨৴Λ͢Δ wαʔϏεଆ͕ϩʔΧϧϚ γϯͷίϯςϯπΛτϯ ωϧܦ༝Ͱऔಘͯ͠ 8FCϒϥβʹฦ͢
MPDBMIPTU͔Β IUUQTʜ ͱ͍͏63-Ͱίϯςϯπ͕ݟͤΒΕΔ
੍ݶ͋Δ wແྉϓϥϯ࣌ؒ͋ͨΓͷ)551ϦΫΤετʹ ੍ݶ͕͋Δ
63-΄΅͍ࣺͯ 44)ͷίωΫγϣϯ͕ ΒΕ͍ͯΔؒͷΈ༗ޮ
ڵຯ͕Θ͍ͨͷͰ
OHSPLҎ֎ʹ ྨࣅαʔϏεΛௐͯΈͨ
TFSWFP IUUQTTFSWFPOFU
ಛ wݻఆͷαϒυϝΠϯಠࣗυϝΠϯ͕ ͑Δ wηϧϑϗεςΟϯά༻ͷαʔόΞϓϦ ఏڙ͞Ε͍ͯΔ wࣗͰαʔόΛͨͯͯಠࣗυϝΠϯͰ ӡ༻Ͱ͖ͦ͏
MPDBMUVOOFM IUUQTMPDBMUVOOFMHJUIVCJPXXX
ಛ wΫϥΠΞϯτOQ̼ wαʔόଆͷΞϓϦOQN wTFSWFPಉ༷ࣗͰαʔό͕ͨͯΒΕΔ w࣌ؒଳʹΑΔ͔͠Εͳ͍͕एׯ͍ ͔ʁ
͜͜·Ͱ·ͱΊ OHSPLͳͲͷ αʔϏεͰ MPDBMIPTUͷ ΞϓϦέʔγϣϯΛ Πϯλʔωοτ্ʹ ެ։Ͱ͖Δ
݁ͼ
ϓϩάϥϚͷࡾେඒಙ ଵଦ -B[JOFTT ؾ *NQBUJFODF ၗຫ )VCSJT
ϓϩάϥϚͷࡾେඒಙ ଵଦ -B[JOFTT ؾ *NQBUJFODF ၗຫ )VCSJT
lશମͷ࿑ྗΛݮΒͨ͢Ίʹ खؒΛ੯͠·ͳ͍ؾ࣭z
͙͢ΕͨπʔϧΛॿ͚Δ πʔϧ͕͞͠ͷཱྀଓ͘
ͨͩ͠
ͨͩ͠ ʮԼखͷಓ۩ௐʯʹؕΒͳ͍ ఔʹ΄Ͳ΄Ͳʹ
ͨͩ͠ ʮԼखͷಓ۩ௐʯʹؕΒͳ͍ ఔʹ΄Ͳ΄Ͳʹ πʔϧͦͷͷͷ༏ल͓͖ͯ͞͞ ࣗͷखʹೃછΉ͜ͱ͕Ұ൪େࣄ
ؒΛ૿ͦ͏
͓͋ͱ͕ΑΖ͍͠Α͏Ͱ