×
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 111-120 of 125 items.
18.05.2019
№219.017.5670

Жидкокристаллический проекционный экран

Изобретение относится к оптическому приборостроению. Жидкокристаллический проекционный экран включает жидкокристаллический материал, помещенный между двумя прозрачными пластинами, на которые с внутренней стороны нанесены слои прозрачного электропроводного материала. На внешнюю сторону...
Тип: Изобретение
Номер охранного документа: 0002399076
Дата охранного документа: 10.09.2010
18.05.2019
№219.017.5710

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

Изобретение относится к биометрическим системам идентификации личности по изображению лица человека. Техническим результатом является распознавание личности в условиях неравномерного освещения и для широкого диапазона углов поворота лица на изображении. В способе формируют галерею изображений...
Тип: Изобретение
Номер охранного документа: 0002381553
Дата охранного документа: 10.02.2010
24.05.2019
№219.017.6060

Оптическая проекционная система

Система содержит оптический модулятор, оптическую часть переноса, проекционную оптическую часть, асферическое зеркало и отражающий экран. Оптическая часть переноса содержит собственную часть, включающую в себя, по меньшей мере, один оптический элемент, расположенный на первой оптической оси....
Тип: Изобретение
Номер охранного документа: 0002403602
Дата охранного документа: 10.11.2010
29.05.2019
№219.017.65a6

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

Изобретение относится к способам обработки видеоданных, а более конкретно к способам увеличения размерности видеопоследовательностей. Технический результат заключается в обеспечении увеличения размера изображения в четыре и более раз без заметных искажений. Способ увеличения размерности...
Тип: Изобретение
Номер охранного документа: 0002393540
Дата охранного документа: 27.06.2010
29.05.2019
№219.017.68ff

Десятикратный ультракомпактный вариообъектив с макрорежимом

Объектив состоит из четырех последовательно расположенных компонентов: первого - положительного, второго - отрицательного, третьего и четвертого - положительных. Первый компонент неподвижен в режиме зуммирования и подвижен в макрорежиме и представляет собой склейку положительной и отрицательной...
Тип: Изобретение
Номер охранного документа: 0002433434
Дата охранного документа: 10.11.2011
29.05.2019
№219.017.6a24

Способ обработки звукового сигнала

Изобретение относится к способам обработки цифровых сигналов, в частности к сжатию сигнала и передаче огибающей спектра. Способ обработки звукового сигнала включает операции по преобразованию временного сигнала в спектральные коэффициенты, извлечению огибающей спектра сигнала в виде средней...
Тип: Изобретение
Номер охранного документа: 0002464649
Дата охранного документа: 20.10.2012
09.06.2019
№219.017.7d98

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

Устройство состоит из лазерного источника когерентного излучения, оптического устройства, разделяющего исходящий из лазерного источника пучок на сигнальный и опорный, оптического устройства, расширяющего сигнальный пучок, пространственного модулятора света, преобразующей оптической системы...
Тип: Изобретение
Номер охранного документа: 0002470337
Дата охранного документа: 20.12.2012
19.06.2019
№219.017.88b8

Устройство воспроизведения изображения (варианты)

Изобретение относится к области оптики, а именно к устройствам воспроизведения изображения. Устройство содержит, по меньшей мере, одно средство отображения, оптический элемент с полным внутренним отражением (ПВО), соединенный с приводом, и, по меньшей мере, один оптический элемент распределения...
Тип: Изобретение
Номер охранного документа: 0002413264
Дата охранного документа: 27.02.2011
19.06.2019
№219.017.8b3e

Полимер на основе поли(ферроценил)силана, способ его получения и пленка, включающая в себя полимер на основе поли(ферроценил)силана

Изобретение относится к полимерам на основе поли(ферроценил)силана, использующимся в фотонных полупроводниковых матрицах. Предложен ячеистый полимер на основе поли(ферроценил)силана, включающий в себя повторяющиеся блоки трех типов структур, способ его получения, основанный на пространственном...
Тип: Изобретение
Номер охранного документа: 0002441874
Дата охранного документа: 10.02.2012
29.06.2019
№219.017.9df1

Проекционная оптическая система

Изобретение относится к проекционным оптическим системам. Проекционная система содержит первую оптическую часть, вторую оптическую часть и третью оптическую часть, каждая оптическая часть содержит, по меньшей мере, одну оптическую линзу. Вторая оптическая часть дополнительно содержит средство...
Тип: Изобретение
Номер охранного документа: 0002338232
Дата охранного документа: 10.11.2008
Showing 1-1 of 1 item.
19.04.2019
№219.017.3182

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

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