×
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% объема памяти. Таким образом, удовлетворяются условия ограничения ресурсов встроенной операционной системы компьютера.

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

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

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

Showing 1-10 of 125 items.
27.04.2013
№216.012.3bcf

Непрерывно электрически управляемая линзовая антенна

Изобретение относится к устройствам, обеспечивающим управление шириной главного лепестка диаграммы направленности антенны без механического манипулирования антенной или ее частями. В линзовой антенне линзовый элемент выполнен из ферроэлектрического материала, антенна включает в себя: круглую...
Тип: Изобретение
Номер охранного документа: 0002480872
Дата охранного документа: 27.04.2013
10.05.2013
№216.012.3e74

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

Изобретение может быть использовано при измерении геометрических параметров нанообъектов путем исследования рассеянного излучения при сканировании объектов. Оптическая измерительная система содержит: оптический модуль освещения и регистрации изображения, модуль управления параметрами оптической...
Тип: Изобретение
Номер охранного документа: 0002481555
Дата охранного документа: 10.05.2013
10.05.2013
№216.012.3ec4

Адаптивный способ создания и печати цветных анаглифных изображений

Изобретение относится к средствам подготовки печати анаглифных изображений. Техническим результатом является адаптация для печати анаглифного изображения с сохранением трехмерного восприятия напечатанного изображения для конкретных стереоочков. В способе печатают тестовый цветной образец на...
Тип: Изобретение
Номер охранного документа: 0002481635
Дата охранного документа: 10.05.2013
10.05.2013
№216.012.3efa

Беспроводной электромагнитный приемник и система беспроводной передачи энергии

Изобретение относится к области электрорадиотехники, а более конкретно - к системам и компонентам, предназначенным для беспроводной передачи энергии. Технический результат - повышение получаемой мощности путем увеличения добротности приемника. Предложена система беспроводной передачи энергии,...
Тип: Изобретение
Номер охранного документа: 0002481689
Дата охранного документа: 10.05.2013
10.05.2013
№216.012.3f04

Резонансная структура на основе объемного акустического резонатора

Изобретение относится к области электрорадиотехники, к системам беспроводной передачи энергии. Достигаемый технический результат - создание резонансной структуры для беспроводной передачи или приема энергии, обладающей малыми размерами и высокой добротностью при работе в частотном диапазоне...
Тип: Изобретение
Номер охранного документа: 0002481699
Дата охранного документа: 10.05.2013
10.05.2013
№216.012.3f09

Беспроводной электромагнитный приемник и система беспроводной передачи энергии

Изобретение относится к беспроводной передачи энергии, а именно к системам и устройствам, применяемым для беспроводной передачи энергии. Технический результат - увеличение получаемой энергии путем увеличения добротности приемника. Система беспроводной передачи энергии, содержащая источник...
Тип: Изобретение
Номер охранного документа: 0002481704
Дата охранного документа: 10.05.2013
10.05.2013
№216.012.3f0a

Беспроводной электромагнитный приемник и система беспроводной передачи энергии

Изобретение относится к беспроводной передачи энергии, а именно к системам и устройствам, применяемым для беспроводной передачи энергии. Технический результат - повышение принимаемой мощности путем увеличения добротности приемника. Система беспроводной передачи энергии, содержащая источник...
Тип: Изобретение
Номер охранного документа: 0002481705
Дата охранного документа: 10.05.2013
27.07.2013
№216.012.5b2e

Способ детектирования сигнала в системах связи с mimo каналом

Изобретение относится к области связи, в частности к радиотехническим беспроводным коммуникационным системам. Технический результат состоит в повышении точности приема информации. Для этого в системах связи с MIMO формируют оценку принятого вектора QAM символов и вычисляют матрицу ковариации;...
Тип: Изобретение
Номер охранного документа: 0002488963
Дата охранного документа: 27.07.2013
10.08.2013
№216.012.5c39

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

Изобретение относится к области физической химии и может быть использовано в производстве фотонных кристаллов с заданными физическими свойствами. Сущность: подложку с предварительно нанесенными микросферами кремнезема помещают в реактор. Вакуумируют реакционную камеру до 10 торр. Затем подложку...
Тип: Изобретение
Номер охранного документа: 0002489230
Дата охранного документа: 10.08.2013
20.08.2013
№216.012.61ee

Способ ускорения обработки множественных запросов типа select к rdf базе данных с помощью графического процессора

Изобретение относится к технологиям обработки информации, а более конкретно - к способам обеспечения доступа к информации, хранящейся в базах данных. Техническим результатом является увеличение пропускной способности сервера обработки запросов. Заявлен способ параллельной обработки...
Тип: Изобретение
Номер охранного документа: 0002490702
Дата охранного документа: 20.08.2013
Showing 1-1 of 1 item.
19.04.2019
№219.017.3182

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

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