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.9k
着信時氏名表示させたいエンジニア vs 簡単には着信時氏名表示できない電話番号 (iOS13対応版) / iosdcjapan-2020-lt-calldirectory
kotetuco
2
1.2k
UIImage and CIImage for Image Processing
kotetuco
9
6.7k
Metal for data-parallel computations
kotetuco
1
1.5k
Preparing for Swift 5 Ownership
kotetuco
0
4.9k
Sansan iOSアプリと R&Dとの共同研究について/sansan-ios-and-reearch
kotetuco
0
620
OS Developer として Rustを使ってみる/using-rust-for-os-developer
kotetuco
0
610
Other Decks in Programming
See All in Programming
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
yakenji
0
790
構造化・自動化・ガードレール - Vibe Coding実践記 -
tonegawa07
0
150
テスト駆動Kaggle
isax1015
1
890
NEWT Backend Evolution
xpromx
1
150
階層化自動テストで開発に機動力を
ickx
1
420
CDK引数設計道場100本ノック
badmintoncryer
2
580
Android 16KBページサイズ対応をはじめからていねいに
mine2424
0
670
型で語るカタ
irof
1
840
Gemini CLI のはじめ方
ttnyt8701
1
100
Reactの歴史を振り返る
tutinoko
1
140
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
2
220
「次に何を学べばいいか分からない」あなたへ──若手エンジニアのための学習地図
panda_program
3
650
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.7k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Testing 201, or: Great Expectations
jmmastey
43
7.6k
A designer walks into a library…
pauljervisheath
207
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
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