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
2020 - MOPCON - 拿到錘子的我想在為控制器上實作 Ruby VM
Search
蒼時弦や
October 24, 2020
Programming
0
110
2020 - MOPCON - 拿到錘子的我想在為控制器上實作 Ruby VM
蒼時弦や
October 24, 2020
Tweet
Share
More Decks by 蒼時弦や
See All by 蒼時弦や
2024 - COSCUP - Clean Architecture in Rails
elct9620
2
170
2023 - RubyConfTW - Rethink Rails Architecture
elct9620
0
170
20230916 - DDDTW - 導入 Domain-Driven Design 的最佳時機
elct9620
0
420
2023 - WebConf - 選擇適合你的技能組合
elct9620
0
640
20230322 - Generative AI 小聚 ft. Happy Designer
elct9620
0
380
2022 - 默默會 - 重新學習 MVC 的 Model
elct9620
1
460
MOPCON 2022 - 從 Domain-Driven Design 看網站開發框架隱藏
elct9620
1
480
2022 - COSCUP - 我想慢慢寫程式該怎麼辦?
elct9620
0
260
2022 - COSCUP - 打造高速 Ruby 專案開發流程
elct9620
0
290
Other Decks in Programming
See All in Programming
麻雀点数計算問題生成タスクから学ぶ Single Agentの限界と Agentic Workflowの底力
po3rin
5
2.1k
Let's Write a Train Tracking Algorithm
twocentstudios
0
220
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
130
どの様にAIエージェントと 協業すべきだったのか?
takefumiyoshii
1
580
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
220
ソフトウェア設計の実践的な考え方
masuda220
PRO
3
430
AIで開発生産性を上げる個人とチームの取り組み
taniigo
0
130
Model Pollution
hschwentner
1
180
Local Peer-to-Peer APIはどのように使われていくのか?
hal_spidernight
2
440
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する
ota1022
0
240
Catch Up: Go Style Guide Update
andpad
0
120
CSC509 Lecture 02
javiergs
PRO
0
400
Featured
See All Featured
Thoughts on Productivity
jonyablonski
70
4.9k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Docker and Python
trallard
46
3.6k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Side Projects
sachag
455
43k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Mobile First: as difficult as doing things right
swwweet
224
10k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Bash Introduction
62gerente
615
210k
Transcript
拿到錘⼦的我想 在微控制器上⾯執⾏ Ruby Photo by Johannes Plenio from Pexels
WEB DEVELOPER GAME DEVELOPER ࣌ ݭ @elct9620
None
None
Background
None
None
Virtual Machine
In computing, a virtual machine (VM) is an emulation of
a computer system. - Wikipedia
Process virtual machines are designed to execute computer programs in
a platform-independent environment. - Wikipedia
Compiler Source Code Executable
Compiler Source Code Ruby VM
https://bit.ly/2T4BCiG
Getting Started
https://bit.ly/3ojwEwX
None
None
None
None
IREP
An intermediate representation (IR) is the data structure or code
used internally by a compiler or virtual machine to represent source code. - Wikipedia
app.mrb RITE Header IREP Debug Section
IREP ISEQ Pools Symbols IREP
mrb_exec
None
Load Variable
None
None
mruby is designed for Embedded System which is Raspberry Pi,
but mruby-L1VM's target is run under 1KB RAM
Behind VM
None
None
None
None
None
None
None
Hardware
Development Board is made software developer easier to build an
application with hardware
The SDK for Development Board usually based on C or
C++, which means it is possible to run Golang, Ruby, or Python on it.
The hardest for developers is no hardware knowledge to write
their driver for their hardware
Hardware Abstraction Layer
https://bit.ly/3kiNzxf
https://bit.ly/3mcdLdu
None
None
None
Conclusion