Таблица | Карточка | RUSMARC | |
Разрешенные действия: –
Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Группа: Анонимные пользователи Сеть: Интернет |
Аннотация
Данная работа посвящена написанию аппроксимации стандартной библиотеки 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. Выводы по разделу
- ЗАКЛЮЧЕНИЕ
- СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
Статистика использования
Количество обращений: 3
За последние 30 дней: 0 Подробная статистика |