WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!


Pages:     || 2 | 3 | 4 | 5 |   ...   | 23 |
рассмотрены наиболее интересные из существующих систем управления Предисловие кластерами, с целью обосновать решения, принятые ими при проектировании В третьем томе Трудов Института системного программирования системы управления кластером. Система управления кластером обеспечивает публикуются статьи, посвященные результатам некоторых важных удаленный доступ к кластеру и управление ресурсами кластера, когда он исследовательских проектов, выполнявшихся в Институте в последние годы.

применяется для выполнения нескольких программ (последовательных или Работа А.В. Чернова «Анализ запутывающих преобразований программ» параллельных).

посвящена исследованию свойств преобразований программ, применяемых В статье П.Н Яковенко. «Средства анализа параллельных SPMD программ» для их маскировки. Маскировка программы состоит в таком ее представлен обзор методов и средств анализа производительности и преобразовании, что преобразованная программа (она называется масштабируемости SPMD-программ при их выполнении на параллельных замаскированной или запутанной) обладает следующими двумя свойствами:

вычислительных системах с распределенной памятью. Основной акцент 1. На всех допустимых для исходной программы входных данных сделан на такие проблемы организации отладки параллельных программ, как замаскированная программа выдаёт тот же самый результат, что и визуализация различных аспектов выполнения программы, моделирование исходная, параллельной программы при помощи алгебраических формул, зависящих от 2. Замаскированную программу существенно труднее анализировать, размерности задачи и числа процессоров, мониторинг (контролируемое понимать и модифицировать, чем исходную программу.

выполнение). Обзор основан на анализе большого числа отладочных средств, Одним из способов получения замаскированной программы является разрабатываемых в рамках академических проектов, а также популярных применение маскирующих преобразований к исходной программе. В коммерческих продуктов. Цель обзора – обоснование проекта подсистемы рассматриваемой работе маскирующие преобразования графа потока отладки и мониторинга параллельных программ интегрированной среды управления программы, опубликованные к настоящему времени, изучаются с ParJava.

точки зрения их устойчивости к различным видам анализа программ.

В статье О.И. Самоварова, И.В. Арапова, В.В. Бабковой «Объектная модель Приведена классификация маскирующих преобразований с точки зрения JSCALA» рассматривается объектная модель, реализующая методов анализа программ, которые могут быть использованы для функциональность пакета прикладных программ SCALAPACK в среде восстановления исходной программы. Показано, что для каждого класса ParJava. Эта модель позволяет создавать переносимые, масштабируемые, рассмотренных маскирующих преобразований существуют методы анализа параллельные программы решения задач линейной алгебры в среде ParJava.

программ, которые позволяют эффективно противодействовать этим На примере модели JSCALA показана методика включения в среду ParJava преобразованиям. Приведены примеры распутывания программ, как высокоуровневых объектных моделей параллельного программирования.

замаскированных вручную, так и с помощью автоматических маскировщиков.

В статье В.Н. Юдина “Система информационной поддержки врачебных В последние годы широкое распространение получили многопроцессорные решений, основанная на модифицированном методе динамического вычислительные системы, называемые кластерами. Кластер можно кластерного анализа” описывается система «Спутник Врача», определить как множество рабочих станций (узлов кластера), связанных предназначенная для информационной поддержки врачебных решений в коммуникационной средой и способных работать как единая вычислительная медицине с использованием современных информационных технологий, в система. Работой каждого узла кластера управляет операционная система (как частности, методов распознавания образов.

правило, это одна из версий ОС Linux), но для управления работой кластера в В системе используется общая методика принятия решений с использованием целом требуется дополнительное программное обеспечение, называемое дифференциального ряда и метода аналогий. В отличие от применяемых в системой управления кластером. От качества проектных решений, принятых медицине экспертных систем, «Спутник Врача» помогает принимать решения при разработке системы управления кластером во многом зависит одно из в условиях неоднозначной классификации при неполном наборе показателей важнейших свойств кластера – его масштабируемость (кластер называется пациента. Метод аналогий позволяет врачу предвидеть случаи, когда масштабируемым, если добавление новых узлов пропорционально повышает заболевание выходит за пределы своей обычной симптоматики, проявляясь его производительность).

через симптомы другого заболевания.

В ИСП РАН построен кластер на базе восьми двухпроцессорных узлов AMD В качестве математического аппарата используется метод кластерного Athlon XP, объединенных коммутационной системой Myrinet. Ведется анализа, модифицированный для работы с переменным набором признаков.

