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をやってきて
Search
garasubo
December 07, 2020
0
1k
Rustでの自作OSをやってきて
Rust LT Online #2での発表資料です
https://rust.connpass.com/event/195468/
garasubo
December 07, 2020
Tweet
Share
More Decks by garasubo
See All by garasubo
Cancel Safetyとスレッドリーク
garasubo
1
430
RustでISUCONに勝つには
garasubo
1
640
Armの仮想化支援機構を用いてハイパーバイザーを自作する
garasubo
3
7k
RustからX Window Systemを触る
garasubo
0
610
Rustで始める自作組込みOS
garasubo
1
3.4k
クラウド向けOS(?)Unikernelとは何か
garasubo
0
1.7k
論文紹介:KVM/ARM: The Design and Implementation of the Linux ARM Hypervisor
garasubo
0
570
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Being A Developer After 40
akosma
89
590k
Adopting Sorbet at Scale
ufuk
74
9.2k
A designer walks into a library…
pauljervisheath
205
24k
Building Adaptive Systems
keathley
39
2.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
It's Worth the Effort
3n
184
28k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Code Review Best Practice
trishagee
66
17k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Transcript
Rustでの自作OSをやってきて @garasubo
自己紹介 ハンドルネーム:ガラスボー Twitter:@garasubo • 趣味で組込みOSを自作していました • 本業はWeb開発(not Rust)
去年まで • Rustでの自作OSが一段落する • 簡易的なスケジューラーやプロセス間通信などを実装 • 成果物:erkos • 次どうしようかなーと思案していた
今年 • 進捗ダメです • 社会が悪い、俺は悪くない • イーサーネットドライバを組もうとしている(12月中にはなんとか) • その代わりドキュメントをまとめて公開した •
Rustで始める自作組込みOS入門 • 組込み初心者でも始めやすいように工夫したので興味があればぜひ • その他ブログでRustの低レイヤー関係のプロジェクト等を紹介 • Rustで組込みプログラミングや自作OS作成をするには
Rustでシステムプログラミングってどうなの? • メジャーな企業でのユースケースも増えつつある • Googleのcrosvm、Amazonのfirecrakerなど • Linux開発者の中でも注目が集まる • 研究の分野でも話題に •
組込みOSのTock[SOSP ‘17] • Theseus[OSDI ‘20]、RedLeaf[OSDI ‘20] • Rustのコンパイル時の保証を利用することで新たなOS構造の提案がされている • Knurling-rs • 組込み開発のツール群を開発しスポンサーを募っている • Rustのメジャーなユースケースのひとつになりそう(?)
今からRustでシステムプログラミングしたい! • Writing an OS in Rust • x86系CPU上で自作OSするためのドキュメント •
メモリ管理やユニットテストのテクニックなどトピックが広い • Embedonomicon • 組込みのブートストラップコードの解説 • 日本語版もある • Operating System development tutorials in Rust on the Raspberry Pi • Raspberry Piを使った自作OSのチュートリアル
来年の抱負 • 既存の組込みプロジェクトの勉強(Rustでないもの含む) • 組込みにおける課題を肌で感じる • (去年も同じようなこと言っていたけど達成できていない) • ドキュメントもメンテナンスします •
インラインアセンブラの構文が古いまま • おまけの記述とかも増やす • 機会があればちゃんとした製本するかも