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
400
RustでISUCONに勝つには
garasubo
1
600
Armの仮想化支援機構を用いてハイパーバイザーを自作する
garasubo
3
6.9k
RustからX Window Systemを触る
garasubo
0
600
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
550
Featured
See All Featured
Making Projects Easy
brettharned
116
5.9k
Statistics for Hackers
jakevdp
796
220k
BBQ
matthewcrist
85
9.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
The Language of Interfaces
destraynor
154
24k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Embracing the Ebb and Flow
colly
84
4.5k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Producing Creativity
orderedlist
PRO
341
39k
Music & Morning Musume
bryan
46
6.2k
Designing for Performance
lara
604
68k
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でないもの含む) • 組込みにおける課題を肌で感じる • (去年も同じようなこと言っていたけど達成できていない) • ドキュメントもメンテナンスします •
インラインアセンブラの構文が古いまま • おまけの記述とかも増やす • 機会があればちゃんとした製本するかも