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

Название: Аппроксимация стандартной библиотеки языка C средствами языка LibSL: выпускная квалификационная работа бакалавра: направление 09.03.01 «Информатика и вычислительная техника» ; образовательная программа 09.03.01_02 «Технологии разработки программного обеспечения»
Авторы: Антунович Павел Юрьевич
Научный руководитель: Сиднев Александр Георгиевич
Организация: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Выходные сведения: Санкт-Петербург, 2023
Коллекция: Выпускные квалификационные работы; Общая коллекция
Тематика: аппроксимация; формальная спецификация; стандартная библиотека C; генерация кода; статический анализ; cpproximation; formal specification; C standard library; code generation; static analysis
Тип документа: Выпускная квалификационная работа бакалавра
Тип файла: PDF
Язык: Русский
Уровень высшего образования: Бакалавриат
Код специальности ФГОС: 09.03.01
Группа специальностей ФГОС: 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/3/2023/vr/vr23-3586
Права доступа: Доступ по паролю из сети Интернет (чтение, печать, копирование)
Ключ записи: ru\spstu\vkr\22907

Разрешенные действия:

Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Группа: Анонимные пользователи

Сеть: Интернет

Аннотация

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

This work’s purpose is to write an approximation of the C standard library functions using the formal specification language LibSL. Different approaches to designing formal specifications for the libraries were reviewed, C standard library formal specification was designed, the C programming code generator from the LibSL specification was developed, the generated standard library was tested and compared with the original library. As the result, the correct formal specification for the part of a standard library was made, which can be used for the static analysis of a code that uses standard library.

Права на использование объекта хранения

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все Прочитать Печать Загрузить
Интернет Авторизованные пользователи СПбПУ Прочитать Печать Загрузить
-> Интернет Анонимные пользователи

Оглавление

  • СПИСОК СОКРАЩЕНИЙ И УСЛОВНЫХ ОБОЗНАЧЕНИЙ
  • ВВЕДЕНИЕ
  • 1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
  • 1.1. Формальные спецификации
  • 1.1.1. Язык спецификаций LibSL
  • 1.2. Язык программирования C
  • 2. ПОСТАНОВКА И АНАЛИЗ ЗАДАЧИ
  • 2.1. Постановка задачи
  • 2.2. Возможности LibSL для спецификации библиотек на С
  • 2.3. Выбор средств реализации генератора кода
  • 2.4. Выводы по разделу
  • 3. РАЗРАБОТКА
  • 3.1. Подготовка к написанию спецификации
  • 3.2. Общая схема работы генератора кода
  • 3.3. Выводы по разделу
  • 4. РЕАЛИЗАЦИЯ
  • 4.1. Написание спецификации на языке LibSL
  • 4.2. Реализация генератора кода на C
  • 4.2.1. Архитектура проекта
  • 4.2.2. Класс Extractor
  • 4.2.3. Класс LibraryGenerator
  • 4.2.4. Класс StructureGenerator
  • 4.2.5. Класс FunctionsGenerator
  • 4.2.6. Класс VariableGenerator
  • 4.2.7. Объект ExpressionPrinter
  • 4.2.8. Класс ActionsGenerator
  • 4.2.9. Пример сгенерированного кода
  • 4.2.10. Тестирование генератора
  • 4.3. Выводы по разделу
  • 5. ТЕСТИРОВАНИЕ СПЕЦИФИКАЦИИ
  • 5.1. Модульные тесты библиотеки
  • 5.2. Выводы по разделу
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Статистика использования

stat Количество обращений: 3
За последние 30 дней: 0
Подробная статистика