Algorithms
В данной статье предложен алгоритм оценки максимального времени отклика задач (Worst Case Response Time — WCRT) в многопроцессорных системах с планировщиками с приоритетом и вытеснением и интервальной неопределенностью длительности выполнения работ. Между задачами имеются зависимости по данным. Для каждой задачи задан приоритет, период и интервал [BCET, WCET], которому принадлежит время выполнения на процессоре работ этой задачи. Если уменьшение времени выполнения задачи A может привести к увеличению времени отклика задачи B, то задача A называется аномальной задачей для задачи B. Согласно выбранному авторами подходу, для получения оценки WCRT некоторой задачи необходимо выполнить два шага. На первом шаге с помощью предложенного в работе алгоритма осуществляется построение множества задач, аномальных для заданной задачи. Приведено доказательство корректности этого алгоритма. На втором шаге с помощью генетического алгоритма выполняется поиск WCRT. Пространство поиска — множество всевозможных наборов длительностей выполнения аномальных задач. Было разработано инструментальное средство на языке Python3, реализующее предложенный подход. Проведено экспериментальное исследование, в ходе которого предложенный метод сравнивался по точности и скорости с двумя известными методами оценки WCRT: методом, не учитывающим интервальную неопределенность, т.е. предполагающим, что время выполнения всех работ равно WCET, а также с переборным методом. Экспериментальное исследование показало, что в отличие от переборного метода, предложенный метод применим для анализа вычислительных систем реальной размерности, а также позволяет достичь большей точности, чем метод, не учитывающий интервальную неопределенность.
Computer System Organization
Задача защиты программного обеспечения от эксплуатации возможных неизвестных уязвимостей может решаться как путем поиска (например, с помощью символьного исполнения) и последующего устранения уязвимостей, так и путем использования систем обнаружения и/или предотвращения вторжений. В последнем случае эта задача решается обычно путем формирования профиля нормального выполнения программ, а недопустимое отклонение от нормального состояния расценивается как аномалия или атака. В настоящей работе рассматривается задача защиты заданного исполнимого файла (программы) P от эксплуатации неизвестных уязвимостей в нем. Для этого предлагается способ построения профиля нормального выполнения программы P, в котором кроме набора легальных цепочек системных и библиотечных функций длины l учитывается расстояние между соседними вызовами функций, вычисляемое как разность адресов вызова соответствующих функций. Учет расстояний между вызовами функций позволяет выявлять исполнение вредоносного шеллкода, использующего вызовы системных и/или библиотечных функций, если хотя бы один из используемых в шеллкоде вызовов находится на нетипичном для программы P расстоянии от предыдущего вызова. В работе строится алгоритм и система обнаружения аномального выполнения кода и проводятся эксперименты в случае, когда P — браузер FireFox для операционной системы Windows.
Пространственно-неоднородные структуры световых волн используются как механизм уплотнения информации в системах оптической и волоконно-оптической связи. В работе рассматривается математическая модель генератора оптического излучения с контуром нелинейной запаздывающей обратной связи и оператором растяжения (сжатия) пространственных координат световой волны в плоскости, ортогональной направлению излучения. Показано, что наличие запаздывания в контуре обратной связи может привести к генерации устойчивых периодических пространственно-неоднородных колебаний. В пространстве основных параметров генератора построены области генерации устойчивых пространственно-неоднородных колебаний, изучен механизм их возникновения, построены приближенные асимптотические формулы.
Theory of Computing
Предлагается статически типизированная версия модели функционально-потоковых параллельных вычислений, которая за счет использования асинхронных последовательных потоков обеспечивает представление динамически изменяющегося параллелизма. Рассмотрены особенности синтаксиса и семантики статически типизированного языка функционально-потокового параллельного программирования Smile, обеспечивающие поддержку асинхронных последовательных потоков. Основная идея подхода базируется на использовании концепции взаимодействующих последовательных процессов Т. Хоара применительно к управлению по готовности данных. Предполагается, что готовность данных сопровождается выдачей управляющих сигналов, информирующих процессы о свершении тех или иных событий. Отличительной особенностью подхода является включение в модель специальных асинхронных контейнеров, которые могут порождать события по частичному заполнению. Этими контейнерами являются поток и рой, каждый из которых имеет свою специфику. Поток используется для обработки данных одного типа, поступающих последовательно и асинхронно в произвольные промежутки времени. Размерность поступающих данных изначально неизвестна, поэтому завершение обработки осуществляется по признаку конца потока. Рой используется для описания независимых данных одного типа, над которыми возможно выполнение массовых параллельных операций. В отличие от потока, его размерность фиксирована и известна заранее. В работе описаны общие принципы организации асинхронных последовательных потоков с произвольным поступлением данных. Рассматривается использование потоков и роев в различных ситуациях. Предлагаются языковые конструкции, позволяющие описывать работу с роями и потоками и особенности их применения. Представлены примеры функций, при реализации которых использованы различные подходы к описанию параллелизма: рекурсивная обработка асинхронных потоков, обработка потоков при недетерминированном и упорядоченном выполнении операций, прямое и ссылочное обращение к элементам потоков и роев, конвейеризация вычислений. Дается предварительная оценка параллелизма в зависимости от временных соотношений между темпом поступления данных и скоростью их обработки. Предложенные методы могут быть использованы при разработке перспективных языковых и инструментальных средств архитектурно-независимого параллельного программирования.
Discrete Mathematics in Relation to Computer Science
Два ресурса (подразметки) называются подобными, если в любой разметке любой из них может быть заменен другим, и при этом наблюдаемое поведение сети не изменится (относительно бисимуляции разметок). Известно, что подобие ресурсов неразрешимо для обыкновенных сетей Петри. В этой статье мы изучаем свойства подобия ресурсов и бисимуляции ресурсов (подмножество отношения подобия, замкнутое по срабатыванию переходов) в сетях Петри с невидимыми переходами (где некоторые переходы могут быть помечены специальной меткой (τ), что делает их срабатывания невидимыми для внешнего наблюдателя). Показано, что для собственного подкласса (p-насыщенных сетей) бисимуляция ресурсов может быть эффективно проверена. Для общего класса сетей Петри с невидимыми переходами можно построить последовательность так называемых (n, m)-эквивалентностей, аппроксимирующую наибольшую τ-бисимиляцию ресурсов.
Computing Methodologies and Applications
Алгоритмы на графах часто используются для анализа и интерпретации биологических данных. Одним из широко используемых подходов является решение задачи поиска активного модуля, в которой в графе биологических взаимодействий выделяется связный подграф, лучше всего отражающий разницу между двумя рассматриваемыми биологическими состояниями. В настоящей работе этот подход расширяется на случай большего числа биологических состояний и формулируется задача совместной кластеризации в графовом и корреляционном пространстве.
Для решения этой задачи предлагается итеративный метод, принимающий на вход граф G и матрицу X, в которой строки соответствуют вершинам графа. На выходе алгоритм выдает набор подграфов графа G так, что каждый подграф является связным и строки, соответствующие его вершинам, обладают высокой попарной корреляцией.
Эффективность метода подтверждается экспериментальным исследованием на смоделированных данных.
Процессно-ориентированные информационные системы (ПОИС) – специальный класс ИС для поддержки задач по инициализации, сквозному управлению и завершению бизнес-процессов. В процессе функционирования такие системы накапливают большое число данных, которые записываются в виде журналов событий. Журналы событий являются ценным источником знаний о реальном поведении системы. Например, в них можно обнаружить информацию о несоответствии реального и желаемого поведения системы; определить узкие места и проблемы с производительностью; детектировать анти-паттерны построения бизнес-системы. Изучением этих задач занимается дисциплина «Извлечение и анализ моделей процессов» (Process Mining).
Практическое применение методов и практик Process Mining осуществляется с помощью специализированного программного обеспечения (ПО) для аналитиков данных. Предметная область анализа процессов подразумевает работу аналитика с большим числом графических моделей. Такая работа будет более эффективной при наличии удобного инструмента графического моделирования. В настоящей работе рассматриваются принципы построения графического инструмента «VTMine for Visio» моделирования процессов на базе распространенного приложения для бизнес-аналитики Microsoft Visio. Приводятся особенности проектирования архитектуры программного расширения для применения в области Process Mining и интеграции с существующими библиотеками и инструментами для работы с данными. Применение разработанного приложения для решения различного вида задач по моделированию и анализу процессов демонстрируется на наборе схем экспериментов.
ISSN 2313-5417 (Online)