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
370
RustでISUCONに勝つには
garasubo
1
530
Armの仮想化支援機構を用いてハイパーバイザーを自作する
garasubo
3
6.9k
RustからX Window Systemを触る
garasubo
0
590
Rustで始める自作組込みOS
garasubo
1
3.3k
クラウド向けOS(?)Unikernelとは何か
garasubo
0
1.7k
論文紹介:KVM/ARM: The Design and Implementation of the Linux ARM Hypervisor
garasubo
0
550
Featured
See All Featured
Designing for humans not robots
tammielis
250
25k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Thoughts on Productivity
jonyablonski
67
4.3k
Adopting Sorbet at Scale
ufuk
73
9.1k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Designing the Hi-DPI Web
ddemaree
280
34k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
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でないもの含む) • 組込みにおける課題を肌で感じる • (去年も同じようなこと言っていたけど達成できていない) • ドキュメントもメンテナンスします •
インラインアセンブラの構文が古いまま • おまけの記述とかも増やす • 機会があればちゃんとした製本するかも