×
08.03.2019
219.016.d4b2

Результат интеллектуальной деятельности: СПОСОБ ФОРМИРОВАНИЯ ДАМП ФАЙЛА

Вид РИД

Изобретение

№ охранного документа
0002393530
Дата охранного документа
27.06.2010
Аннотация: Изобретение относится к компьютерным технологиям, в частности к системам и способам формирования дамп файла при возникновении сбоя в работе программы (аварийном завершении программы) в вычислительных системах с ограниченными ресурсами. Техническим результатом является расширение функциональных возможностей. Способ формирования дамп файла ядра при возникновении сбоя в работе программы, выполняемой на компьютере, включает следующие операции: определяют все области памяти, которые использует программа в момент возникновения сбоя; создают мгновенный снимок состояния регистров центрального процессора в момент возникновения сбоя в программе; формируют заголовок дамп файла, при этом используют данные мгновенного снимка состояния регистров центрального процессора; определяют во всех областях памяти область, которая содержит стек программы; определяют значение указателя начала стека программы, при этом используют мгновенный снимок регистров процессора; уменьшают в памяти область, которая содержит стек программы, при этом многократно сдвигают начальный адрес данной области памяти в направлении указателя начала стека; сохраняют уменьшенную область памяти, которая содержит стек программы; формируют итоговый файл, при этом сохраняют в нем данные мгновенного снимка состояния регистров центрального процессора и уменьшенную область памяти, которая содержит стек программы. 2 з.п. ф-лы, 3 ил.

Изобретение относится к компьютерным технологиям, а именно к системам и способам формирования дамп файла при возникновении сбоя в работе программы (аварийном завершении работы программы) в вычислительных системах с ограниченными ресурсами.

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

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

Известны различные подходы к решению проблемы формирования дамп файла.

В способе, приведенном в патенте США №7,010,725 [1], при возникновении сбоя в работе программы содержимое памяти (ядра) сохраняют в основную память компьютера и, в случае если размер дамп файла превышает размер основной памяти, часть дамп файла автоматически сохраняют на дополнительное запоминающее устройство, которое постоянно соединено с компьютером.

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

Наиболее близким к заявленному изобретению является способ формирования дамп файла ядра, предложенный в патенте США №6,681,348 [2], в котором в случае возникновения сбоя в программе операционная система компьютера создает полный дамп файл ядра (дамп всей физической памяти компьютера). Затем из этого файла с помощью специального программного средства создают сокращенный, так называемый «мини дамп файл», который включает в себя справочные сведения, структуру данных потока, структуру данных стека (регистры процессора), структуру данных процесса, список загруженных модулей и информационный блок управления памятью компьютера. Данный способ выбран в качестве прототипа заявленного изобретения.

Недостатком способа-прототипа является то, что он не учитывает особенностей встраиваемых систем компьютеров с ограниченными ресурсами, а именно с ограниченным объемом памяти, в которых полный дамп файл ядра не может быть весь сохранен в памяти компьютера, а следовательно, не может быть создан и мини дамп файл ядра. Кроме того, согласно способу-прототипу в мини дамп файл не заносят содержимое стеков программы, в которой произошел сбой, хотя такие данные являются важными для анализа причин сбоя программы. Указанные недостатки ухудшают функциональность способа-прототипа [2].

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

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

- определяют все области памяти, которые использует программа в момент возникновения сбоя;

- создают мгновенный снимок состояния регистров центрального процессора в момент возникновения сбоя в программе;

- формируют заголовок дамп файла, при этом используют данные мгновенного снимка состояния регистров центрального процессора;

- определяют во всех областях памяти область, которая содержит стек программы;

- определяют значение указателя начала стека программы, при этом используют мгновенный снимок регистров процессора;

- уменьшают в памяти область, которая содержит стек программы, при этом многократно сдвигают начальный адрес данной области памяти в направлении указателя начала стека;

- сохраняют уменьшенную область памяти, которая содержит стек программы;

- формируют итоговый файл, при этом сохраняют в нем данные мгновенного снимка состояния регистров центрального процессора и уменьшенную область памяти, которая содержит стек программы.

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

Для выполнения способа важно, чтобы сдвигали начальный адрес данной области памяти в направлении указателя начала стека многократно с максимально возможным количеством повторений.

Для выполнения способа важно, чтобы формировали итоговый файл во встроенном запоминающем устройстве.

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

Для лучшего понимания заявленного изобретения далее приводится его подробное описание с соответствующими чертежами.

Фиг.1. Схема компьютера со встроенной операционной системой, представленной ядром с запущенной программой.

Фиг.2. Схема формирования дамп файла в компьютере со встроенной операционной системой, выполненная согласно изобретению.

Фиг.3. Схема уменьшения области памяти встроенной операционной системы компьютера, содержащей стек программы, в которой возник сбой, выполненная согласно изобретению.

