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
0
1.7k
プログラミング言語RustとOS開発/rust-os-develop-introduction
独自OS委員会第一回公聴会(2017.04.13)でLT発表を行った際に使った資料です。
kotetu (kotetuco)
April 13, 2017
Tweet
Share
More Decks by kotetu (kotetuco)
See All by kotetu (kotetuco)
認証体験向上のために passkeys (パスキー) に対応する 〜 メリット・対応方法について / iosdcjapan-2023-passkeys
kotetuco
3
1.8k
着信時氏名表示させたいエンジニア vs 簡単には着信時氏名表示できない電話番号 (iOS13対応版) / iosdcjapan-2020-lt-calldirectory
kotetuco
2
1.2k
UIImage and CIImage for Image Processing
kotetuco
9
6.6k
Metal for data-parallel computations
kotetuco
1
1.4k
Preparing for Swift 5 Ownership
kotetuco
0
4.9k
Sansan iOSアプリと R&Dとの共同研究について/sansan-ios-and-reearch
kotetuco
0
600
OS Developer として Rustを使ってみる/using-rust-for-os-developer
kotetuco
0
600
Other Decks in Programming
See All in Programming
CursorとDevinが仲間!?AI駆動で新規プロダクト開発に挑んだ3ヶ月を振り返る / A Story of New Product Development with Cursor and Devin
rkaga
1
370
ComposeでのPicture in Picture
takathemax
0
130
The Nature of Complexity in John Ousterhout’s Philosophy of Software Design
philipschwarz
PRO
0
170
Vibe Coding の話をしよう
schroneko
14
3.8k
Optimizing JRuby 10
headius
0
590
Rubyの!メソッドをちゃんと理解する
alstrocrack
1
280
一緒に働きたくなるプログラマの思想 #QiitaConference
mu_zaru
81
21k
七輪ライブラリー: Claude AI で作る Next.js アプリ
suneo3476
1
190
生成AI時代のフルスタック開発
kenn
3
380
ASP.NETアプリケーションのモダナイゼーションについて
tomokusaba
0
260
By the way Google Cloud Next 2025に行ってみてどうだった
ymd65536
0
130
「理解」を重視したAI活用開発
fast_doctor
0
300
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
172
14k
The Language of Interfaces
destraynor
158
25k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.2k
The Invisible Side of Design
smashingmag
299
50k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
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