2012 Fiscal Year Annual Research Report
Project/Area Number |
22700026
|
Research Institution | The University of Electro-Communications |
Principal Investigator |
鵜川 始陽 電気通信大学, 情報理工学(系)研究科, 助教 (50423017)
|
Project Period (FY) |
2010-04-01 – 2013-03-31
|
Keywords | ごみ集め / プログラミング言語 |
Research Abstract |
本研究ではマルチコアCPUを搭載したスマートフォンを対象としたごみ集めを開発している.その目的は(1)実時間ごみ集めによりユーザインタフェースの反応をよくする,(2)コンパクションを行うことでプログラムを長時間実行してもメモリ不足にならないようにする,(3)高速に実行することである.昨年度,Androidに搭載された言語VMであるDalvik VMに実時間ごみ集めを実装している.本年度は,その性能を向上させる技術を研究した. まず,ヒープを高速に走査する方法を開発し,それをLisp2コンパクションに適用することで既存の走査法よりも高速であることを示した.ヒープの走査はごみ集めの基本的な走査のひとつであり,本研究で開発しているごみ集めのみならず,多くのごみ集めに適用できると期待される. また,Androidでコンパクションを行う際に問題になっていたライブラリのバグを修正した.Androidは膨大な既存のC++で記述されたライブラリを備えているが,その中にDalvik VMとの連携のための規約(JNI)に違反しているコードが存在した.そのためにコンパクションを行ってオブジェクトを移動させると問題が起こっていた.本研究ではソースコードを解析してJNIの規約違反の候補を検出するツールを作成し,それを修正した.その結果,コンパクションが可能になった. これに加えて,メモリ割り当て機構の改良を試みた.Dalvik VMでは,メモリ割り当てには外部のmallocライブラリを用いている.そのため,メモリのどの領域が使用中かを示す情報がごみ集め機構とメモリ割り当て機構で二重管理されている.ごみ集め機構と連携したメモリ割り当て機構を構成することで,この無駄を省くことができた.
|
Current Status of Research Progress |
Reason
24年度が最終年度であるため、記入しない。
|
Strategy for Future Research Activity |
24年度が最終年度であるため、記入しない。
|