разработка системы управления для этого кластера. В обзорной статье А.И.

Приводится формальная постановка предлагаемого метода классификации. На Аветисяна, Д. А. Грушина и А.Г. Рыжова «Системы управления кластерами» основе метода создан Универсальный Количественный Классификатор, 3 который может использоваться как классифицирующий модуль в системах для оценки состояний, прогнозирования и принятия решений. Приводится пример классификации объекта, у которого часть признаков отсутствует. В статье описывается конкретная система медицинской диагностики, но разработанные методы могут быть применены во многих других областях.



Статья А.А. Жданова и М.В. Караваева “Применение нечеткой логики в имитационной системе автономного адаптивного управления” посвящена исследованию возможностей объединения в одной управляющей системе двух технологий управления – нечеткой логики и метода «автономного адаптивного управления». Обладая своими достоинствами и ограничениями, оба метода при объединении дают новое качество, наделяя систему управления новыми свойствами: 1) системы нечеткой логики оказываются удобными для представления в адаптивной системе управления априорной информации о свойствах объекта управления. Это позволяет в процессе работы системы существенно сократить фазу обучения и быстрее достигать высокого качества управления; 2) использование подсистемы нечеткой логики в адаптивной системе управления повышает как качество управления так и эффективность метода ААУ в целом. Основной результат работы состоит в том, что впервые показана возможность использования нечеткой логики для адаптивного управления, т.е. для управления, автоматически изменяющего свои свойства непосредственно в процессе управления, в то время как обычным использованием нечеткой логики является построение систем управления на основе знаний эксперта В статье В.В. Рубанова “Способы отображения объектов в реляционных базах данных” рассматривается современное состояние в области алгоритмов хранения данных объектно-ориентированных программ в реляционных базах данных. Центральное место занимает исследование различных способов организации объектно-реляционного отображения. Этот механизм является основной проблемой при создании систем обеспечения долговременного хранения объектов в реляционных базах данных. Проблема возникает из-за сильного несоответствия понятий объектной и реляционных моделей. Целью статьи является анализ специфики каждой из этих моделей для нахождения возможных путей решения исходной задачи путем комбинации классических и современных решений.

Статья В.В. Рубанова, М.А. Миткевича, Д.А. Марковцева, А.И. Гриневич “Ядро объектно-реляционной системы ODESTOR” посвящена описанию ядра системы. Обсуждаются возможности системы при прямом и обратном проектировании приложений. В первом случае реляционные таблицы могут быть сформированы системой автоматически. Во втором случае имеется заданная структура реляционных таблиц, и требуется с помощью специальных средств описать, как объектные данные будут отражаться в данных таблицах.

Член-корреспондент РАН В.П. Иванников 5 позволяют эффективно противодействовать таким преобразованиям. Для иллюстрации этого приведены несколько практических примеров распутывания программ, запутанных как вручную, так и автоматическими запутывателями.

Задачи запутывания и анализа запутанных программ имеют три аспекта:

Анализ запутывающих преобразований теоретический, включающий в себя разработку новых алгоритмов программ преобразования графа потока управления или трансформации данных программы, а также теоретическую оценку сложности их анализа и раскрытия.

Прикладной аспект включает в себя разработку конкретных методов запутывания (распутывания), то есть наилучших комбинаций алгоритмов, Чернов А. В.

эмпирический сравнительный анализ различных методов, эмпирический E-mail: cher@ispras.ru анализ устойчивости методов, и т. д.

Аннотация. Запутанной (obfuscated) называется программа, которая на всех Третий аспект, психологический пока не поддаётся формализации, но не может допустимых для исходной программы входных данных выдаёт тот же самый результат, игнорироваться. Обратная инженерия (понимание) программ – это процесс, что и оригинальная программа, но более трудна для анализа, понимания и результатом которого является некоторое знание субъекта, изучающего модификации. Запутанная программа получается в результате применения к исходной программу, который является неотъемлемой частью процесса понимания [18].

незапутанной программе запутывающих преобразований (obfuscating transformations).

Методы запутывания должны максимально использовать свойства (точнее, слабости) человеческой психики.

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

аспект задачи запутывания.

В настоящее время широко распространены языки программирования, такие В работе приведена классификация запутывающих преобразований с точки зрения как Java, в которых «исполняемой» формой программы является не машинный методов анализа программ, которые могут быть использованы для их распутывания.

