Your SlideShare is downloading. ×

超勉強会 2012

2,019

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,019
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
30
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. T izen porting 入門とその実例 と T izen ちゃん(仮) 2012.12.15 (Sat) Yuya Adachi (@moguriso)
  • 2. 自己紹介● Yuya Adachi(@moguriso)● ブログ: http://moguriqt.hatenablog.jp● DeviceDriver 書いたり – GPU, UART, SPI, I2C...● App の Android 移植など 2/59
  • 3. アジェンダ● 移植までの背景● Tizen Porting ... 起動編● Tizen Porting ... 画面編● 実例● まとめ、今後について 3/59
  • 4. 移植の背景 4/59
  • 5. 2011 年度〜● 関西で勉強会を開始 – 会社の施設、設備を借り始めた● OSC への参加も開始 – 平日でも仕事扱い – 交通費も貰えるようになった ● 東は東京、西は広島まで 5/59
  • 6. 2012 年度〜社内会議にて上司「 今年は成果を求めていく ! ... 成果が出ないと  どうなるって? 」 6/59
  • 7. 2012 年度〜上司「 ( お前がウロウロする )  交通費とか出なくなるっ   てことだよ!? 」 7/59 (※)カッコ内は私の妄想 (?) です、たぶん
  • 8. 2012 年度〜 ( ;゜ Д ゜ ) 8/59
  • 9. 2012 年度〜● 機材を調達 ( 借用 ) – Linux が動くことは知っていた – 環境に触ったこともあった – 会社の先輩 を巻き込んだ にも手助けを お願いした – 2012 年 7 月後半から開始 9/59
  • 10. TizenPorting 〜起動編〜 10/59
  • 11. 基本方針● 大前提は Tizen が動くこと – 動くかどうかもわからない● Tizen が動いてれば後はどう でもなると思っていた – “ 動くこと”が正義! 11/59
  • 12. 環境面の整理 FileSystemtftp で uboot, Linux kernel をロードしNFS を利用して rootfs を mount uboot 12/59
  • 13. 移植作業(1)● u-boot (bootloader)● LinuxKernel (2.6.x ) – BSP で patch 提供 らくらく出来た! ... そもそも、 patch を当てて build しただけ ... 13/59
  • 14. 移植作業( 1.1 )2012/08 前半 先輩「 動いたでー 」 14/59
  • 15. 移植作業( 1.2 ) 速っ !( ;゜ Д ゜ ) 15/59
  • 16. 移植作業( 1.3 )mer# 16/59
  • 17. 移植作業( 1.4 )私 「それ Tizen ちゃう Mer や!   しかも、 なんで CUI ?」先輩「だって Kernel にパッチが    当たってる みたいで 画面が   でーへん! 」 (※)実際に Mer は Kernel に patch が   当たっている (?) みたいです 17/59
  • 18. 移植作業( 1.5 )● Mer は諦めて Tizen に環境を 移行してもらう 「折角環境作って、 Kernel ブートする所ま で行ったのにまた1からやり直しや」 とかブツブツ言われたるも、なんとかお願 いして Tizen に気分を代えてもらった。 18/59
  • 19. 移植作業( 1.6 )2012/08 半ば先輩「 起動するように   なったで 」 19/59
  • 20. 移植作業( 1.7 ) ************************************************************●* SAMSUNG LINUX PLATFORM *●************************************************************●●xx.xx.xx.xx login: root●-sh-4.1# 20/59
  • 21. 移植作業( 1.8 ) やっぱり CUI か ! ( ;゜ Д ゜ ) Scratch Build System(SBS) で生成された rootfs をそのまま NFS で mount させていました。それま では全く動いていなかったので” Sumsung” と出た だけでかなり感動しました 21/59
  • 22. 移植作業( 2 )● root ファイルシステムの構築 – mic コマンドを利用 (fs 指定 ) – NFS で mount#mic create fs lb-tizen_20120617.2.ks -o . 動くようになってきて、面白くなってきたので、このあ たりから自分でも手を動かすようになりました 22/59
  • 23. 移植作業( 2.1 ) rootfs を差し替えただけで、スプラッシュが出るよう になった。これはモチベーションがとても上がった 23/59
  • 24. 移植作業( 2.2 ) この時点ではエラーが出ていて、 Tizen のメニュー 画面は出ていなかった。マウスカーソルも出ていな かった。 ともあれ、先輩のいない所で動かして画面が出た ので、先輩にすごく自慢した 24/59
  • 25. 移植作業( 2.3 )2012/08 後半先輩「 メニュー出たで。   あと、マウスカーソルも   出るようにしたったで〜 」 実際にはフレームバッファを制御する ドライバにも手を入れています 25/59
  • 26. 移植作業( 2.4 )● フルパスでコマンド指定すると アプリが起動することが判明#/opt/apps/org.tizen.menu/bin/menu 無謀にもこの辺りから 展示会に出すことを画 策し始めました。 改めて考えると、怖いも の知らずでした。。。 26/59
  • 27. 移植作業( - )2012/09 前半 私 「問題はありますが 動い    てます 。     Tizen が動いた という    売りで行きましょう!」 営業「あ、そう」 27/59
  • 28. 移植作業( - )2012/09 前半某社様「 GPU アクセラレーション    が効いてないと出展して    も意味無いですね 」営業「そうですか。   ( 私に向かって) で、 いつできる? 」 28/59
  • 29. 移植作業( - ) 軽っ !( ;゜ Д ゜ ) (※)フィクションです。 「できるだけ頑張れ」的なことは言われましたが ... 29/59
  • 30. TizenPorting 〜画面編〜 30/59
  • 31. 移植作業( 3 )● H/W アクセラレーション対応 – Tizen Mobile 1.0の rootfs は ソフトウェアレンダリングで動いていた # /opt/apps/org.tizen.bro wser/bin/browser ●CRI<2459>:elementary elm_ win.c:1869 elm_win_add() OpenGL engine creation failed. – X11 対応の GPU ドライバとか必要なもの 多数 31/59
  • 32. 移植作業( 3.1 ) 32/59
  • 33. 移植作業( 3.2 )● EVAS/ECORE/EINA/EET/ ELEMENTARY... EFL 周りのモジュールを大半 OpenGL(ES) 対応にリビルド 続きは Web(http://moguriqt.hatenablog.jp) で 33/59
  • 34. 移植作業( 3.x )● EFL(evas) には既に SGX を 利用するパスがあった● 基本的にビルドオプションを変 更してリビルドしただけ 34/59
  • 35. 移植作業( 3.3 )● 劇的ビフォーアフター – Before : 0fps ● 1 フレームに 5 〜 6 秒 (0.25fps) – After : 7fps ● 30 倍以上の高速化! 35/59
  • 36. 移植作業( 3.4 )(  ̄∇ ̄ )v ドヤッ ! 36/59
  • 37. 移植作業( 3.5 )2012/09 半ば  A 社様「 7fps... 遅いですね! 」  B 社様「 遅いですね! 」 上司「ええ、 遅いですね! 」 営業「はい、 遅いですね! 」 (※)フィクションです。 37/59
  • 38. 移植作業( 3.4 ) (  ̄□ ̄; ) 38/59
  • 39. 移植作業( 3.5 )2012/09 半ば  A 社様「ハイエンドモデルを     貸与します 」  B 社様「 1ヶ月あれば出来ま     す? 」 上司「はい!」 営業「はい!」 (※)フィクションです。 39/59
  • 40. TargetBoard Spec CPU Cortex-A9 800MHz (Dual Core)MIDDLE メモリ 1GB GPU PowerVR SGX 540RANGEBOARD 40/59
  • 41. DevPhone Spec CPU Cortex-A9 1.2GHz (Dual Core) メモリ 1GB GPU Mali-400MP 41/59
  • 42. DevPhone で動かすと 19fps! 42/59
  • 43. TargetBoard Spec CPU Cortex-A9 1.0GHz (Quad Core) HIGH メモリ 1GB GPU PowerVR SGX 543MP2 ENDBOARD 43/59
  • 44. HighEndBoard 18fps! 44/59
  • 45. 移植作業( 3.x )● 劇的ビフォーアフター (2) – Before : 7fps – After : 18fps ● 実に 2.57 倍の高速化! 45/59
  • 46. 移植作業( 3.x ) この後も、紆余曲折があり 多くの方に多々ご迷惑を お掛け致しました m(_ _)m 46/59
  • 47. 実例 47/59
  • 48. 48/59
  • 49. まとめ 49/59
  • 50. まとめ● ” 動く”レベルであれば比較的容 易に移植可能だった – ホボ素の Linux そのまま● ハードウェア機能を有効化するに はドライバやソースの入手でハード ルは高かった ( 全体で 2w × 2 人位) 50/59
  • 51. 今後について 51/59
  • 52. 今後について● 3D 描画に未だ問題がある – 2.0a だと色々変わってる – 直す● 車載向け機能の追加 – Tizen IVI, Qt – GENIVI OSS 52/59
  • 53. Tizen ちゃん (仮) 54/59
  • 54. 発案は西のきつねこと@fox_twitting さん 55/59
  • 55. 絵師は@tiaritiari さん 56/59
  • 56. 名前募集中です! 57/59
  • 57. 打倒クラウディアたん! 58/59
  • 58. フォクすけくんにも 負けません!! 59/59
  • 59. 名前募集中です!大事な事だから2回言いました! 60/59
  • 60. Q & A 61/59
  • 61. ご清聴ありがとうございました 62/59

×