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
1.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
440
RustでISUCONに勝つには
garasubo
1
650
Armの仮想化支援機構を用いてハイパーバイザーを自作する
garasubo
3
7k
RustからX Window Systemを触る
garasubo
0
620
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
580
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Fireside Chat
paigeccino
35
3.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
We Have a Design System, Now What?
morganepeng
51
7.4k
The World Runs on Bad Software
bkeepers
PRO
67
11k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Producing Creativity
orderedlist
PRO
344
40k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Documentation Writing (for coders)
carmenintech
68
4.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
260
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でないもの含む) • 組込みにおける課題を肌で感じる • (去年も同じようなこと言っていたけど達成できていない) • ドキュメントもメンテナンスします •
インラインアセンブラの構文が古いまま • おまけの記述とかも増やす • 機会があればちゃんとした製本するかも