Androidとは
自己紹介TwitterID  hayabusa333興味があること  OS周りとか下層現在のお仕事  サーバ関係とかやってます信仰    Joel教過激派
Androidについて
まずはAndroidの定義について   確認をするよ!
Android is a software stack for mobile devices that includes anoperating system, middleware and         key applications. ...
Androidはオペレーティングシステム、ミドルウェア、主要アプリケーションを含むモバイルデバイス用の  ソフトウェアスタックである
つまりAndroidの開発者とは
OSやミドルウェアを開発したり、それを制御するアプリケー ションを開発する人のこと
と言うことで         Linux KernelHAL (Hardware Abstraction Layer)      の話を中心にします
Linux KernelAndroidの中心モノリシックカーネル すべてが一体化、一枚岩 OSの構成要素を単一のメモリで実行
Linux3.3でAndroid再びマージサブシステム・機能が統合 ドライバやシステムの開発が容易になる次バージョンからパッチの統合 電源周りのシステム改善
Android固有のカーネル機能リストashmem  Android用の共有メモリpmem(Process Memory Allocator)  プロセスのメモリアロケーター  断片化されたメモリを再構築するlogger  システムロギングファ...
Android固有のカーネル機能リストwakelocks  Androidのパワーマネジメント  アップデート時など、CPUが止まっては困るときに   sleepなどをカーネルレベルで制御OOM handling (Out of Memory)...
Android固有のカーネル機能リストAlarm timers  AndroidのAlarmManagerをサポートするためのカーネ   ル実装  CPUのスリープ状態にかかわらずカーネルに伝えるParanoid network securit...
Android固有のカーネル機能リストBinder  IPC(Internal Procedure Call) の代替え  Androidではインテント処理などのプロセスとプロセ   スの通信間の処理に使われている
IPC(Internal Procedure Call)プロセス間通信 複数のプロセス間での情報のやり取りを制御する仕組  み 通常はプロセス同士が互いに影響を与えないように作  られる
IPC(Internal Procedure Call)メッセージソケットパイプ同期(セマフォ、ミューテックス、イベント)共有メモリ遠隔手続き呼び出し、OSRローカル手続き呼び出し
Linux Kernelについてはここま             で
HALハードウェアを抽象化するレイヤハード依存を上位レイヤにさせない
なぜ、抽象化するのか?CPUが変わっただけでアプリケーションを変更 するのはめんどくさいカメラデバイスが変わっただけでアプリケーショ ンを変更するのはめんどくさい各種センサーが(ry
なぜ、抽象化するのか?Application Framework は 下のデバイスが変わっ ても「知らんがなー」と言うのが普通Application Framework と デバイス部分をつなぐ 仲介者を作って、仲介者が苦労すれば Applic...
Androidの最新の動向
Android2.3はExt4Ext3と互換性がある最大1EiBまでのボリュームサイズ、16TiBまでの ファイルサイズディスク空き領域を事前確認デュアルコアのARMプロセッサにおけるパ フォーマンスがすぐれている
Android2.2以前はYAFFSYet Amother Flash File System組込みOSや、Linuxで使われるデータの頑丈性が高いハイパフォーマンスであるシングルスレッド設計のため、デュアルコアのプ ロセッサではボトルネックになる
期待のBtrfsB – tree file systemビーキエフエス、または、バターエフエスと読む耐障害性、修復機能完備管理が容易まだ開発中であり、Linux3.3でマージされている
期待のBtrfsB – tree file systemビーキエフエス、または、バターエフエスと読む耐障害性、修復機能完備管理が容易まだ開発中であり、Linux3.3でマージされている
まとめLinux を使っているので Linux を理解すれば、ど  うにかなるさすがにLKMLもAndroidを無視できなくなって きた。またARM系のデバイスのコミットが増えて、 リーナス様が激怒する可能性があるよ!
参考資料組み込みAndroid エキスパートテクニックブック必要な情報は大体、こちらからもらいました。斜め読みするだけでもAndroidの理解が深まる一冊買ってね!
参考にした方々Demuyan様資料の 80%ぐらいのネタをぱく …いただきました。Android界隈のすごい人先ほどの資料の著者なおた先生Software design にて連載中カーネル系のすごい人
ご清聴ありがとうございました
Androidについて
Upcoming SlideShare
Loading in …5
×

Androidについて

1,461 views

Published on

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

No Downloads
Views
Total views
1,461
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
6
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Androidについて

  1. 1. Androidとは
  2. 2. 自己紹介TwitterID hayabusa333興味があること OS周りとか下層現在のお仕事 サーバ関係とかやってます信仰 Joel教過激派
  3. 3. Androidについて
  4. 4. まずはAndroidの定義について 確認をするよ!
  5. 5. Android is a software stack for mobile devices that includes anoperating system, middleware and key applications. By Google
  6. 6. Androidはオペレーティングシステム、ミドルウェア、主要アプリケーションを含むモバイルデバイス用の ソフトウェアスタックである
  7. 7. つまりAndroidの開発者とは
  8. 8. OSやミドルウェアを開発したり、それを制御するアプリケー ションを開発する人のこと
  9. 9. と言うことで Linux KernelHAL (Hardware Abstraction Layer) の話を中心にします
  10. 10. Linux KernelAndroidの中心モノリシックカーネル すべてが一体化、一枚岩 OSの構成要素を単一のメモリで実行
  11. 11. Linux3.3でAndroid再びマージサブシステム・機能が統合 ドライバやシステムの開発が容易になる次バージョンからパッチの統合 電源周りのシステム改善
  12. 12. Android固有のカーネル機能リストashmem Android用の共有メモリpmem(Process Memory Allocator) プロセスのメモリアロケーター 断片化されたメモリを再構築するlogger システムロギングファシリティ logcatコマンドのカーネルサポート
  13. 13. Android固有のカーネル機能リストwakelocks Androidのパワーマネジメント アップデート時など、CPUが止まっては困るときに sleepなどをカーネルレベルで制御OOM handling (Out of Memory) OOM処理の変更 メモリ不足の通知
  14. 14. Android固有のカーネル機能リストAlarm timers AndroidのAlarmManagerをサポートするためのカーネ ル実装 CPUのスリープ状態にかかわらずカーネルに伝えるParanoid network security Android独自のセキュリティ
  15. 15. Android固有のカーネル機能リストBinder IPC(Internal Procedure Call) の代替え Androidではインテント処理などのプロセスとプロセ スの通信間の処理に使われている
  16. 16. IPC(Internal Procedure Call)プロセス間通信 複数のプロセス間での情報のやり取りを制御する仕組 み 通常はプロセス同士が互いに影響を与えないように作 られる
  17. 17. IPC(Internal Procedure Call)メッセージソケットパイプ同期(セマフォ、ミューテックス、イベント)共有メモリ遠隔手続き呼び出し、OSRローカル手続き呼び出し
  18. 18. Linux Kernelについてはここま で
  19. 19. HALハードウェアを抽象化するレイヤハード依存を上位レイヤにさせない
  20. 20. なぜ、抽象化するのか?CPUが変わっただけでアプリケーションを変更 するのはめんどくさいカメラデバイスが変わっただけでアプリケーショ ンを変更するのはめんどくさい各種センサーが(ry
  21. 21. なぜ、抽象化するのか?Application Framework は 下のデバイスが変わっ ても「知らんがなー」と言うのが普通Application Framework と デバイス部分をつなぐ 仲介者を作って、仲介者が苦労すれば Application Framework を使う人達は幸せだから抽象化する
  22. 22. Androidの最新の動向
  23. 23. Android2.3はExt4Ext3と互換性がある最大1EiBまでのボリュームサイズ、16TiBまでの ファイルサイズディスク空き領域を事前確認デュアルコアのARMプロセッサにおけるパ フォーマンスがすぐれている
  24. 24. Android2.2以前はYAFFSYet Amother Flash File System組込みOSや、Linuxで使われるデータの頑丈性が高いハイパフォーマンスであるシングルスレッド設計のため、デュアルコアのプ ロセッサではボトルネックになる
  25. 25. 期待のBtrfsB – tree file systemビーキエフエス、または、バターエフエスと読む耐障害性、修復機能完備管理が容易まだ開発中であり、Linux3.3でマージされている
  26. 26. 期待のBtrfsB – tree file systemビーキエフエス、または、バターエフエスと読む耐障害性、修復機能完備管理が容易まだ開発中であり、Linux3.3でマージされている
  27. 27. まとめLinux を使っているので Linux を理解すれば、ど うにかなるさすがにLKMLもAndroidを無視できなくなって きた。またARM系のデバイスのコミットが増えて、 リーナス様が激怒する可能性があるよ!
  28. 28. 参考資料組み込みAndroid エキスパートテクニックブック必要な情報は大体、こちらからもらいました。斜め読みするだけでもAndroidの理解が深まる一冊買ってね!
  29. 29. 参考にした方々Demuyan様資料の 80%ぐらいのネタをぱく …いただきました。Android界隈のすごい人先ほどの資料の著者なおた先生Software design にて連載中カーネル系のすごい人
  30. 30. ご清聴ありがとうございました

×