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
970
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
RustでISUCONに勝つには
garasubo
0
260
Armの仮想化支援機構を用いてハイパーバイザーを自作する
garasubo
3
6.4k
RustからX Window Systemを触る
garasubo
0
510
Rustで始める自作組込みOS
garasubo
1
3.2k
クラウド向けOS(?)Unikernelとは何か
garasubo
0
1.7k
論文紹介:KVM/ARM: The Design and Implementation of the Linux ARM Hypervisor
garasubo
0
480
Featured
See All Featured
The Cult of Friendly URLs
andyhume
72
5.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
23
1.9k
Why Our Code Smells
bkeepers
PRO
330
56k
Practical Orchestrator
shlominoach
180
9.7k
Building Better People: How to give real-time feedback that sticks.
wjessup
350
18k
Mobile First: as difficult as doing things right
swwweet
215
8.5k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
How to train your dragon (web standard)
notwaldorf
71
5.1k
Being A Developer After 40
akosma
56
580k
Code Review Best Practice
trishagee
54
15k
Designing for humans not robots
tammielis
247
25k
Stop Working from a Prison Cell
hatefulcrawdad
265
19k
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でないもの含む) • 組込みにおける課題を肌で感じる • (去年も同じようなこと言っていたけど達成できていない) • ドキュメントもメンテナンスします •
インラインアセンブラの構文が古いまま • おまけの記述とかも増やす • 機会があればちゃんとした製本するかも