Your SlideShare is downloading. ×
Androidの中身-第26回NaCl社内勉強会
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Androidの中身-第26回NaCl社内勉強会

2,300

Published on

android inside

android inside

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

No Downloads
Views
Total Views
2,300
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
10
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. Androidの中身 第26回NaCl社内勉強会 中村 成洋 ネットワーク応用通信研究所 Powered by Rabbit 0.6.1
  • 2. 今日のアジェンダ
  • 3. 今日のアジェンダ Androidの中身の話 DalvikVMについて少し 2/19
  • 4. Androidの中身
  • 5. Linuxカーネル 基本的にLinuxカーネルのみ使っている たとえばglibcは同梱していない bionicというBSD libcを改良したものを使 う mallocはdlmalloc 4/19
  • 6. Linuxデバイスドライバ ashmem Anonymous Shared Memory Subsystem(無 名共有メモリサブシステム) このデバイスに対してmmapするとtmpfs経由で メモリ確保できる pin,unpinで簡単にキャッシュの実装ができるらし い Javaレベルからは「android.os.MemoryFile」で つかえる 5/19
  • 7. ashmemの便利なシーン Javaはメモリ管理が隠蔽されてしまっている 組み込みでは困ることもあるよね OSからメモリを取って直接管理したいとか そんなときに使えそう 6/19
  • 8. マルチタスク iPhoneはシングルタスク。。 Androidはマルチタスク! ってか、これが普通なんですよね? 7/19
  • 9. 実現方法 Linuxのfork()を使うよ 1アプリ、1プロセス スレッドとかではない 8/19
  • 10. なんでforkか? 安全だから アプリに問題があって落ちても他のプロセス に影響を与えにくい Linuxにその辺り任せとけばいいじゃん 9/19
  • 11. DalvikVM
  • 12. DalvikVMって何? Android上のVM アプリはこのVM上で動作する 11/19
  • 13. DalvikVM作者 Dan Bornstein作 Dalvikはアイスランド語 「谷間の入り江」って意味 地名 12/19
  • 14. 特徴 JVMじゃない Javaバイトコードを使わない .dexファイルという独自形式のバイトコード jarを更に圧縮したようなファイル構成になってい るそう 13/19
  • 15. 特徴(2) レジスタマシン 最近の主流はスタックマシン 14/19
  • 16. なぜレジスタマシン? 端末がARMなんで〜 レジスタマシンにした方が効率いいし〜 VM演算部分は全部ARMアセンブラで書いている 最近はx86にも対応してる 15/19
  • 17. 特徴(3) GCは「マークスイープ」 マークはBitmapMarking 16/19
  • 18. なぜBitmapMarkingか? copy-on-write問題 あれ、なんか聞いたことある。。 アプリforkしまくり GCでマークすると共有メモリが私有領域に コピーされちゃう BitmapMarkingしましょう 17/19
  • 19. 詳細はGC本を待て!
  • 20. おしまい

×