CE Linux Forum 第28回テクニカルジャンボリー(Japan Technical Jamboree)に参加中
今日来ている、CE Linux Forumのやつ、熊猫さんが出られるそうだ
15名くらい参加しているが、ちょっとアウェイ感抜群!
セッション1
天野さんの東京のものを、ビデオ上映、天野さんとSkypeで繋いで、質疑応答
天野さん自己紹介
- MoblinはATOMベースで最適化されたディストリビューション
- Moblinの紹介(天野さん)
- Miracle Linuxで勤務
- Moblinプロジェクトには1年ほど前から参加
- ATOMベースの開発
Moblinが日本では知られていないので紹介する
Moblinとは?
Moblin v1
- GNOME Mobileをベースに考えられている
- Kernel-2.6.24
- Poulsbo(US15W)パッチが適用されていた
- ベースになっていたのは、Ubuntu8.0
Moblin v2
- 一つのディストリビューションとして動くように開発されている
- ソフトウエアスタックを定義して開発していく予定
- Kernel-2.6.29
- FASTBOOTを有効にして提供している
- 新しいバージョンを使っている
その他
- BugzillaやGIT、ML、IRC等もある
1年くらい続けて、去年くらいから一部しか盛り上がっていなかった、MLも1日数件だったが、ベータリリース後1日20件くらい流れるようになってきている(注目を浴びてきていると感じる)
Linux FoundationのBoFでMoblinが紹介
Moblinに関しては盛り上げるために人がたくさんいた
3日間で1日目と2日目にセッションがあった
- 1日目:State of Union(Imad Sousou)
- 2日目:大部屋で1日セッション、7つのセッション
Intelのエンジニアがセッションを設けていた- レセプションパーティもあった
Face2Faceで会えたのが一番であった、ビデオよりも実際会うことが重要だと感じたlibrest/mojito
いわゆるTwitterなどのSNSとGUIアプリケーションを統合しようとする昨日
FlickreやLast.FMやTwitterなどからDBUSからアプリケーションに受け取っって連携できるものConnection Manager
- Ubuntuにはネットワークマネージャがあるが、モバイルシステムに特化したネットワークマネージャ
現状のネットワークマネージャの問題点や歴史がある- 現状の問題
- カスタマイズや拡張が難しい
- ネットワークマネージャ自体が機能しないバグがあったりする、ディストリビューションが調整したりしている
- GNOMEやKDEに偏った形で提供したくない
- この中一から作ることになった
Clutter(OpenGLを簡単に使えるようにする仕組み)
Moblin SDK
将来的に・・・
日本の状況
- 日本ではゆるーく、日経Linux2008年09月号にMoblin 1.0ででている
日経Linux 2009年7月号より連載予定- ITPRO LFCS現地レポートもあるので見てほしい
質疑応答
大阪質疑応答
- ATOMを搭載しているとのことだが32Bitだけか?
- Core2と同じ命令セットを使っている、64Bitが出たら対応する形になると思う、現状は32Bitのみ提供
- Moblin v2から、DebianからRPMに変わったそうだが、詳細を教えてほしい
- ちゃんとした変更した利用が帰ってきていない、彼らにとってはRPMの方が使いやすいと判断したみたいだ
- 開発ツールの機種展開やアーキテクチャーを選べたり、機能的に使えたりとかのスケーラビリティが大事になるが、開発ツールに対するコンフィグへの自由度とかで工夫されているか?
- イメージを作る段階でカスタマイズができるが、コンフィグについてはパッケージしなおして組み込んだりとか、ImageCreater2にLoopbackイメージが作れるので、Converterで起動イメージに変換する形で持っていくことができると思う
- Loopbackイメージは、開発イメージではなくターゲットのイメージか?
- アーキテクチャーごとのFSのイメージになる
- 2009年10月でKernelSummitやJapan Linux Symposiumも同様のコラボレーションになるのか?
- たぶんそうなる、私(天野)も参加したい、Moblinのみのイベントも計画しているみたい(深い部分で話ができると思う)
TOMOYO Linuxのメインラインマージおめでとうございます。
詳細は、ZDNetに経緯と記事がありますので読んでください
7月3日にTOMOYO ThankYouパーティ+勉強会を開催します!是非参加ください。
2バージョンある
- メインライン版
- フル機能版(LSM使っていない)
特徴
- パス名ベースのアクセス制御
- ポリシーの記述内容が理解しやすい
- 自動学習
- システム起動から停止まで動かすだけでポリシーを解析して適用できる
組み込み機器とTOMOYO Linux
使うまでの流れ
導入:インストール、ユーティリティも
学習:ポリシーを自動生成 ↑繰り返す
解析:ポリシーの確認を実施、修正 ↓
運用:TOMOYO Linuxの制御機能を有効にして運用を開始TOMOYOのポリシー
デモ
- TOMOYOの動き
- tail /etc/passwdを学習
- head /etc/passwdが動作しないことをデモ
QandA
- 学習を簡単にさせる方法はあるのか?
- 今のところ良い案はないが、用途が決まっていれば、動作が決まってくる、製品試験の網羅のところで動作を決めて行くのがスタンダードだと思う
- 一から手で打つのは大変
- 必要なものはできないのでポリシーを自分で実行してやるしかない
- POS向け設定一覧とかテンプレートとかインターフェースとかないのか?
- いまのところない
- テスト段階でポリシーを入れるのが良いのか、ポリシーを投入後にもテストが必要になると思うが、、、
- 試験のやり方次第だが、普通のやり方ではそうなると思う。2度手間になるので、開発スタイルを変える必要があるので、アイデアを出してほしい
ようやく使う人の事を考え始めたので、意見をいただきたい- 学習でハードが壊れかけたとかFailSafeとかの処理が漏れていたときに、大惨事になるとおもうが・・・どのような運用を想定しているか?
- 2006年に商用システムで導入しているが、正副でのサーバを切り替えまでやったことがある
- クラスタの切り替えをするだけで学習が働くと思うが・・・ハード壊れた系は学習ができないと思う
- なにかが壊れた系は、ない
- ポリシーは事前に配布できるのか?
- ポリシーKnowHowがたまれば、配ることができる(半田)
- ディストロ毎に動きが変わってくる、細かくするのはユーザがカスタマイズになる(原田)
- ポリシーのKnowHowが配布できるということだが、ポリシーの受け口があればやるのか?
- Wiki上にポリシーを教えてほしいと書いてある(半田)
- バージョン管理サーバで精査してリリースとか考えているか?
- 今のところ、特にシステムは考えていない、ポリシーはもらえるものならもらいたい
TOMOYO Linux on Android(Giuseppe La Tona)
イタリアからキタ━━━━━━( ゜∀゜)━━━━━━!!!!英語発表w
- SecureOSグループでTOMOYO Linuxプロジェクトで働いている
- TOMOYOLinuxでAndroidへのポーティングを研究している
起動からのユーザモードまで
- Kernel→Init→ BinderやMediaServerやDaemons、Zygote(Userアプリのボックス)
Dalvik and Zygote
- Dalvik:VirtualMachine for mobile Device
- Zygote:リソースやペイロードクラスをロードする
- zygoteがプロセスをフォークする
Zygote→Dalvik→アプリ
システムサービスや、GUIやアプリを実行するAndroidのセキュリティモデル
- 各々のアプリは自分のプロセスで動作する
- 各々のプロセスがセキュアサンドボックスを備えている
- アプリケーションがユニークなUIDを持っている
- uid:100000から増えて行くIDを持っているApp_0 App_1なんかである
- UIDでフォルダが分けられてUIDでしか使えない
TOMOYO LinuxのAndroidへのポーティング
TOMOYOのPolicy
ブラウザだと
デモ
- csspolicy-edit-Agentのポートに接続するとポリシーが確認可能
- ネットワークコネクションで、UIDが入ってくるので、それで制御
- Operaが接続できない
- 標準ブラウザでは接続できる
- psコマンドをネットワーク経由で止めたり、ローカルのターミナルから許可したりできる
システムへの影響
- Kernel イメージサイズの変更点43キロバイト
- KernelMemoryの84KB
- ポリシ・・・
QandA
- 開発者がポリシーごとに設定するのか?
- Androidの動きがわからないが、TOMOYO Linuxを入れて使うと、セキュリティなのか制限なのかわからなくなる
- Androidを触った時にブラウザのページを開くときにこのアプリを呼びなさい(Intent)ってのがあるそうで、どんなアプリが起動されるかわからないが、どうやって制御するのか?