2012-07-09 8 views
7

dalvikヒープにメモリー領域を割り当てるには、通常のmallocの代わりにdlmallocを使用し、dlmallocを使用する理由とmallocとの違いをアプリケーションで使用します。 (私が知っているように、dalvik VMの作成中にdalvikヒープを割り当てるには、mallocが使用されます)。mallocとdlmallocの相違点

+0

[メモリ割り当てに関するウィキペディアの記事](http://en.wikipedia.org/wiki/C_dynamic_memory_allocation)とdlmallocに関するセクションは読んでいますか? – gfour

答えて

13

上位ビットは、Dalvikがデフォルトのmalloc管理ヒープ他のサブシステムが干渉しないことを知って、割り振りがどのように起こったかについて、適切な種類の制御を行うことができます。

明らかに、dlmallocは、私たちが必要としていた隔離とフックを提供する合理的に成熟した既存のライブラリでした。私がチームを去った時点までの意図は、最終的にそれを別のものに置き換えることでしたが、その特定の急降下をするには十分に重大な問題にはなりませんでした。

dlmallocとmallocの詳細な違いについて:dlmallocは伝統的なlibc malloc APIの特定の実装ですが、 "malloc"自体は特定の実装に固有のものではありません。しかし、あなたが具体的になったとしても、とにかく "コードを読む"以上のことを示唆することはできません。

+1

dlmallocがAndroidの* mallocとして使用され、通常の使用法とdalvikのために各プロセスに別々のプールを維持しているか、dalvikはdlmallocを使用していますが、他のmalloc呼び出し(jni libまたは何でも)何か他のものを使ってしまうのですか? –

関連する問題