Стандартный компьютер (Фиг.1), в котором может быть выполнен заявленный способ, включает в себя центральный процессор 1, модуль внутренней памяти 2 и встроенную операционную систему 3. В рабочем состоянии операционная система 3 загружена во внутреннюю память компьютера. Область внутренней памяти, в которую загружена операционная система, состоит из области, в которую загружено ядро 4 операционной системы, и область 5-10 пользователя. При этом операционная система 3 выполнена с возможностью управления программой 11 пользователя и возможностью формирования дамп файла 12. Дамп файл 12 включает в себя содержимое мгновенных снимков 6-10 памяти программы пользователя и мгновенные снимки 13 регистров центрального процессора. Средство 14 создания дамп файла является частью операционной системы 3. Программа 11 пользователя состоит из заголовка 15, исполняемой части 6 и инициализированных данных 7.

В случае возникновения сбоя (Фиг.2) в работе программы 11, состоящей из заголовка 15, исполняемой части 6 и инициализированных данных 7, под управлением ядра 4 встроенной операционной системы 3 компьютера сохраняют следующую информацию о состоянии аварийной программы: образы (мгновенные снимки) 13 регистров процессора в момент сбоя программы 11, области, которые включает в себя содержимое стека аварийной программы 10.

Способ формирования дамп файла ядра при возникновении сбоя в работе программы 11, выполняемой на компьютере со встроенной операционной системой 3, включает в себя следующие операции (Фиг.2-3). Определяют все области памяти 2, которые использует программа 11 в момент возникновения сбоя (области памяти, используемые программой, обозначены 6-10; области памяти, не используемые программой, обозначены 5). Создают мгновенный снимок 13 состояния регистров центрального процессора 1 в момент возникновения сбоя в программе 11. Формируют заголовок 15 дамп файла, при этом используют данные мгновенного снимка 13 состояния регистров центрального процессора 1. В приведенном варианте заголовок дамп файла формируют путем последовательного сохранения в файл следующих объектов:

- служебной информации о количестве сохраняемых областей памяти (в данном случае это будет одна область, содержащая стек вызовов рассматриваемой программы),

- мгновенный снимок регистров процессора (в частности, содержащий в той или иной форме указатель на начало стека вызовов; чаще всего процессор предоставляет разработчику возможность прочитать регистр, содержащий упомянутый указатель),

- прочие, необходимые для программного отладчика объекты, например, значения переменных ядра операционной системы.

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

Определяют значение указателя начала стека программы, при этом используют мгновенный снимок регистров процессора. Как известно, большинство процессоров имеют регистр, который используется для выполнения команд из стека команд. Этот регистр называется указатель стека. Мгновенный снимок регистров процессора содержит в себе значение всех регистров на момент сбоя и, в частности, значение регистра «указатель стека». Определить значение указателя стека - значит прочитать значение регистра «указатель стека» из мгновенного снимка.

Уменьшают в памяти область, которая содержит стек программы, при этом многократно (с максимально возможным количеством повторений) сдвигают начальный адрес данной области памяти в направлении указателя начала стека (процесс уменьшения области памяти обозначен 16 на Фиг.2 и детально проиллюстрирован на Фиг.3). Сохраняют уменьшенную область 17 памяти, которая содержит стек программы. Формируют итоговый файл 18, при этом сохраняют в нем данные мгновенного снимка 13 состояния регистров центрального процессора 1 и уменьшенную область памяти, которая содержит стек программы. Причем итоговый файл могут формировать во встроенном запоминающем устройстве. Следует отметить, что итоговый файл является дамп-файлом ядра с ограниченными возможностями (по сравнению с обычным, полным дамп-файлом). В частности, полученный дамп-файл позволяет просматривать только стек вызовов аварийно завершившейся программы. В то время как полный дамп-файл позволяет просматривать значения переменных программы и т.д.

Уменьшение области памяти, содержащей стек аварийной программы 10 (Фиг.3), во встроенной операционной системе 3, состоит в многократном (с максимально возможным количеством повторений) сдвиге 19 начального адреса 20 в направлении указателя 21 начала стека. При этом стек программы обозначен 22. Задача уменьшения области, содержащей стек вызовов, считается решенной, когда невозможно сдвинуть начальный адрес области памяти в направлении указателя стека, при этом не превысив значение указателя стека. При этом считается, что стек растет в сторону конечного адреса области памяти, в которой он содержится. Таким образом, сдвиг начального адреса области памяти не может повредить стек вызовов.

В заявленном способе в дамп файле сохраняют только следующие данные: данные мгновенного снимка состояния регистров центрального процессора и уменьшенную область памяти, которая содержит стек программы (Фиг.2). При этом размер дамп файла ядра значительно меньше объема памяти, занятого программой в момент возникновения сбоя, составляя около 1-5% объема памяти. Таким образом, удовлетворяются условия ограничения ресурсов встроенной операционной системы компьютера.

Заявленное изобретение может быть применено в различных типах компьютерных устройств.

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

Источник поступления информации: Роспатент

Показаны записи 91-100 из 125.
20.03.2019
№219.016.e78d

Способ и устройство для вычисления и фильтрации карты диспарантности на основе стерео изображений

