Upgrade to Pro — share decks privately, control downloads, hide ads and more …

カーネルVM@北陸 1発表資料 - CRuby on OSv

orumin
July 12, 2014
320

カーネルVM@北陸 1発表資料 - CRuby on OSv

orumin

July 12, 2014
Tweet

Transcript

  1. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    CRuby on OSᵛ
    orumin
    Jul 12th, 2014
    orumin CRuby on OSᵛ

    View full-size slide

  2. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    1 Introduction
    2 OSᵛ
    3 CRuby on OSᵛ
    4 さいごに
    orumin CRuby on OSᵛ

    View full-size slide

  3. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    Introduction
    orumin CRuby on OSᵛ

    View full-size slide

  4. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    Who are you?
    orumin
    学生(今年から大阪,大破ではない)
    seccamp 2012
    GSoC 2014 student
    orumin CRuby on OSᵛ

    View full-size slide

  5. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    Who are you?
    orumin
    学生(今年から大阪,大破ではない)
    seccamp 2012
    GSoC 2014 student
    orumin CRuby on OSᵛ

    View full-size slide

  6. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    GSoCでOSᵛにCRubyを移植!
    OSᵛとは? 何をやったのか?
    orumin CRuby on OSᵛ

    View full-size slide

  7. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    OSᵛ
    orumin CRuby on OSᵛ

    View full-size slide

  8. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    What’s OSᵛ
    Cloudius Systems
    イスラエルベンチャー
    KVMのQumranetのコアメンバーが開発
    ハイパーバイザやIaaS(EC2,GCE etc)で動作
    フルサイズのOSではなく“library OS”
    1 app on 1 VM
    ログインしてから手動のコンフィグ不要,REST APIで制御
    orumin CRuby on OSᵛ

    View full-size slide

  9. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    What’s OSᵛ
    BSDL
    ハイパーバイザー上で動作することを前提
    単一のメモリ空間で,単一のプロセス,マルチスレッド動作
    OpenJDKが移植してあり,任意のJavaアプリケーションが動作
    FedoraのJVMバイナリそのまま持ってきてる
    ネットワークスタックとZFSをFreeBSDから移植
    orumin CRuby on OSᵛ

    View full-size slide

  10. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    What’s OSᵛ
    コンテナ仮想化より高効率
    現在のクラウドは既にハイパーバイザーが用意されている
    その上で汎用のOSが動いて,コンテナが動いて,アプリが……
    orumin CRuby on OSᵛ

    View full-size slide

  11. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    What’s OSᵛ
    コンテナ仮想化より高効率
    二度手間
    複数インスタンス立ててスケールさせるほうが効率高
    library OSであり,1 app per 1 VMであることが生きる
    orumin CRuby on OSᵛ

    View full-size slide

  12. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    What’s OSᵛ
    (image from @syuu1228’s blog)
    orumin CRuby on OSᵛ

    View full-size slide

  13. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    What’s OSᵛ
    libcがある! (musl-libc, BSDL)
    CFLAGS=-fPIC -shared
    main()がある*.soなら動く
    Linuxエミュレーション,たとえばunameはLinuxを返す
    Linuxのアプリケーションを低コストで移植可能(?)
    orumin CRuby on OSᵛ

    View full-size slide

  14. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    What’s OSᵛ
    CRuby
    OSv kernel
    FBSD code
    ZFS
    TCP/
    IP
    COM
    port
    virtio-
    blk
    virtio-
    net
    clock
    ACPI
    sched
    uler
    ramfs
    VFS
    MM
    libc
    ELF
    loader
    syscall
    emu
    libruby.so
    ruby.so
    Ruby app
    オリジナル実装(C++11)
    ポーティング
    バイナリ
    非ネイティブコード
    orumin CRuby on OSᵛ

    View full-size slide

  15. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    Porting native application
    http://github.com/cloudius-systems/osv/wiki/
    Porting-native-applications-to-OSv
    orumin CRuby on OSᵛ

    View full-size slide

  16. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    Porting native application
    先述通り,libcのPOSIX APIがありLinuxエミュレーションをしているの
    でほぼそのまま動作
    makeのときshared binaryを吐くように調節してやれば良い
    巨大なアプリケーションだとちょっと辛いかもしれない……
    orumin CRuby on OSᵛ

    View full-size slide

  17. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    Porting native application
    もう一つ,OSᵛのイメージの,ファイルレイアウトを書く必要アリ
    usr.manifest
    orumin CRuby on OSᵛ

    View full-size slide

  18. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    Porting native application
    Figure 1: usr.manifest
    orumin CRuby on OSᵛ

    View full-size slide

  19. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    Porting native application
    じゃあこれで誰でもすぐ移植できますね?
    orumin CRuby on OSᵛ

    View full-size slide

  20. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    Porting native application
    アッハイ
    orumin CRuby on OSᵛ

    View full-size slide

  21. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    CRuby on OSᵛ
    orumin CRuby on OSᵛ

    View full-size slide

  22. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    いしょくのげんじつ
    存在しない数多のAPI
    そもそも内部的には単一アドレス空間
    直接メソッド呼んだりするので,POSIXに合わせたAPIがないこと多数
    仕様上存在しない(できない?)fork(2)やexec(2)
    これの扱いをどうすべきか何度も議論されている
    複数立ち上げるVMのELFの名前空間を共有?
    orumin CRuby on OSᵛ

    View full-size slide

  23. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    いしょくのげんじつ
    _人人人人人人人人人人人人人_
    > 多くのwork arround必至 <
     ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
    orumin CRuby on OSᵛ

    View full-size slide

  24. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    missing symbol
    Failed looking up symbol __register_atfork
    [backtrace]
    0x31a7f3
    0x35fbb3 <__elf_resolve_pltgot+47>
    0x31c8e5 +1317>
    0x3b7734
    0x3b7b80 >, i
    +576>
    0x20d366 > const&)
    +246>
    0x20ef10
    0x3fd6a6
    0x3a246b orumin CRuby on OSᵛ

    View full-size slide

  25. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    missing symbol
    大概こうなる
    みたことのないlibc APIをいっぱい知ることできるよ!
    orumin CRuby on OSᵛ

    View full-size slide

  26. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    missing symbol
    解決策
    関数を呼び出すだけのAPI実装
    存在しないシステムコールは,OSᵛが内部的に持っててlibcにないだけの
    ことも
    musl-libcから移植
    OSᵛの持つクラスにパブリックメソッドを追加
    メモリ管理やptreadあたりはC++11で実装されている
    stubをつくる
    どうしようもないときの対処
    orumin CRuby on OSᵛ

    View full-size slide

  27. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    missing symbol
    libcとの格闘がGSoCで大部分占めてます
    orumin CRuby on OSᵛ

    View full-size slide

  28. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    おとしぁな
    libc以外のOSᵛ固有の問題でハマる
    Alphaだけあってそもそもの実装バグを踏む
    Rubyやbundlerの振舞いでもハマる
    rquire ’bundler/setup’するとシステムコマンド叩くのかexec(2)で落ちる
    Windowsはfork(2)とか持ってないはずだから回避方法はあるはず……?
    現在進行形でもハマってる
    EC2,GCEでRubyなサーバー走らせようとしたらOpenSSLのseedに失敗
    RDRAND,virtio-rngがない? (ローカルでは問題ないのに……)
    orumin CRuby on OSᵛ

    View full-size slide

  29. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    おとしぁな
    ローカルだとgdbでアタッチできる
    https://github.com/cloudius-systems/osv/wiki/Debugging-OSv
    IaaSのリモート上だと……?
    orumin CRuby on OSᵛ

    View full-size slide

  30. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    おとしぁな
    ローカルだとgdbでアタッチできる
    https://github.com/cloudius-systems/osv/wiki/Debugging-OSv
    IaaSのリモート上だと……?
    色々REST APIが増えてるらしい(でもドキュメント……)
    orumin CRuby on OSᵛ

    View full-size slide

  31. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    おとしぁな
    Figure 2: world_is_mine
    orumin CRuby on OSᵛ

    View full-size slide

  32. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    おとしぁな
    ローカルで動作するならIaaSにデプロイ
    するだけで動く
    orumin CRuby on OSᵛ

    View full-size slide

  33. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    おとしぁな
    orumin CRuby on OSᵛ

    View full-size slide

  34. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    デモ
    デモあります!
    orumin CRuby on OSᵛ

    View full-size slide

  35. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    デモ
    http://osv.orum.in/
    orumin CRuby on OSᵛ

    View full-size slide

  36. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    さいごに
    orumin CRuby on OSᵛ

    View full-size slide

  37. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    さいごに
    http://github.com/cloudius-systems/osv/wiki/Latest-EC2-AMI-list
    orumin CRuby on OSᵛ

    View full-size slide

  38. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    さいごに
    Amazon EC2用のAMIが公開されています!
    おそらくt2.microでも動作
    EC2アカウントお持ちの方は試してみよう!
    orumin CRuby on OSᵛ

    View full-size slide

  39. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    さいごに
    そのうちPublifyのAMIとかも公開できるかも……
    orumin CRuby on OSᵛ

    View full-size slide

  40. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    宣伝
    Kernel/VM探検隊ブログやりませんか
    orumin CRuby on OSᵛ

    View full-size slide

  41. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    宣伝
    Kernel/VM探検隊ブログやりませんか
    発表補足
    低レイヤ連載
    美味しいお店紹介とかでもOK?
    orumin CRuby on OSᵛ

    View full-size slide

  42. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    宣伝
    ブログシステムのバックエンドにOSᵛ,使えたらいいな
    orumin CRuby on OSᵛ

    View full-size slide

  43. .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    .
    Introduction
    OSᵛ
    CRuby on OSᵛ
    さいごに
    宣伝
    興味ある人は@kotatsu_miとかに連絡下さい
    orumin CRuby on OSᵛ

    View full-size slide