Новости

Підхід до проведення динамічного аналізу Java-програм методом модифікації віртуальної машини Java

  1. анотація
  2. Ключові слова
  3. для цитування

М. К. Єрмаков (МГУ, Москва), С. П. Вартанов (МГУ, Москва)

анотація

На даний момент при розробці програмного забезпечення активно використовуються методи автоматичного статичного і динамічного аналізу програм. Так, динамічний аналіз надає можливості виявляти дефекти і помилки проектування, які проявляються під час виконання програм, вимагаючи мінімального участі експерта. При проведенні динамічного аналізу поширені два підходи до дослідження виконання програми - зовнішній моніторинг, який наразі триває системними засобами і отладчиками, і інструментація програмного коду - модифікація і впровадження додаткової функціональності. При аналізі виконуваного коду у внутрішньому поданні, оброблюваного інтерпретатором або віртуальною машиною, ставати можливе застосування третього підходу - моніторингу засобами самого інтерпретатора або віртуальної машини. У даній статті розглянуті можливості подібного підходу на прикладі проведення аналізу використання динамічної пам'яті в віртуальній машині Dalvik операційної системи Android.
Робота над представленим методом обумовлена ​​обмеженнями віртуальної машини Dalvik, що приводять до неможливості використання великої кількості існуючих інструментів профілювання пам'яті. У даній статті розглянуті безпосередні модифікації віртуальної машини Dalvik, що включають розширення підтримки стандартного протоколу Java Debug Wire Protocol, для відстеження подій виділення, звільнення і доступу до пам'яті. Додатково наведено огляд можливостей розробленого отладчика, що забезпечує реєстрацію даних подій в режимі реального часу для подальшої обробки. Представлений відладчик, заснований на існуючому засобі Dalvik Debug Monitor, дозволяє проводити роботу одночасно з декількома активними процесами і обробку результатів множинних запусків. В рамках практичних експериментів були розглянуто набір стандартних користувальницьких додатків Android, що виконуються на модифікованій версії віртуальної машини Dalvik під контролем розробленого отладчика. Експерименти дозволили виявити деякі базові особливості роботи з пам'яттю, що включають активне використання масивів примітивних типів мови Java і неефективність використання пам'яті, що виділяється для об'єктів класів, що відповідають за відображення елементів графічного інтерфейсу додатків.

Ключові слова

видання

Праці Інституту системного програмування РАН, том 27, вип. 2, 2015 року, стор. 23-38.

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

DOI: 10.15514 / ISPRAS-2015-27 (2) -2

для цитування

М. К. Єрмаков, С. П. Вартанов Підхід до проведення динамічного аналізу Java-програм методом модифікації віртуальної машини Java. Праці Інституту системного програмування РАН, том 27, вип. 2, 2015 року, стор. 23-38. DOI: 10.15514 / ISPRAS-2015-27 (2) -2.

Повний текст статті у форматі pdf М Повернутися до змісту томи

Уважаемые партнеры, если Вас заинтересовала наша продукция, мы готовы с Вами сотрудничать. Вам необходимо заполнить эту форму и отправить нам. Наши менеджеры в оперативном режиме обработают Вашу заявку, свяжутся с Вами и ответят на все интересующее Вас вопросы.

Или позвоните нам по телефонам: (048) 823-25-64

Организация (обязательно) *

Адрес доставки

Объем

Как с вами связаться:

Имя

Телефон (обязательно) *

Мобильный телефон

Ваш E-Mail

Дополнительная информация: