Preview

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

Расширенный поиск
Том 38, № 4: часть 2. июль-август
Скачать выпуск PDF
7-22
Аннотация

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

23-44
Аннотация

В статье исследуются критерии эффективности новейшего алгоритма для решения задачи поиска кратчайших путей на графе из заданной вершины – BM-SSP. Алгоритм был опубликован в 2025 году и, как утверждают его создатели, асимптотически превосходит детерминированный алгоритм Дейкстры. Однако в публикации, посвященной этому алгоритму, был дан только теоретический асимптотический анализ времени выполнения, и не было приведено ни одного бенчмарка, который доказал бы его практическую эффективность. Это исследование должно выявить и обосновать условия, при которых алгоритм BM-SSP демонстрирует превосходящую эффективность (с точки зрения времени выполнения и потребления ресурсов) по сравнению с классическими алгоритмами поиска кратчайших путей на графах различной структуры. Эти гипотезы должны быть подтверждены или опровергнуты результатами бенчмарков, которые будут проводиться на тестовой инфраструктуре с использованием разработанного фреймворка нагрузки для тестирования различных графиков.

45-66
Аннотация

Современное проектирование цифровых СБИС предполагает использование языков описания аппаратуры Verilog и SystemVerilog как для логического синтеза, так и для симуляции, однако не все конструкции этих языков синтезируемы, а множество поддерживаемых конструкций различается между инструментами синтеза. При этом инструменты синтеза не всегда диагностируют несинтезируемые конструкции и могут молча изменять семантику схемы, что приводит к расхождению поведения RTL-модели и синтезированной схемы, а исправление проблем, обнаруженных на поздних этапах маршрута проектирования, требует значительных временных и экономических затрат. В работе описано формирование набора правил синтезируемости для описаний аппаратуры на языках Verilog и SystemVerilog на основе стандарта IEEE/IEC 62142-2005, руководства STARC RTL Design Style Guide и Reuse Methodology Manual, а также опыта коммерческих инструментов: сформулировано 34 правила, охватывающих не используемые при синтезе конструкции, семантику описаний аппаратных элементов и расхождение синтеза и симуляции. В рамках системы статического анализа SVAN реализованы статические детекторы для проверки соответствия исходного кода этим правилам: разработано 10 новых детекторов (SYNTH14–SYNTH23), обновлен 1 существующий (SYNTH13), часть правил покрывается ранее реализованными детекторами системы. Предложен механизм настройки уровня консервативности, позволяющий адаптировать строгость проверок к возможностям конкретного инструмента синтеза, в том числе с применением анализа потока данных; получены рекомендуемые конфигурации детекторов для инструментов синтеза Yosys, Vivado и Genus. Апробация на открытом инструменте Yosys показала, что несинтезируемые конструкции могут обрабатываться им без предупреждений с изменением семантики схемы, что подтверждает практическую значимость раннего статического анализа. Сравнение с коммерческим анализатором SpyGlass выявило конкретные пробелы в его анализе; нарушения правил найдены во всех десяти открытых проектах, на которых запускались детекторы, об одном из нарушений сообщено разработчикам проекта OpenC910.

67-80
Аннотация

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

81-108
Аннотация

В работе предложена методика количественного сопоставления механизмов усиления защищенности ядер монолитных и микроядерных систем, а также встраиваемых операционных систем (ОС). Существующие руководства и инструменты обычно предназначены для отдельных операционных систем и позволяют проверить главным образом наличие механизмов и их включение; единая методика количественного сопоставления разнородных ядер отсутствует. Сформирована таксономия, включающая 76 механизмов, объединенных в семь категорий. Каждый механизм оценивается по пяти измерениям: наличию и применимости, использованию по умолчанию, стойкости реализации, степени архитектурной интеграции и зрелости. На основе частных оценок вычисляется интегральная оценка с учетом настраиваемых профилей весов измерений и весов категорий, определяемых моделью угроз. Интегральная оценка дополняется показателями охвата таксономии и качества реализованных механизмов, разделяющими широту и глубину защиты. Методика применена к девяти системам, представляющим три аналитические группы: Linux, OpenBSD, NetBSD, Fuchsia (Zircon), GNU Hurd (GNU Mach), seL4, Redox, Tock и Zephyr. Результаты показывают, что разброс оценок внутри одного архитектурного класса может превышать различия между классами. Следовательно, интегральная оценка зависит не только от архитектуры ядра, но и от полноты реализации механизмов, их использования по умолчанию, стойкости, зрелости и активности сопровождения. Полный набор данных с результатами оценки размещен в открытом доступе.

109-122
Аннотация

В работе предлагается методика сравнения операционных систем (ОС) по устойчивости к шторму прерываний – интенсивному потоку аппаратных событий, при котором обработка прерываний вытесняет полезную нагрузку и может привести к отказу в обслуживании (denial of service, DoS). Методика объединяет качественную оценку механизмов защиты и количественный вычислительный эксперимент. В качестве критериев рассматриваются маскирование источника, объединение обработки прерываний, адаптивный переход к опросу, управление прерываниями, сигнализируемыми сообщениями, привязка прерываний к процессорам, вытесняемость ядра и ограничение процессорного времени обработчиков. Экспериментальный стенд построен на основе эмулятора QEMU, виртуального устройства – генератора прерываний и плагина Tiny Code Generator (TCG), который выполняет статистическое профилирование ядра и пользовательского пространства без модификации гостевой ОС. Предлагаемый подход позволяет сопоставлять архитектурные механизмы защиты с измеряемым снижением доли процессорного времени, доступной полезной нагрузке.

123-142
Аннотация

В работе рассматривается метод обнаружения туннелей, реализованных с помощью протокола DNS в сетевом трафике при помощи нейронной сети. Для этого был произведен анализ актуальных методов. Подготовлен набор данных для обучения нейронной сети. Предложенная модель использует на входе последовательность символов, извлеченная из DNS ответа. Обученная модель показала F1-меру близкую к единице. Для проверки работоспособности доработаны модули системы  обнаружения вторжений с открытым исходным кодом Snort3. Обученная модель исполнялась при помощи совместимого модуля LibML. Результаты эксперимента показывают точность близкой к единице и практически полное отсутствие ложных срабатываний. Время обработки DNS пакета с активированным модулем обнаружения при помощи нейронной сети в среднем увеличилось на 13%, а для смешанного трафика, состоящего из различных протоколов время увеличилось на 2%. Анализ экспериментальных данных подтверждает, что использование нейронной сети эффективно дополняет классические средства безопасности, позволяя эффективно обнаруживать скрытые каналы, инкапсулированные в DNS, не оказывая существенного влияния на производительность сигнатурной подсистемы.

143-160
Аннотация

В работе рассматривается проблема низкой эффективности программной реализации алгоритмов комбинаторной оптимизации на RISC-V процессорах. Основное препятствие – квадратичный рост матрицы взаимодействия модели Изинга, который при использовании чисел с плавающей точкой двойной точности приводит к высокому уровню кэш-промахов и падению производительности. Цель исследования – повышение эффективности решения комбинаторных задач на RISC-V платформе за счёт уменьшения разрядности матрицы с использованием методов квантования. Предложенный подход реализует три класса методов округления: простое, стохастическое и восемь схем диффузионного округления. Новизна работы заключается в систематическом сравнении этих методов на трёх классических NP-трудных задачах, а также в анализе их эффективности в зависимости от структуры задачи и доступной разрядности данных. Разработан программный прототип для платы Lichee Pi 4A, интегрирующий квантование матрицы с алгоритмом имитации отжига, который адаптирован для целочисленных типов данных. Эксперименты проведены на трёх NP-трудных задачах: коммивояжёра, о рюкзаке и максимального разреза графа, с разрядностью от 2 до 16 бит. Результаты показывают, что эффективность квантования зависит от структуры задачи. Для задачи максимального разреза диффузионное округление улучшает качество решения на 10% по сравнению с неквантованной матрицей. Для задачи о рюкзаке диффузионные методы не дают преимущества перед простым округлением, а стохастическое требует не менее 8 бит. Для задачи коммивояжёра диффузионное округление эффективно только на 2 битах. Оценка производительности на Lichee Pi 4A показывает, что переход с матрицы двойной точности на 8-битную целочисленную сокращает время выполнения в 3,6–4,7 раза и снижает долю кэш-промахов с 2,64% до 0,13–0,25%. Наилучшая производительность достигается с матрицей int8 и аккумулятором int32. Результаты позволяют решать задачи комбинаторной оптимизации большего размера на RISC-V системах с ограниченными ресурсами.

