------------------------------------------------------------------
             第 366 回 PTT のお知らせ

    ---  Programming Tools and Techniques  ---
------------------------------------------------------------------
■日時:2010年6月10日(木) 18時30分から
■場所: 慶應義塾大学理工学部(矢上キャンパス)
    14棟-201教室(セミナールーム1)
    http://www.st.keio.ac.jp/access/index.html
■話者:山田浩史(慶應義塾大学)
■題名:OS 再起動高速化手法 FlashReboot
■概要:
  OS カーネルの複雑化に伴い,カーネル内に潜むバグが引き起こす
  カーネルクラッシュが問題となっている.カーネルクラッシュから
  回復するために,OS 全体を再起動することがシンプルかつ強力な
  手法であるが,OSの再起動は非常に時間のかかる処理である.
  本発表では,話者が研究開発している OS 再起動高速化手法である
  FlashReboot を紹介する.FlashReboot は,仮想マシンスナップ
  ショットを応用することで,OS カーネルの健全なメモリイメージを
  高速かつ安全に作り出す.発表では,FlashReboot の機能や最新の
  実験結果,ならびにLinux カーネルの実際のバグの例について述べる.
■アクセス情報:
 ●矢上キャンパス内の案内
      【14棟-201教室(セミナールーム1)】
   キャンパス内概略図
     http://www.st.keio.ac.jp/outline/guide.html
   で,入り口からスロープを上がって警備室の手前の階段を
   上ると14棟(別名:創想館)という(一部ガラス張りの)
   建物のピロティです.
   ピロティ内左手にある外階段で2階にお上がりください.
   入り口を入るとベンチを挟んで14-201〜14-204という教室が
   あります.そのうちの14棟201教室が会場です.
   セミナールーム1というのもこの部屋の別名です
   (警備室に立ち寄り戴く必要はありません.
   直接,当該教室までお越しください).
 ●矢上キャンパスまでの案内
   【慶應義塾大学理工学部(矢上キャンパス)】
  ・東急東横線日吉駅より徒歩15分程度.
   綱島街道を渋谷方向に進み,2つめの信号(仲の谷交差点)
   で右折.細い道に入って直進してください.しばらく行くと,
   矢上キャンパス入口の緩い坂道(スロープ)があります.
   地図は下記にあります.
    http://www.st.keio.ac.jp/access/index.html
   日吉駅前の日吉キャンパスを抜けてくることもできます.
   駅前の銀杏並木を左折する場所を間違えて行き過ぎる人が
   多いのでご注意ください.
  ・もしくは,JR横須賀線,新川崎駅よりタクシーで7分程度
   (歩くと25分くらい).
■食事など:
  会場の真下(14棟=創想館の1階)にパン屋さん,飲み物の自動販売機,
  喫茶コーナー(軽食あり)があります.
------------------------------------------------------------------
========================
Q&Aメモ
------------------------
(Q01) ジャーナリングしていて
      不整合の状態でリブートした時はどうなるのか?
(A01) それは OS を再起動したときと FlashReboot を
      したときとで変わらない.大丈夫な時もあるし,
      ダメなときもある.
------------------------
(Q02) 一貫性を保つのに必要なものとして,
      ソケットはないのか?
(A02) コネクションが切れるのは通常のリブート
      と同じなので,特別なことをしない..
------------------------
(Q03) 新しいディスクを挿すといったときには?
(A03) 今後も新たなディスクを使うのであれば,
      Healthy Snapshotを作り直す必要がある.
------------------------
(Q04) 圧縮して保管するとどれくらい効くのか?
(A04) かなり効くはずなのでやってみたい.
      スナップショット保存はディスクアクセスを
      要するので,そこを少なくするアプローチは
      効くはず.
------------------------
(Q05) 実装はメモリアロケータに依存する?
(A05) ゲストOSに依存するが,リソースアロケータに
      依存することはない
------------------------
(Q06) ヘルシースナップショットというのは面白い.
      DBの世界ではデータの整合性がとれている状態を
      healthy と呼んでいる.OS の世界でも,OS や
      App. が healthy であるという状態は定義できるのか?
(A06) 定義は難しい.経験的にといったところ.
------------------------
(Q07) スナップショットというのは毎回とる必要があるのか
(A07) 運用時には必要ない.メンテナンスを行ってアップデート等を
      行った場合,healthy snapshot を作り直す必要がある.
------------------------
(Q08) ファイルシステムに関して手を入れているところで
      オーバヘッドはどれくらい?
(A08) システムが運用中にはオーバヘッドは掛らないが
      スナップショットをとるときにかかる.
      しかし,スナップショットをとるという作業自体が重い.
------------------------
(Q09)スナップショットをとるコストはどれくらい重いのか
(A09) 搭載しているメモリサイズにも依るが,
      最低ラインで3〜4秒
------------------------
(Q10) スナップショットは1度とれば,何度も使い回せるのか?
(A10) 基本的には使い回すことができる.
      ただ,アプリケーションを更新したときには注意がいる.
      もし,そのアプリケーションが healthy snapshot 上で稼働していれば,
      改めて healthy snapshot を作り直す必要がある.
------------------------
(Q11) アプリケーションによっては,時間をとっておいて,
      次の時間との間の差分で処理をするものがあるが,
      その場合はどうするか?
      リアルタイムシステムで何秒か待ってから処理をするというような
      場合があるので,何かしら不具合は出ないのか?
(A11) 時間は Xen が調整してくれるので問題ないはず.
========================