第20回GREE オープンソーステクノロジー勉強会:Plan9
Plan9 といってピンとくる人は割とOSマニアなんじゃないかと想像しますが、すごく単純化してしまえば、ベル研のUNIXメンバーがUNIXの思想をさらに推し進めた次世代?OS。
もちろんUNIXから見ての次世代なのでやや懐かしい香りのするOSではありますが、まあ知る人ぞ知る存在だと言えましょう。
このようなマニアック(笑) なイベントを開催してくださった GREE の皆様、スピーカーの高野さん、齊藤さんに感謝感謝です。
公式ページはこちら。
高野さんパート「Plan 9のお話」
高野さんはどんな妖怪に取り憑かれたのか(失礼)数年前から Plan9 にハマり、Plan9日記というブログをつけている変態……いや違った、目の付け所がシャープな人です。
資料は http://www.slideshare.net/oraccha/plan-9 に挙がってます。
基本的にはこれを見ればOK。
印象に残ったネタを挙げておきます。
Gopher and Grenda
Go言語のマスコットGopher君とPlan9のGrenda。なんとなく似てます。
資料6ページ参照。
これってどっちもRob Pikeの奥さんがデザインしたんだって。
へーって、ただそんだけ。
すべてがファイル
- UNIX はすべてを open - read/write - close に抽象化するというモデルを取っていた
- しかし、後から入ってきたやつらはそんな理想を理解しやがらねえ!
- X Window System とか *1
- BSD の Socket とか
- こんなの許せねえ!
- てなわけで Plan9 ではすべてがファイル(笑)
スライドから例を引用(p.19)
- てなわけで Plan9 ではすべてがファイル(笑)
$ cat /net/tcp/clone 5 $ cat > /net/tcp/clone 192.168.168.130!7
とやっておいて、別のターミナルから
$ cat /net/tcp/5/data & $ echo hoge > /net/tcp/5/data echo
と、これで echo クライアントの出来上がり(笑)
サーバは次のページに書いてあるのでみましょう。
- GUI もファイル!
$ pager /dev/screen
とやるとスクリーンショットがいきなり取れる。しかも動的にぐりぐり動く。ウィンドウをつかみたい場合は
$ pager /dev/wsys/*/window
でおっけー。
意外と?多彩な動作環境
開発環境話
齊藤さんパート「軽快なPlan9」
資料は↓
http://www.slideshare.net/govm/plan9
すごーく雑駁にまとめてしまうと、
Plan9 とはあんまり関係ないプレゼンでしたが、仮想化ってどうやって実現されてるの? という、案外知られていないことをさらっとまとめているよいプレゼンだったと思います。
ってなに普通に褒めてるんだ俺。
でも面白かったです。