161-176
Аннотация

В статье рассматривается актуальная проблема определения поверхности атаки для мобильных приложений (МП) в условиях роста числа атак через API‑интерфейсы. Отмечено отсутствие унифицированных подходов, учитывающих роль МП как точки входа в корпоративную инфраструктуру. Предложен комплексный подход к поиску функций входа без анализа серверной части, включающий методы поиска серверных интерфейсов и формирования шаблонов HTTP‑запросов для динамического анализа (DAST) или фаззинга. Выдвигается гипотеза о том, что рассматриваемый подход позволит повысить точность определения поверхности атаки и обеспечить превентивное выявление дефектов на ранних стадиях разработки. Практическая значимость заключается в возможности увеличения покрытия проверок и снижения рисков эксплуатации через серверные интерфейсы. Разработанные методы применимы к платформам Android (Java/Kotlin) и iOS (Swift/Objective‑C). В ходе проведённого исследования разработан и апробирован подход к анализу исходного кода мобильных приложений, направленный на выявление механизмов взаимодействия с серверными точками. В отличие от традиционных методов анализа защищённости, основанных преимущественно на динамическом тестировании по принципу «чёрного ящика» или ручном реверс-инжиниринге, предложенный подход реализует статический анализ с семантическим извлечением точек взаимодействия. Существующие инструменты автоматизированного анализа ориентированы в основном на выявление типовых дефектов ИБ в клиентском коде: небезопасное хранение данных, некорректная валидация сертификатов, избыточные разрешения. Однако, задача систематического картирования серверных API на основе анализа исходного кода с целью формирования поверхности атаки остаётся недостаточно проработанной в научной литературе и практике.

177-192
Аннотация

Объектно-реляционное отображение является распространённым способом работы с реляционными базами данных в приложениях на языке программирования Python: данные описываются через модели, а запросы выполняются на уровне объектов. Цена такой абстракции – накладные расходы, способные заметно влиять на время выполнения типовых операций чтения и записи, особенно в условиях высокого числа транзакций к базе данных. В работе предложена воспроизводимая методика тестирования производительности библиотек объектно-реляционного отображения и представлены результаты сопоставления библиотек Django, Peewee, Pony, SQLAlchemy и SQLModel в 14 сценариях создания, чтения, обновления и удаления данных. Для каждого сценария фиксируются среднее значение, медиана и 99-й перцентиль времени выполнения операции. Результаты сведены в таблицы и сопровождаются краткими комментариями, ориентированными на практический выбор инструмента под характерные сценарии.

193-214
Аннотация

Современные информационно-аналитические системы совместно обрабатывают документы, результаты извлечения информации, базы знаний и делают экспертные проверки. Документные форматы сохраняют исходный контент, графы знаний описывают семантические связи, но происхождение данных, статусы проверки и жизненный цикл извлечённых фактов обычно задаются внешними механизмами. Это затрудняет интеграцию источников, повторную обработку документов и сопровождение предметно-ориентированных алгоритмов. В статье предлагается TDM (Talisman Data Model) – формальная модель для совместного представления документов, извлечённых фактов, предметных областей и баз знаний. Документ и база знаний рассматриваются как контейнеры типизированных фактов с указанием происхождения, статуса проверки, структурного положения и предметного контекста. Модель единообразно описывает исходный контент, результаты извлечения, экспертную верификацию, графовую проекцию и перенос знаний между предметными областями. Основной результат работы – математическая модель корректных состояний TDM-контейнера и операций, сохраняющих эти состояния. Показано, что TDM может служить формальным интеграционным слоем для компонентов интеллектуальной информационно-аналитической системы; практическая применимость модели подтверждается её использованием в платформе «Talisman».

