第20回グリーオープンソーステクノロジ勉強会

2/10にグリー勉強会カーネルVM探検隊で話したもの+αという感じで1時間ちょっと話ししてきた。資料はこちらにアップロードした。今までのグリー勉強会のお題と比較すると、なんとも異色な感じがして、よく人が集まったな(実際反応はやや鈍かったようですが。。。)というのが率直な感想だけど、とにかく、貴重な機会を提供していただいた一井さんはじめ、グリーの皆さん、参加していただいたみなさんに感謝します。

公式な参加者数はわからないけど、会場に来ていた人でPlan 9をインストールしたことある人が5人。すごいアウェー感だけど、逆にそれにも関わらず来る人がいるというのは改めてすごいな。

さらに当日は@go_vmさんにもお願いして、「軽快なPlan 9」話をしてもらった。KVMの床抜きの話である。Plan 9側の実装は非常にad hocなものだから、Plan 9的にもっとうまい見せ方があるんじゃないかなと思った*1。何はともあれ、@go_vm先生の次回作に乞うご期待ということで。

以下、とりあえず記憶している質疑応答、TLに流れている質問をまとめておく。抜けているものがあれば(もっとあったと思うが)、教えて下さい。

  • ユーザ管理は?
    • authサーバが存在する。
  • セキュリティ周りはどうなっている。
    • ルートユーザの代わりにホストオーナという考えがある。
  • #sや#mといったカーネルバイスへのアクセス制御はどうなっている?
  • 分散OSのイメージ。分散OSといってもいろいろ。
  • マルチサーバの場合、システム全体のブートストラップはどんな形になるのか?
    • 自律的に役割を決めるのではなく、あくまで静的に役割が割り当てられるし、IPも固定。Ken ThompsonのクラウドOS話っていうのは、ここに書いたAsk a Google Engineerでのやりとりのこと。
  • 使えるコマンドとか
  • select/pollやノンブロッキングread/writeがないって本当?ネットワーキングプログラム書きにくいのでは?
    • 当時は嘘言いました。自分で日記に書いたことも使わないと忘れてしまいますね(汗)
  • プロセスの終了コードや signal の値が文字列で、そのメモリを管理するのは誰
  • ioctlにすべてを押し込める代わりに、cloneとかctlみたいなファイルを用意してread/writeする方がきれいと言うけど、本質は同じでは?結局誰がそれを決めるのか?センスが問われる。
  • IPv6どうなっている?
  • 名前の由来は?
    • ed woodのカルト映画、Plan 9 from outer space。
  • ロックってどうなっているの?
  • スレッドってどうなっている?
    • 基本コルーチン。各スレッドがチャネルベースで同期通信を行うCSPモデル。この考えはNewSqueak、Alef、Limbo、Goと脈々と流れている。
  • CPUサーバって結局何?
  • なぜ今回の勉強会はPlan 9だったのか?
  • Plan 9をはじめたきっかけは?
  • 使ってみないとわからない。
    • それはごもっとも。
  • (TL追っかけるときは)glenda9pうざい。

セキュリティモデルは全然理解していないので、ちゃんと勉強しないとな。でも、この手の話はあまり興味が持てなくて、正直苦手だ。一応、「Plan9のセキュリティアーキテクチャ(その0)」、「Plan9のセキュリティアーキテクチャ(その1)」とか、「ACM SIGOPS Operating Systems Review」で何か書こうとはしているのだが、まとめきれてない。Plan 9にあって、UNIXにないものの一つ(というか方向性が違うのだろうか?)がこの辺の話だと思うから、興味を持つ人もいるかもしれない。

ちょっと補足しておくと、元々の認証周りの考え方はKerberosに近く、ネットワーク上はパスワードが流れるのではなく、認証サーバから受け取ったチケットが流れる。またsetuidやルートユーザの考え方はない。ファイルサーバは自分のコンソール以外からユーザプログラムを実行せず、認証されたユーザ以外からの保護されたファイルへのアクセスを禁止する。セキュリティアーキテクチャは第4版でいくつか重要な変更が行われている。これに関しては論文「Security in Plan 9」に詳しい。

あと、結局マルチサーバ構築したことがないので、この辺を突っ込まれると厳しい。いつかはやりたい。

結局twitterのアカウントと顔を一致させることができなかった。これも反省点。

slideshareにアップロードしたスライドを読み返しているんだけど、typoなどなど。

  • P5: ホワイトボードの画像が出ていない。興味ある人はリンク先をただってください。
  • P10: 手を抜いて論文からコピペしたのだが、たぶん線が細すぎて見えなかったのでは?
  • P29: s/Glandix/Glendix/

*1:(追記:2010-02-24)第三回カーネル/VM探検隊の発表によると、その方向で話が進んでいるらしい。すばらしい。