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

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

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

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

Показаны записи 81-90 из 125.
11.03.2019
№219.016.d91e

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

Способ бесконтактного измерения размеров малых объектов осуществляют с помощью устройства, содержащего вариообъектив, который выполнен в виде одного неподвижного, а также первого и второго подвижных компонентов. Рассматриваемый объект размещают в задней фокальной плоскости вариообъектива. В...
Тип: Изобретение
Номер охранного документа: 0002383855
Дата охранного документа: 10.03.2010
11.03.2019
№219.016.da79

Способ интерполяции цифрового изображения

Изобретение относится к обработке цифровых изображений, в частности к способам изменения масштаба цифрового изображения, т.е. вычислению значений яркости в точках, не принадлежащих изначально исходному множеству точек, в которых значения яркости известны. Техническим результатом является...
Тип: Изобретение
Номер охранного документа: 0002367019
Дата охранного документа: 10.09.2009
11.03.2019
№219.016.da92

Устройство задней подсветки

Изобретение относится к осветительным устройствам. Устройство задней подсветки содержит множество расположенных отдельно друг от друга светоизлучающих диодов (СИД), светонаправляющую пластину, изготовленную из прозрачного оптического материала, которая имеет первую поверхность и вторую...
Тип: Изобретение
Номер охранного документа: 0002364904
Дата охранного документа: 20.08.2009
11.03.2019
№219.016.dabb

Способ выявления искажений, вызванных эффектом гиббса, при jpeg-кодировании

Изобретение относится к цифровой фотографии, а именно к анализу качества цифрового изображения, и может быть использовано при выявлении искажений при JPEG-кодировании. Способ выявления искажений, вызванных эффектом Гиббса, при JPEG-кодировании заключается в оценке размера кодировочного блока по...
Тип: Изобретение
Номер охранного документа: 0002365994
Дата охранного документа: 27.08.2009
11.03.2019
№219.016.db66

Способ формирования составного изображения

Изобретение относится к обработке цифровых изображений, а более конкретно к способам формирования составного (мозаичного) изображения из нескольких частично перекрывающихся изображений, захваченных такими планшетными устройствами, как сканер или многофункциональное периферийное устройство....
Тип: Изобретение
Номер охранного документа: 0002421814
Дата охранного документа: 20.06.2011
11.03.2019
№219.016.db67

Система и способ формирования и воспроизведения трехмерного видеоизображения

Изобретение относится к устройствам и способам обработки стерео изображений. Техническим результатом является получение высококачественного изображения на основе точной карты глубины, сформированной из стереокадров. Результат достигается тем, что система формирования и воспроизведения...
Тип: Изобретение
Номер охранного документа: 0002421933
Дата охранного документа: 20.06.2011
11.03.2019
№219.016.db8e

Модуль объектива

Модуль объектива содержит по меньшей мере два крепления, каждое их которых содержит, по меньшей мере, один оптический элемент типа линзы. Крепления соединены одно с другим шарнирно в виде цепи и выполнены с возможностью поворота вокруг шарнирных соединений. Цепь креплений расположена между...
Тип: Изобретение
Номер охранного документа: 0002427014
Дата охранного документа: 20.08.2011
11.03.2019
№219.016.dc4e

Способ и система контроля процессов в операционной системе на микроядре

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

Цифровой преобразователь сигналов с неоднородной архитектурой массива выборки

Изобретение относится к электронике для измерения характеристик высокоскоростных сигналов, которые применяются в цифровых регистраторах быстропротекающих процессов и радиолокационных приемниках. Технический результат заключается в повышении производительности. Цифровой преобразователь сигналов...
Тип: Изобретение
Номер охранного документа: 0002348993
Дата охранного документа: 10.03.2009
20.03.2019
№219.016.e70f

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

Изобретение относится к области вычислительной техники и может быть применено в инсталляторах компьютерных программ, которые работают под операционными системами Windows, MacOS и ОС семейства UNIX. Техническим результатом изобретения является повышение функциональности и удобства пользования...
Тип: Изобретение
Номер охранного документа: 0002365976
Дата охранного документа: 27.08.2009
Показаны записи 1-1 из 1.
19.04.2019
№219.017.3182

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

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