Preview

Труды Института системного программирования РАН

Расширенный поиск

Подход к проведению динамического анализа Java-программ методом модификации виртуальной машины Java

https://doi.org/10.15514/ISPRAS-2015-27(2)-2

Полный текст:

Аннотация

Данная статья посвящена вопросам проведения анализа программ интерпретируемых языков программирования. В качестве целевой задачи рассматривается автоматический сбор и обработка статистики использования динамической памяти при выполнении приложений операционной системы Android на виртуальной машине Dalvik. Рассматриваются основные свойства виртуальной машины Dalvik (организация работы с кучей, протоколы отладки) и описывается ряд возможных модификаций Dalvik, позволяющих проводить сбор информации о выполнении программы. Статья завершается обзором результатов применения использованной модифицированной версии Dalvik для анализа ряда стандартных приложений Android.

Об авторах

М. К. Ермаков
Факультет вычислительной математики и кибернетики, Московский государственный университет им. М.В. Ломоносова
Россия


С. П. Вартанов
Факультет вычислительной математики и кибернетики, Московский государственный университет им. М.В. Ломоносова
Россия


Список литературы

1. Stephen Kell, Danio Ansaloni, Walter Binder, Lukáš Marek. The JVM is not observable enough (and what to do about it). Proceedings of the sixth ACM workshop on Virtual machines and intermediate languages, 2012. pp. 33-38. doi: 10.1145/2414740.2414747

2. Страница документации механизма Dtrace для виртуальной машины HotSpot (http://docs.oracle.com/javase/6/docs/technotes/guides/vm/dtrace.html) [HTML]. Дата обращения: 24.06.2015.

3. Страница продукта YourKit Java Profiler (https://www.yourkit.com/features/) [HTML]. Дата обращения: 30.06.2015.

4. Страница продукта Jprofiler (https://www.ej technologies.com/products/jprofiler/overview.html) [HTML]. Дата обращения: 30.06.2015.

5. Страница проекта Eclipse MAT (https://eclipse.org/mat/) [HTML]. Дата обращения: 30.06.2015.

6. Страница документации инструмента hprof (http://docs.oracle.com/javase/7/docs/technotes/samples/hprof.html) [HTML]. Дата обращения: 30.06.2015.

7. Страница документации протокола JDWP (https://docs.oracle.com/javase/1.5.0/docs/guide/jpda/jdwp-spec.html) [HTML]. Дата обращения: 23.06.2015.

8. Страница описания средства DDMS (http://developer.android.com/tools/debugging/ddms.html) [HTML]. Дата обращения: 30.06.2015.

9. Paul R. Wilson. Uniprocessor garbage collection techniques. Proceedings of the International Workshop on Memory Management, 1992. pp. 1-42.

10. Репозиторий библиотеки ddmlib (https://android.googlesource.com/platform/tools/base/+/master/ddmlib/) [HTML]. Дата обращения: 30.06.2015.

11. Сайт платформы PandaBoard (http://pandaboard.org/) [HTML]. Дата обращения 30.06.2015.


Для цитирования:


Ермаков М.К., Вартанов С.П. Подход к проведению динамического анализа Java-программ методом модификации виртуальной машины Java. Труды Института системного программирования РАН. 2015;27(2):23-38. https://doi.org/10.15514/ISPRAS-2015-27(2)-2

For citation:


Ermakov M..., Vartanov S... Dynamic Java program analysis using virtual machine modification. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2015;27(2):23-38. (In Russ.) https://doi.org/10.15514/ISPRAS-2015-27(2)-2

Просмотров: 139


Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)