Автоматизация и управление в технических системах
Электронный научный журнал
Архив выпусков

Автоматизация и управление в технических системах: научно-методический сборник трудов кафедры Автоматизированные системы управления Московского автомобильно-дорожного государственного технического университета (МАДИ)


Технические науки
УПРАВЛЯЕМЫЙ СТЕК В ПРОГРАММАХ НА ЯЗЫКЕ СИ
Самохвалов А.Б. 1

1. ФГБОУ ВО "Московский автомобильно-дорожный государственный технический университет (МАДИ)"

Резюме:

Рассмотрена проблема обеспечения надёжности программного кода в отношении безопасности исключений и раннего выхода из процедур и фреймов, написанных на языке Си. Предложен способ реализации управляемого стека на языке Си и представлены результаты его тестирования. Для создания корректного, гибкого программного кода, надёжного управления ресурсами и обеспечения высокоуровневой программной логики разработка программ должна опираться на принцип симметрии. В языке C++ принцип симметрии обеспечивается детерминированным деструктором, а в языке Си это достигается путём применения идиомы (паттерна) управляемого стека. Благодаря управляемому стеку программы на Си становятся устойчивыми к раннему выходу из процедур и фреймов, в том числе, и по причине исключительных ситуаций. В предложенной реализации используется объектно-ориентированный подход и динамическая информация о типе. Результаты тестирования показывают возможность достижения высокой производительности программ на Си с применением управляемого стека. Исследование представляет интерес для разработки и рефакторинга программного кода на языке Си, а также и для других языков программирования.

Ключевые слова: С, C++, язык программирования, управляемый стек, ресурсы, симметрия, исключения, идиомы, паттерны


Библиографическая ссылка

Самохвалов А.Б. УПРАВЛЯЕМЫЙ СТЕК В ПРОГРАММАХ НА ЯЗЫКЕ СИ // Автоматизация и управление в технических системах. – 2016. – № 3;
URL: auts.esrae.ru/20-388 (дата обращения: 06.06.2020).


Просмотры статьи

Сегодня: 40 | За неделю: 40 | Всего: 405


Сайт работает на RAE Editorial System
Яндекс.Метрика