Показано, что для каждого класса рассмотренных запутывающих преобразований код для некоторого типа процессоров, но машинно-нейтральное существуют методы анализа, которые позволяют эффективно противодействовать представление. Задача декомпиляции программы из такого представления таким преобразованиям. Для иллюстрации этого приведены несколько практических обратно в программу на языке Java значительно проще, чем декомпиляция из примеров распутывания программ, запутанных как вручную, так и автоматическими машинного кода. Существует большое число декомпиляторов для языка Java запутывателями.





как распространяемых свободно, так и коммерческих, например [20], что упрощает несанкционированное использование, обратную инженерию и модификацию Java-программ. В качестве одного из способов борьбы с этим 1. Введение рассматривается запутывание программ.

В данной работе исследуется проблема анализа запутывающих преобразований Уже разработано около двух десятков различных запутывателей Javaграфа потока управления функций на языке Си. В работе сделана попытка программ, среди которых есть и коммерческие, например [25]. Простые анализа запутывающих преобразований, опубликованных в открытой печати, с запутыватели удаляют таблицы символов и отладочную информацию из точки зрения их устойчивости к различным видам статического и скомпилированных классов и заменяют исходные имена методов динамического анализа программ. Запутывание изучается на уровне языка Си, бессмысленными короткими именами. В результате размер файлов то есть и исходная программа написана на языке Си, и целевая запутанная уменьшается (до 50%), а скорость выполнения программы значительно программа генерируется также на языке Си.

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

зрения методов анализа программ, которые могут быть использованы для их Более развитые запутыватели программ на языке Java, а также запутыватели распутывания. Показано, что для каждого класса рассмотренных программ на других языках программирования выполняют преобразования запутывающих преобразований существуют методы анализа, которые графа потока управления программы и её структур данных. Методы, программы. Эти ограничения связаны с тем, что все опубликованные методы используемые в них, как правило, подобраны эмпирически и слабо обоснованы запутывания применимы только к таким программам.

теоретически. Сравнительный анализ запутывателей Java-программ, Запутывание программ – достаточно молодое направление исследований.

доступных через Интернет, проведён в работе [14].

Обзор (таксономия) запутывающих преобразований, известных на тот момент, Возможны разные уровни постановки задачи запутывания и анализа был опубликован в работе [5] группы, возглавляемой К. Колбергом и К.

запутывающих преобразований. Во-первых, запутывание может Томборсоном. В дальнейших работах [6], [7], [8], [9], [15] этой группы рассматриваться в рамках языка Java. В этом случае исходная программа опубликованы результаты исследований конкретных алгоритмов запутывания написана на языке Java, и запутанная программа также написана на языке Java. графа потока управления и данных программы, а также приложения Однако язык Java допускает только структурные программы, то есть графы запутывания программ к смежным областям, таким как обеспечение потока управления Java-программ всегда сводимые, что существенно устойчивости программы к несанкционированной модификации (tamperограничивает диапазон применимых преобразований графа потока управления. resistance) или внесение в программу «водяных знаков» (watermarking).

Мы рассматриваем задачу анализа запутывающих преобразований в рамках Классификация, введённая в работе [5], широко используется, и получила языка Си. Поскольку Си – язык более низкого уровня, чем Java или даже байт- дальнейшее развитие в работах [10], [13], [22].

код Java, задачи запутывания и анализа для этих языков оказываются В работах [23], [24] был предложен новый подход к запутыванию графа потока вложенными в соответствующие задачи для языка Си.

управления программы, который заключается в преобразовании графа в Возможна постановка задачи запутывания на ещё более низком уровне, когда «плоскую» форму. Чтобы затруднить статическое определение порядка запутывается программа на языке ассемблера или даже объектная программа в следования базовых блоков используется преобразование, вводящее в машинном коде (в последнем случае она должна генерироваться специальным программу алиасы. Показывается, что статический анализ запутанной запутывающим компилятором). В ассемблерных и объектных программах программы с целью восстановления порядка следования базовых блоков можно использовать специфические особенности работы целевой машины, является NP-трудной задачей.

добившись того, что восстановление программы на Си будет крайне В дальнейшем этот подход был развит в работе [3], которая дополнительно затруднено [17]. Но с другой стороны, методы запутывания, применимые к предлагает использовать переплетение базовых блоков совместно одной архитектуре, могут оказаться неприменимы к другой архитектуре.

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

запутывания мы в этой работе рассматривать не будем.

Pages:     || 2 | 3 | 4 | 5 |   ...   | 23 |










© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.