215-224
Аннотация

В майнинге процессов (process mining) графы непосредственного следования (Directly-Follows Graph, DFG) популярны благодаря своей простоте и наглядности. Однако, если процесс является ациклическим, но содержит параллельные события, стандартные алгоритмы построения DFG-моделей могут генерировать «ложные» циклы, которыe не представлены в журнале событий. Такие циклы мешают анализу информационных процессов, значительно снижая интерпретируемость и точность (precision) модели. Эта проблема рассматривалась в работе Н. Шаимова и др., где было предложено синтезировать DFG-модели без ложных циклов с помощью дублирования вершин графа. Задача эта не имеет единственного или лучшего решения, и предложенное ранее решение является эвристическим. Цель данной статьи – предложить альтернативный алгоритм синтеза ациклических DFG-моделей для процессов без повторяющихся событий и сравнить его с существующим на реальных и искусственных данных. Представленный в этой статье метод позволяет получить модель меньшего размера по сравнению с существующим решением, а также стабильно ведёт себя при построении моделей процессов с высокой степенью параллелизма. Также в работе доказано, что устранение ложных циклов ведет к экспоненциальному увеличению размера моделей для процессов с высокой степенью параллелизма.

225-244
Аннотация

Рассматривается задача повышения устойчивости статических методов маркирования нейронных сетей в сценарии извлечения «белый ящик», при котором цифровой водяной знак (ЦВЗ) извлекается непосредственно из параметров модели. Основное внимание уделяется атаке согласованной перестановки весов, сохраняющей качество работы нейронной сети, но изменяющей порядок параметров, используемый при извлечении водяного знака. Для противодействия такой атаке предлагается алгоритм выравнивания весов на основе активаций AWA, который сопоставляет структурные элементы исходной и атакованной моделей по картам активаций и восстанавливает порядок весов перед извлечением ЦВЗ. В рамках работы AWA интегрируется в процедуру извлечения метода NeuralMark, поскольку данный метод обладает высокой устойчивостью к ряду атак модификации модели, но остается чувствительным к перестановке параметров. Экспериментальная оценка выполнена на нескольких наборах данных, архитектурах нейронных сетей и при разных атаках модификации модели. Результаты показывают, что применение AWA повышает устойчивость NeuralMark к атакам перестановки и сохраняет высокую устойчивость к другим рассмотренным атакам модификации модели. В частности, при атаке согласованной перестановки весов NeuralMark-AWA снижает значение метрики BER на CIFAR-10 и Caltech-101, а значение TPR@FPR увеличивается.

245-256
Аннотация

Задача Марковица с ограничением на кардинальность является NP-трудной и традиционно решается коммерческими MIQP-решателями (Mixed-Integer Quadratic Programming). После введения в 2022 году экспортных ограничений, сделавших недоступными с территории РФ как коммерческое программное обеспечение (ПО) MIQP, так и облачные квантовые платформы (IBM Quantum, D-Wave Leap), практикам необходимы открытые альтернативы. В работе проведено систематическое сравнение трёх семейств решателей: двух открытых классических MIQP (решатели SCIP и ECOS_BB с библиотекой CVXPY) и квантово-вдохновлённого решателя имитационного отжига на бинарной QUBO-формулировке включения активов с двухэтапным гибридным конвейером. Все решатели используют единую инстанцию задачи. В эксперименте по синтетической масштабируемости метод квантово-вдохновлённой имитации отжига становится самым быстрым (в 7 раз быстрее SCIP при некоторых условиях), но с зазором оптимальности 11–13%. В другом эксперименте (пошаговое тестирование на биржевых данных индексов S&P 500 и MOEX с реалистичными транзакционными издержками) дискретная оптимизация показывает рост относительно простой стратегии равной доли активов по индексу S&P 500, однако подход neal SA уступает алгоритму SCIP из-за остаточного зазора и повышенного оборота. На нестационарном российском рынке все стратегии оптимизации по среднему и дисперсии уступают стратегии равной доли активов, воспроизводя парадокс DeMiguel–Garlappi–Uppal. Исследование количественно характеризует компромисс между масштабируемостью и качеством, раскладывает зазор оптимальности на составляющие (формулировка, сэмплер, калибровка штрафа) и определяет условия, при которых текущий конвейер на основе стратегии neal недостаточен для практического применения.