Изобретение относится к обработке стерео изображений и видео и, в частности, к способам вычисления и улучшения карты диспарантности на основе стерео изображений. Техническим результатом является обеспечение высокого качества вычисленной карты диспарантности без появления искажений (артефактов),...
Тип: Изобретение
Номер охранного документа: 0002419880
Дата охранного документа: 27.05.2011
29.03.2019
№219.016.f11b

Осветительная система для жидкокристаллического дисплея с увеличенным динамическим диапазоном отображаемых яркостей

Изобретение относится к области оптического приборостроения и, в частности, к осветительным системам жидкокристаллических дисплеев. Осветительная система для жидкокристаллического дисплея содержит источники света и формирующую оптическую систему. Формирующая оптическая система состоит из двух...
Тип: Изобретение
Номер охранного документа: 0002343520
Дата охранного документа: 10.01.2009
29.03.2019
№219.016.f496

Способ и устройство для перемещения перетяжки лазерного пучка

Способ перемещения выходной перетяжки с сохранением постоянства ее размера заключается в использовании двухкомпонентной лазерной оптической системы (ЛОС). ЛОС содержит первый подвижный компонент на расстоянии d от входной перетяжки, второй подвижный компонент на расстоянии d от первого...
Тип: Изобретение
Номер охранного документа: 0002411598
Дата охранного документа: 10.02.2011
29.03.2019
№219.016.f5f7

Способ и устройство сжатия данных

Изобретение относится к способам и устройствам для обеспечения сжатия данных с минимальными потерями. Техническим результатом является повышение эффективности сжатия данных без потерь. Способ сжатия данных без потерь заключается том, что в память целевого устройства записывают промежуточные...
Тип: Изобретение
Номер охранного документа: 0002450441
Дата охранного документа: 10.05.2012
29.03.2019
№219.016.f63b

Волноводный переход

Изобретение относится к технике СВЧ, а именно к волноводным переходам, служащим для передачи электромагнитных волн из волновода в волноводную линию передачи сверхвысокочастотных сигналов (свч) и обратно. Заявленный волноводный переход содержит волновод, линию передачи свч и диэлектрическую...
Тип: Изобретение
Номер охранного документа: 0002402843
Дата охранного документа: 27.10.2010
29.03.2019
№219.016.f6c7

Согласующая лазерная оптическая система для обеспечения постоянства размера и положения выходной перетяжки

Изобретение относится к оптике, а точнее к лазерным оптическим системам. Согласующая лазерная оптическая система выполнена с возможностью обеспечения постоянства размера и положения выходной перетяжки при вариациях размера входной перетяжки и включает в себя лазер, пучок которого с параметром...
Тип: Изобретение
Номер охранного документа: 0002435182
Дата охранного документа: 27.11.2011
29.03.2019
№219.016.f6de

Система и способ линеаризации усилителя мощности

Изобретение относится к системам и способам линеаризации усилителя мощности и может применяться в современных беспроводных передатчиках. Способ состоит в том, что в системе линеаризации, реализующей способ, содержащей соединенные между собой и устройство предыскажения (5), ВЧ-модулятор (6) и...
Тип: Изобретение
Номер охранного документа: 0002433522
Дата охранного документа: 10.11.2011
10.04.2019
№219.017.049b

Способ предотвращения печати размытых фотографий

Изобретение относится к области электротехники, в частности к цифровой обработке изображений путем автоматического оценивания резкости цифровых фотографий и предотвращения печати размытых фотографий. Способ включает изменение размера изображения в соответствии с размером фотоотпечатка и...
Тип: Изобретение
Номер охранного документа: 0002338252
Дата охранного документа: 10.11.2008
10.04.2019
№219.017.0639

Подключаемый портативный сопроцессор с изменяемой системой команд и способ его применения

Изобретение относится к подключаемым портативным сопроцессорам с изменяемой системой команд и способу их применения. Техническим результатом является повышение быстродействия работы процессора за счет упрощения интеграции процедур управления деятельностью сопроцессора в существующее программное...
Тип: Изобретение
Номер охранного документа: 0002411575
Дата охранного документа: 10.02.2011
19.04.2019
№219.017.3182

Система и способ размещения статических объектов данных в неоднородной оперативной памяти

Изобретение относится к области обработки данных в вычислительных системах. Техническим результатом является повышение производительности вычислительной системы с неоднородной оперативной памятью за счет более эффективного размещения статических объектов данных в памяти. При выполнении способа...
Тип: Изобретение
Номер охранного документа: 0002422883
Дата охранного документа: 27.06.2011
Показаны записи 1-1 из 1.
19.04.2019
№219.017.3182

Система и способ размещения статических объектов данных в неоднородной оперативной памяти

Изобретение относится к области обработки данных в вычислительных системах. Техническим результатом является повышение производительности вычислительной системы с неоднородной оперативной памятью за счет более эффективного размещения статических объектов данных в памяти. При выполнении способа...
Тип: Изобретение
Номер охранного документа: 0002422883
Дата охранного документа: 27.06.2011
+ добавить свой РИД