Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 634942)
Контекстум
Руконтекст антиплагиат система
Инженерный журнал: наука и инновации  / №6 2013

Проверка корректности освобождения ресурсов, локальных для функции на языке C (50,00 руб.)

0   0
Первый авторМедников
ИздательствоМ.: Изд-во МГТУ им. Н.Э. Баумана
Страниц12
ID276753
АннотацияЕсли перемененные, хранящие идентификатор полученного ресурса, являются локальными для некоторой функции, то ресурс должен быть свободен до момента ее завершения, иначе его освобождение произойдет только при уничтожении процесса. Оно также должно осуществляться в соответствии с жизненным циклом идентификатора ресурса. Для проверки корректности освобождения локальных ресурсов предложен алгоритм, основанный на статическом анализе ГПУ функции. Он позволяет обнаруживать утечку таких локальных для функции ресурсов, а также попытку повторного освобождения, использования после освобождения и попытку освобождения невыделенного ресурса. Программная реализация предложенного алгоритма использует ГПУ функции на языке C, полученный компилятором GCC. Разработанное программное обеспечение может обнаруживать ошибки, связанные с освобождением локальных ресурсов.
УДК004.052
Медников, А.В. Проверка корректности освобождения ресурсов, локальных для функции на языке C / А.В. Медников // Инженерный журнал: наука и инновации .— 2013 .— №6 .— URL: https://rucont.ru/efd/276753 (дата обращения: 02.05.2024)

Предпросмотр (выдержки из произведения)

УДК 004.052 Проверка корректности освобождения ресурсов, локальных для функции на языке C © А.В. Медников, В.А. Крищенко МГТУ им. <...> Н.Э. Баумана, Москва, 105005, Россия Если перемененные, хранящие идентификатор полученного ресурса, являются локальными для некоторой функции, то ресурс должен быть свободен до момента ее завершения, иначе его освобождение произойдет только при уничтожении процесса. <...> Оно также должно осуществляться в соответствии с жизненным циклом идентификатора ресурса. <...> Для проверки корректности освобождения локальных ресурсов предложен алгоритм, основанный на статическом анализе ГПУ функции. <...> Он позволяет обнаруживать утечку таких локальных для функции ресурсов, а также попытку повторного освобождения, использования после освобождения и попытку освобождения невыделенного ресурса. <...> Программная реализация предложенного алгоритма использует ГПУ функции на языке C, полученный компилятором GCC. <...> Разработанное программное обеспечение может обнаруживать ошибки, связанные с освобождением локальных ресурсов. <...> Ключевые слова: обнаружение утечки ресурсов, ошибки использования ресурсов, обработка ошибок, статический анализ, C, GCC, ГПУ. <...> Если процесс не освобождает своевременно ресурс, выделенный ему операционной системой, то момент освобождения такого ресурса откладывается до завершения процесса. <...> Обработка ошибок на языке C выполняется при помощи условного оператора, часто в связи с оператором перехода как ближайшего аналога блока try ... finally в других языках программирования. <...> В результате, освобождение ресурсов в программе на языке C возложено на программиста, и с ростом числа используемых в функции ресурсов возрастает и количество потенциальных ошибок. <...> Если все переменные, хранящие идентификатор такого ресурса, локальны для функции, то можно утверждать, что ресурс должен быть освобожден к моменту ее завершения, иначе наблюдается ситуация утечки ресурса. <...> А.В. Медников, В.А. Крищенко ствуют <...>

Облако ключевых слов *


* - вычисляется автоматически
Антиплагиат система на базе ИИ