257-266
Аннотация

Системы автоматической оценки эссе требуют размеченных данных для каждого нового корпуса. В данной работе исследуется, можно ли снизить эту зависимость за счёт объединения двух парадигм: агентов на основе больших языковых моделей (БЯМ), оценивающих эссе без обучения на целевых данных, и детерминированных лингвистических признаков, описывающих лексику, морфологию и синтаксис независимо от рубрики. На эталонном наборе ASAP 2.0 (17 307 эссе, шкала 1-6) гибридный регрессор на основе случайного леса достигает квадратично взвешенной каппы (QWK) = 0,765 на полном корпусе, приближаясь к лучшим результатам методов обучения с учителем (0,841). Признаки в отдельности дают 0,719 без нейросетей. Жадный ансамбль из 15 агентов набирает QWK = 0,650 без обучения. Рубрики, согласованные с целевой популяцией, значимо превосходят межпопуляционные, подтверждая ведущую роль построения рубрик. Результаты формализованы как «спектр переносимости оценки»: детерминированные признаки переносимы наиболее надёжно, за ними следуют рубрики для целевой популяции и межпопуляционные рубрики.

267-278
Аннотация

В статье рассматриваются рефлексы самодийских *j-: k-, tʲ-/čʲ- и *-ŋk-: -ŋq-, ‑qq- в селькупских диалектах. Данные изоглоссы являются одними из самых древних, позволяющих разделить селькупскую территорию на две языковые зоны: центрально-северную и южную. Целью исследования является выявление междиалектного варьирования рефлексов данных самодийских согласных в южных, переходном, центральных и северных селькупских диалектах на материале XIX–XXI вв. Работа опирается как на корпусные статистические методы исследования и использование инструментов платформы «Lingvodoc», так и на формальный анализ словарных материалов. В результате исследования выяснилось, что в ряде слов 1) самодийский *j- отражен по диалектам следующим образом: южные, переходный (иванкинский) k-, центральные tʲ-/čʲ- (в нарымском tʲ-/čʲ- ~ k ); северные XIX в. tʲ-/čʲ-, XX в. čʲ-; 2) а самодийский *-ŋk- следующим: южные -ŋq-; переходный (иванкинский), центральные, северные ‑qq-. Представленные данные подтверждают статус иванкинского диалекта в качестве переходного, где самодийский *j- перешел в k-, что позволяет отнести его к южной зоне, а рефлекс самодийского *-ŋk- отображен в виде -qq-, что является характерной чертой центральной и северной диалектных групп.

279-292
Аннотация

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

293-302
Аннотация

В статье рассматривается становление и развитие системного программного обеспечения в СССР в сопоставлении с западными подходами. Автор анализирует институциональные предпосылки формирования отечественной вычислительной культуры, эволюцию программирования от механических вычислительных процедур к математически ориентированной дисциплине, а также роль академических центров в создании формальных методов, языков программирования и операционных систем. Особое внимание уделяется периоду распространения ЕС ЭВМ и параллельному развитию оригинальных архитектур, ориентированных на научные и оборонные задачи. Завершающий раздел посвящён различиям между российской и западной школами программирования в конце XX – начале XXI века и анализу того, как современные технологии искусственного интеллекта способствуют их сближению.



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


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