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
プログラミング言語RustとOS開発/rust-os-develop-introduction
Search
kotetu (kotetuco)
April 13, 2017
Programming
1.8k
0
Share
プログラミング言語RustとOS開発/rust-os-develop-introduction
独自OS委員会第一回公聴会(2017.04.13)でLT発表を行った際に使った資料です。
kotetu (kotetuco)
April 13, 2017
More Decks by kotetu (kotetuco)
See All by kotetu (kotetuco)
STORES決済iOSアプリの決済端末2対応リリースフロー / ebisu.mobile-12-kotetu
kotetuco
0
46
CryptoKit ではじめる暗号技術 - メッセージ認証コード編 / iosdcjapan-2025-cryptokit
kotetuco
1
320
認証体験向上のために passkeys (パスキー) に対応する 〜 メリット・対応方法について / iosdcjapan-2023-passkeys
kotetuco
3
2.3k
着信時氏名表示させたいエンジニア vs 簡単には着信時氏名表示できない電話番号 (iOS13対応版) / iosdcjapan-2020-lt-calldirectory
kotetuco
2
1.4k
UIImage and CIImage for Image Processing
kotetuco
9
7.2k
Metal for data-parallel computations
kotetuco
1
1.9k
Preparing for Swift 5 Ownership
kotetuco
0
5.1k
Sansan iOSアプリと R&Dとの共同研究について/sansan-ios-and-reearch
kotetuco
0
660
OS Developer として Rustを使ってみる/using-rust-for-os-developer
kotetuco
0
640
Other Decks in Programming
See All in Programming
今さら聞けないCancellationToken
htkym
0
220
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
2
190
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
360
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
440
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
270
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.5k
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
450
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
130
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
330
関係性から理解する"同一性"の型用語たち
pvcresin
2
630
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.6k
inferと仲良くなる10分間
ryokatsuse
1
360
Featured
See All Featured
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
230
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
140
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
440
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
210
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Building an army of robots
kneath
306
46k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
160
Discover your Explorer Soul
emna__ayadi
2
1.1k
Transcript
ϓϩάϥϛϯάݴޠ RustͱOS։ൃ @kotetu ಠࣗOSҕһձୈҰճެௌձ(2017.04.13)
@kotetu(܀ࢁప) • SansanגࣜձࣾͰීஈiOSΞϓϦΛॻ͍ͯ ·͢ • େֶੜ͔࣌Βࣗ࡞OSͷੈքʹڵຯΛ࣋ͭ
ructissϓϩδΣΫτ ʹ͍ͭͯ
ಠࣗOSϓϩδΣΫτ ructiss • 2016։ൃ։࢝ • Γ΅ͯOSͷRust࣮Λࢦ͢ • https://github.com/kotetuco/ructiss • ໘ͷλʔήοτΞʔΩςΫνϟ࣍ͷ2ͭ
• x86 (x86_64) • GBA
ructissͷ3ͭͷΞϓϩʔν • ϓϩάϥϛϯάݴޠ • ϓϩάϥϛϯάݴޠRustΛ͏ • ϚϧνϓϥοτϑΥʔϜ • εϖοΫͳϋʔυͰಈ͘γϯϓϧͳ࡞Γ •
Ϟδϡʔϧࢦ • Πϝʔδ”Project Ara“
OS։ൃʹ͓͚Δ ϓϩάϥϛϯάݴޠʹ͍ͭͯ
OS։ൃͰΘΕΔ ϓϩάϥϛϯάݴޠ • (ഽײతʹ) C / C++ Ͱ։ൃ͞ΕΔέʔε͕ɹɹ ΄ͱΜͲ •
ϝδϟʔͳOS΄΅C/C++ ʁ • (ݸਓతʹ)ͦΖͦΖC/C++Ҏ֎ͷબࢶ͕ग़ ͖ͯͯ΄͍͠
C/C++Ҏ֎ͷOS։ൃࣄྫ • Cosmos $ • House (Haskell) • Java
OS (Java) • PowerNex (Dݴޠ)
OSॻ͘ͱ͖ʹ͋Δͱخ͍͠ ػೳ(ݸਓతʹ) • ੜͷϙΠϯλΛѻ͑Δ • ඪ४ϥΠϒϥϦΘͳͯ͘ಈ͘ • ωΠςΟϒίʔυग़ྗ • CݴޠͱͷΠϯλϑΣʔε
ϓϩάϥϛϯάݴޠRust • 2015όʔδϣϯ1.0ϦϦʔε • Mozilla Foundation • FirefoxʹRustͰॻ͍ͨίʔυ͕ೖͬͨ
RustͰOSΛ࡞ΔϝϦοτ • ҆શʹॻ͚Δ(͔) • ϏϧυγεςϜͱύοέʔδཧγεςϜ͕ ͋Δ (Cargo) • ͍ (C++ͱྑ͍উෛ)
RustͷϝϞϦཧ(1/2) https://imoz.jp/note/rust-functions.htmlɹΑΓൈਮ
RustͷϝϞϦཧ(2/2) https://imoz.jp/note/rust-functions.htmlɹΑΓൈਮ
C++ vs Rust The Computer Language Benchmarks GameɹΑΓൈਮ
RustOSϓϩδΣΫτ http://wiki.osdev.org/RustɹΑΓൈਮ
Redox https://github.com/redox-os/redoxɹΑΓ
՝ • ࣮࣭nightlyϏϧυͷRust͔͑͠ͳ͍ • ຊޠͷใ͕গͳ͍ • ֶशίετߴ͍ • (ݸਓతͳײ͕ͩ)CargoΛͬͨ߹ͷόΠ φϦ੍ޚ
Rustͷใݯ • ϓϩάϥϛϯάݴޠRustͷຊޠ൛ • https://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/ • Writing an OS in
Rust • http://os.phil-opp.com/ • RustԿ͕৽͍͠ͷ͔ʢجຊతͳݴޠػೳͷհʣ • https://imoz.jp/note/rust-functions.html