СПОСОБ И СИСТЕМА ОПТИМИЗАЦИИ ПРОИЗВОДИТЕЛЬНОСТИ МОДЕЛИРОВАНИЯ МОДЕЛИ ТРАНСПОРТНОГО СРЕДСТВА Российский патент 2024 года по МПК G06F30/15 G06G7/70 

Описание патента на изобретение RU2828766C1

ПЕРЕКРЕСТНАЯ ССЫЛКА НА РОДСТВЕННУЮ ЗАЯВКУ

[0001] Настоящая заявка основана на заявке на патент КНР № 2023114051991, поданной 26 октября 2023 г., и заявке на патент США № 18/379696, поданной 13 октября 2023 г., полное содержание которых включено в данный документ посредством ссылки, и испрашивает их приоритет.

ОБЛАСТЬ ТЕХНИКИ

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

УРОВЕНЬ ТЕХНИКИ

[0003] В сценариях с высокими требованиями к осуществлению в реальном времени, таких как управление в реальном времени, моделирование в реальном времени, моделирование аппаратно-программного тестирования и совместное моделирование, производительность программы имеет большое значение. В настоящее время большинство аналогичных видов программного обеспечения достигают повышения производительности за счет оптимизации программного обеспечения, например, производительность программы оптимизируется путем замены одного потока несколькими потоками, путем обмена пространства на время с использованием таблицы соответствия или путем избежания итеративного вычисления с использованием кэша или т. п. Но по-прежнему трудно оптимизировать производительность программы до более высокого уровня производительности, поскольку производительность программы в течение длительного времени не может быть дополнительно оптимизирована из-за структуры проектирования и языкового ограничения. В этом случае множество видов программного обеспечения не могут достичь более высокого уровня производительности, даже несмотря на оптимизацию.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

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

[0005] программа ядра, ориентированного на работу в реальном времени, сконфигурирована как процесс-демон программного обеспечения хоста для исполнения задачи моделирования в реальном времени модели транспортного средства;

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

[0007] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ автоматического управления программой ядра, ориентированного на работу в реальном времени, для исполнения команды моделирования посредством программы кода включает:

[0008] подготовку и сохранение программным обеспечением хоста данных команды в совместно используемом запоминающем устройстве и отправку события моделирования процессу-демону посредством программы кода, вследствие чего программа кода входит в состояние для отслеживания события моделирования;

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

[0010] после получения программой кода события моделирования, возвращаемого процессом-демоном, получение соответствующего результата исполнения команды из совместно используемого запоминающего устройства.

[0011] Целью сущности настоящего изобретения является предоставление кратких описаний для объектов описания настоящего изобретения. Таким образом, следует понимать, что приведенные выше признаки являются исключительно иллюстративными и не должны интерпретироваться как ограничивающие каким-либо образом объем или сущность объекта описания настоящего изобретения.

[0012] Другие признаки, аспекты и преимущества объектов настоящего раскрытия станут очевидными посредством конкретных вариантов осуществления, графических материалов и формулы изобретения.

ОПИСАНИЕ ГРАФИЧЕСКИХ МАТЕРИАЛОВ

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

[0014] На фиг. 1 представлено схематическое изображение, иллюстрирующее этапы способа оптимизации производительности моделирования модели транспортного средства согласно одному или более вариантам осуществления настоящего изобретения.

[0015] На фиг. 2 представлена принципиальная структурная схема, иллюстрирующая компьютерное устройство в системе оптимизации производительности моделирования модели транспортного средства согласно одному или более вариантам осуществления настоящего изобретения.

[0016] На фиг. 3 представлена принципиальная структурная схема, иллюстрирующая электронное устройство согласно одному или более вариантам осуществления настоящего изобретения.

ПОДРОБНОЕ ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ

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

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

[0019] Крайне нереалистично подготовить одно транспортное средство для каждой детали со всеми другими соответствующими деталями в качестве среды. Более того, в особых рабочих условиях, например, в условии экстренного торможения и в процессе тестирования устойчивости транспортного средства, сам способ тестирования может привести к повреждению транспортного средства и человеческим жертвам. Следовательно, при обычных обстоятельствах требуется использовать виртуальный способ для функционального тестирования детали, а именно заменить настоящее транспортное средство, датчики и другие детали и т. д. с помощью программного обеспечения для модели транспортного средства для выполнения моделирования, чтобы снизить затраты, повысить эффективность проверки и гарантировать личную безопасность. Но осуществление в реальном времени моделирования приводит к более высоким требованиям к производительности моделирования системных программ.

[0020] Ввиду вышеизложенного, в по меньшей мере одном варианте осуществления предоставлен способ оптимизации производительности моделирования модели транспортного средства, который включает: создание программы ядра, ориентированного на работу в реальном времени, для исполнения задачи моделирования в реальном времени модели транспортного средства; обеспечение возможности программе ядра, ориентированного на работу в реальном времени, выполнять межпроцессное взаимодействие с программным обеспечением хоста посредством совместного использования запоминающего устройства для считывания и записи сигнала моделирования транспортного средства посредством программного обеспечения хоста, автоматического управления программой ядра, ориентированного на работу в реальном времени, для исполнения команды моделирования посредством программы кода и записи данных моделирования, передаваемых в качестве обратной связи программой ядра, ориентированного на работу в реальном времени.

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

[0022] Различные неограничивающие реализации вариантов осуществления настоящего изобретения будут подробно описаны ниже в сочетании с графическими материалами.

[0023] Как показано на фиг. 1, в одном или более вариантах осуществления предоставлен способ оптимизации производительности моделирования модели транспортного средства, который включает:

[0024] создание программы ядра, ориентированного на работу в реальном времени, для исполнения задачи моделирования в реальном времени модели транспортного средства;

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

[0026] В некоторых вариантах осуществления программа ядра, ориентированного на работу в реальном времени, относится к внутренней программе ядра, специально разработанной для исполнения задачи моделирования в реальном времени. Способ создания включает, но без ограничения, разработку посредством среды разработки, например, Visual Studio. Программное обеспечение хоста относится к программе, которая использует программу ядра, ориентированного на работу в реальном времени, для непосредственного удовлетворения требований пользователя к моделированию и тестированию. Программа кода относится к программе пользовательского скрипта, работающей в программном обеспечении хоста, которая может получать доступ к ресурсам программного обеспечения хоста и работать, полагаясь на само программное обеспечение хоста. Программное обеспечение хоста может записывать данные моделирования в существующий компьютер для повторного воспроизведения и анализа данных, и записанные данные моделирования используют для оценки результата моделирования и облегчения поиска проблем в процессе моделирования.

[0027] В некоторых вариантах осуществления программа ядра, ориентированного на работу в реальном времени, сконфигурирована как процесс-демон программного обеспечения хоста.

[0028] Процесс-демон может управлять своим собственным приоритетом процесса и приоритетом потока моделирования таким образом, чтобы оптимизировать производительность моделирования, не подвергаясь влиянию программы из программного обеспечения хоста и не влияя на программу из программного обеспечения хоста. Более того, процесс-демон может также взаимодействовать с программой из программного обеспечения хоста любой архитектуры, например, поддерживать 32-битную программу из программного обеспечения хоста и 64-битную программу из программного обеспечения хоста.

[0029] В качестве предпочтительной реализации некоторых вариантов осуществления после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ автоматического управления программой ядра, ориентированного на работу в реальном времени, для исполнения команды моделирования посредством программы кода включает:

[0030] подготовку и сохранение программным обеспечением хоста данных команды в совместно используемом запоминающем устройстве и отправку события моделирования процессу-демону посредством программы кода, вследствие чего программа кода входит в состояние для отслеживания события моделирования;

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

[0032] после получения программой кода события моделирования, возвращаемого процессом-демоном, получение соответствующего результата исполнения команды из совместно используемого запоминающего устройства.

[0033] Например, программное обеспечение хоста, разработанное для работы на платформе Windows, вызывает движок CarSim для моделирования динамики транспортного средства для обеспечения моделирования модели транспортного средства.

[0034] В способе в некоторых вариантах осуществления программа ядра, ориентированного на работу в реальном времени, CSController разработана как процесс-демон программного обеспечения хоста, и программа ядра, ориентированного на работу в реальном времени, вызывает функцию API «SetPriorityClass» Windows при запуске, чтобы повысить приоритет процесса-демона. Тем временем программа ядра, ориентированного на работу в реальном времени, вызывает функцию API «SetThreadPriority» Windows при запуске потока моделирования (в данном случае поток моделирования относится к потоку, вызывающему CarSim), чтобы повысить приоритет потока. Следовательно, может быть известно, что процесс-демон может оптимизировать свои производительность процесса-демона и производительность потока моделирования отдельно, не подвергаясь влиянию программного обеспечения хоста и не влияя на программное обеспечение хоста, что тем самым уменьшает издержки на оптимизацию программного обеспечения хоста и обеспечивает достижение цели оптимизации производительности моделирования.

[0035] Процесс-демон CSController запускают, чтобы включить совместно используемое запоминающее устройство для исполнения команды моделирования и отслеживать имя события CmdTx, и программное обеспечение хоста во время запуска моделирования попытается открыть совместно используемое запоминающее устройство, а также остановит моделирование и сообщит об ошибке, если это не удастся сделать.

[0036] После того как программное обеспечение хоста успешно откроет совместно используемое запоминающее устройство, запустится стадия моделирования. Команда моделирования включает несколько типов операций. С командой запуска моделирования в качестве примера данные команды запуска моделирования устанавливают на 0x01, и программное обеспечение хоста устанавливает данные первого байта совместно используемого запоминающего устройства на 0x01, а затем устанавливает событие CmdTx для отправки команды запуска моделирования процессу-демону. Затем программное обеспечение хоста отслеживает имя события CmdRx, чтобы дождаться завершения исполнения команды процессом-демоном.

[0037] После получения имени события CmdTx процесс-демон считывает данные первого байта совместно используемого запоминающего устройства, чтобы определить к какому типу относится команда моделирования. Когда процесс-демон считывает данные первого байта как 0x01, процесс-демон запускает моделирование, в котором запуск моделирования может быть успешным или неуспешным. Предполагается, что возвращаемое значение для успеха равно 0, а возвращаемое значение для неудачи равно 1. Процесс-демон записывает возвращаемое значение для запуска моделирования в первый байт совместно используемого запоминающего устройства и устанавливает событие CmdRx для передачи в качестве обратной связи результата исполнения команды моделирования в программное обеспечение хоста. Затем процесс-демон продолжает отслеживать имя события CmdTx, чтобы дождаться следующей команды от программного обеспечения хоста.

[0038] После получения имени события CmdRx программное обеспечение хоста считывает первый байт совместно используемого запоминающего устройства, чтобы определить результат исполнения предыдущей команды. Когда считывание данных байта равно 0, это указывает на успешный запуск моделирования, а когда считывание данных байта равно 1, это указывает на неуспешный запуск моделирования. Программное обеспечение хоста на основе содержимого, которое подлежит исполнению следующим, снова устанавливает имя события CmdTx, чтобы управлять процессом-демоном для продолжения исполнения команды моделирования.

[0039] В некоторых вариантах осуществления процесс-демон может взаимодействовать с программой из программного обеспечения хоста любой архитектуры и может поддерживать как 32-битную программу из программного обеспечения хоста, так и 64-битную программы из программного обеспечения хоста. С 32-битной программой из программного обеспечения хоста в качестве примера выполнены описания способа считывания и записи сигнала моделирования транспортного средства после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста.

[0040] В некоторых вариантах осуществления после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

[0041] для считывания 32-битного сформированного сигнала моделирования:

[0042] вызов функции InterlockedIncrement, введение в качестве параметров адреса совместно используемого запоминающего устройства сформированного сигнала моделирования и значения 0, подлежащего добавлению, и считывание возвращаемого функцией значения, чтобы обеспечить считывание сформированного сигнала моделирования.

[0043] Ниже приведены подробные описания в сочетании с примерами.

[0044] Например, когда значение 32-битного сформированного сигнала Gear передаточного механизма считывают в 32-битную сформированную переменную «v», коды для вызова функции InterlockedIncrement следующие:

[0045] v = InterlockedIncrement(&Gear, 0);

[0046] при этом &Gear – это адрес совместно используемого запоминающего устройства сформированного сигнала Gear передаточного механизма, 0 – это значение, подлежащее добавлению; причем вышеуказанные коды выполняют для получения возвращаемого функцией значения, и считывание возвращаемого функцией значения обеспечивает считывание для 32-битного сформированного сигнала Gear передаточного механизма.

[0047] В некоторых вариантах осуществления после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

[0048] для считывания 32-битного сигнала моделирования с плавающей запятой:

[0049] вызов функции InterlockedIncrement, введение в качестве параметров адреса совместно используемого запоминающего устройства сигнала моделирования с плавающей запятой и значения 0, подлежащего добавлению, и считывание возвращаемого функцией значения, а затем преобразование возвращаемого функцией значения в 32-битное значение с плавающей запятой, чтобы обеспечить считывание сигнала моделирования с плавающей запятой.

[0050] Способ преобразования возвращаемого функцией значения в 32-битное значение с плавающей запятой включает: возврат 4 байтов из первого адреса возвращаемого функцией значения в качестве 32-битного значения с плавающей запятой.

[0051] Ниже приведены подробные описания в сочетании с примерами.

[0052] Например, когда значение 32-битного сигнала Vx с плавающей запятой считывают в 32-битную переменную «v» с плавающей запятой, коды для вызова функции InterlockedIncrement следующие:

[0053] *(int32*)(&v) = InterlockedIncrement(&Vx, 0);

[0054] при этом &Vx относится к адресу совместно используемого запоминающего устройства сигнала Vx с плавающей запятой, 0 относится к значению, подлежащему добавлению, &v относится к первому адресу возвращаемого функцией значения, *(int32*) относится к возврату 4 байтов из первого адреса возвращаемого функцией значения; причем вышеуказанные коды выполняют для считывания результата исполнения, чтобы обеспечить считывание для 32-битного сигнала Vx с плавающей запятой.

[0055] В некоторых вариантах осуществления после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

[0056] для считывания 64-битного сформированного сигнала моделирования:

[0057] вызов функции InterlockedIncrement64, введение в качестве параметров адреса совместно используемого запоминающего устройства сформированного сигнала моделирования и значения 0, подлежащего добавлению, и считывание возвращаемого функцией значения, чтобы обеспечить считывание сформированного сигнала моделирования.

[0058] Ниже приведены подробные описания в сочетании с примерами.

[0059] Например, когда значение 64-битного сформированного сигнала TimeUs времени считывают в 64-битную сформированную переменную «v», коды для вызова функции InterlockedIncrement64 следующие:

[0060] v = InterlockedIncrement64(&TimeUs, 0);

[0061] при этом &TimeUs относится к адресу совместно используемого запоминающего устройства сформированного сигнала TimeUs времени, а 0 относится к значению, подлежащему добавлению; причем вышеуказанные коды выполняют для получения возвращаемого функцией значения, и считывание возвращаемого функцией значения обеспечивает считывание для 64-битного сформированного сигнала TimeUs времени.

[0062] В некоторых вариантах осуществления после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

[0063] для считывания 64-битного сигнала моделирования с плавающей запятой:

[0064] вызов функции InterlockedIncrement64, введение в качестве параметров адреса совместно используемого запоминающего устройства сигнала моделирования с плавающей запятой и значения 0, подлежащего добавлению, и считывание возвращаемого функцией значения, а затем преобразование возвращаемого функцией значения в 64-битное значение с плавающей запятой, чтобы обеспечить считывание для сигнала моделирования с плавающей запятой.

[0065] Способ преобразования возвращаемого функцией значения в 64-битное значение с плавающей запятой включает:

[0066] возврат 8 байтов из первого адреса возвращаемого функцией значения в качестве 64-битного значения с плавающей запятой.

[0067] Ниже приведены подробные описания в сочетании с примерами.

[0068] Например, когда значение 64-битного сигнала EngForce с плавающей запятой считывают в 64-битную переменную «v» с плавающей запятой, коды для вызова функции InterlockedIncrement64 следующие:

[0069] *(int64*)(&v) = InterlockedIncrement64(&EngForce, 0);

[0070] при этом &EngForce относится к адресу совместно используемого запоминающего устройства сигнала EngForce с плавающей запятой, 0 относится к значению, подлежащему добавлению, &v относится к первому адресу возвращаемого функцией значения, и *(int64*) относится к возврату 8 байтов из первого адреса возвращаемого функцией значения; причем вышеуказанные коды выполняют для считывания результата исполнения, чтобы обеспечить считывание для 64-битного сигнала EngForce с плавающей запятой.

[0071] В некоторых вариантах осуществления после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ записи сигнала моделирования транспортного средства включает:

[0072] для записи 32-битного сформированного сигнала моделирования:

[0073] вызов функции InterlockedExchange и введение в качестве параметров адреса совместно используемого запоминающего устройства сформированного сигнала моделирования и значения, подлежащего записи.

[0074] Ниже приведены подробные описания в сочетании с примерами.

[0075] Например, когда значение 32-битного сформированного сигнала x записывают в 32-битный сформированный сигнал Gear передаточного механизма, коды для вызова функции InterlockedExchange следующие:

[0076] InterlockedExchange(&Gear, x);

[0077] при этом &Gear относится к адресу совместно используемого запоминающего устройства сформированного сигнала Gear передаточного механизма, и x – это значение, подлежащее добавлению; причем вышеуказанные коды выполняют для записи значения 32-битного сформированного сигнала x в 32-битный сформированный сигнал Gear передаточного механизма.

[0078] В некоторых вариантах осуществления после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ записи сигнала моделирования транспортного средства включает:

[0079] для записи 32-битного сигнала моделирования с плавающей запятой:

[0080] преобразование подлежащего записи значения с плавающей запятой в формирующее значение, требуемое параметром функции;

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

[0082] Способ преобразования подлежащего записи значения с плавающей запятой в формирующее значение, требуемое параметром функции, включает:

[0083] возврат 4 байтов из первого адреса значения с плавающей запятой в качестве 32-битного формирующего значения.

[0084] Ниже приведены подробные описания в сочетании с примерами.

[0085] Например, когда значение 32-битного сигнала x с плавающей запятой записывают в 32-битный сигнал Vx с плавающей запятой, коды для вызова функции InterlockedExchange следующие:

[0086] InterlockedExchange(&Vx, *(int32*)(&x));

[0087] при этом &Vx относится к адресу совместно используемого запоминающего устройства сигнала Vx с плавающей запятой, &x относится к первому адресу значения сигнала x с плавающей запятой, и *(int32*) относится к возврату 4 байтов из первого адреса значения сигнала x с плавающей запятой; причем вышеуказанные коды выполняют для записи значения 32-битного сигнала x с плавающей запятой в 32-битный сигнал Vx с плавающей запятой.

[0088] В некоторых вариантах осуществления после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ записи сигнала моделирования транспортного средства включает:

[0089] для записи 64-битного сформированного сигнала моделирования:

[0090] вызов функции InterlockedExchange64 и введение в качестве параметров адреса совместно используемого запоминающего устройства сформированного сигнала моделирования и подлежащего записи значения.

[0091] Ниже приведены подробные описания в сочетании с примерами.

[0092] Например, когда значение 64-битного сформированного сигнала x записывают в 64-битный сформированный сигнал TimeUs, коды для вызова функции InterlockedExchange64 следующие:

[0093] InterlockedExchange64(&TimeUs, x);

[0094] при этом &TimeUs относится к адресу совместно используемого запоминающего устройства сформированного сигнала TimeUs, и x относится к значению, подлежащему добавлению; причем вышеуказанные коды выполняют для записи значения 64-битного сформированного сигнала x в 64-битный сформированный сигнал TimeUs.

[0095] В некоторых вариантах осуществления после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ записи сигнала моделирования транспортного средства включает:

[0096] для записи 64-битного сигнала моделирования с плавающей запятой:

[0097] преобразование подлежащего записи значения с плавающей запятой в формирующее значение, требуемое параметром функции;

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

[0099] Способ преобразования подлежащего записи значения с плавающей запятой в формирующее значение, требуемое параметром функции, включает:

[00100] возврат 8 байтов из первого адреса значения с плавающей запятой в качестве 64-битного формирующего значения.

[00101] Ниже приведены подробные описания в сочетании с примерами.

[00102] Например, когда значение 64-битного сигнала x с плавающей запятой записывают в 64-битный сигнал EngForce с плавающей запятой, коды для вызова InterlockedExchange64 следующие:

[00103] InterlockedExchange64(&EngForce, *(int64*)(&x));

[00104] при этом &EngForce относится к адресу совместно используемого запоминающего устройства сигнала EngForce с плавающей запятой, &x относится к первому адресу значения сигнала x с плавающей запятой, и *(int64*) относится к возврату 8 байтов из первого адреса значения сигнала x с плавающей запятой; причем коды выполняют для записи значения 64-битного сигнала x с плавающей запятой в 64-битный сигнал EngForce с плавающей запятой.

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

[00106] программа ядра, ориентированного на работу в реальном времени, сконфигурирована как процесс-демон программного обеспечения хоста для исполнения задачи моделирования в реальном времени модели транспортного средства;

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

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

[00109] Электронное устройство в некоторых вариантах осуществления будет описано ниже с точки зрения аппаратной обработки.

[00110] В некоторых вариантах осуществления электронное устройство содержит процессор, считываемый носитель данных, шину связи и интерфейс связи, при этом процессор, считываемый носитель данных и интерфейс связи осуществляют связь друг с другом через шину связи;

[00111] считываемый носитель данных выполнен с возможностью хранения программ выполнения способа оптимизации производительности моделирования модели транспортного средства, и процессор выполнен с возможностью исполнения программ выполнения способа оптимизации производительности моделирования модели транспортного средства.

[00112] В некоторых вариантах осуществления конкретная реализация электронного устройства не ограничена.

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

[00114] В других вариантах осуществления компьютерное устройство и промышленный персональный компьютер могут быть одним из электронных устройств.

[00115] Структура, показанная на фиг. 3, не представляет собой какого-либо ограничения электронного устройства и, таким образом, может содержать больше или меньше компонентов, чем показано на графических материалах, или сочетать некоторые компоненты, или иметь другие размещенные компоненты.

[00116] В некоторых вариантах осуществления интерфейс связи может представлять собой интерфейс RS232, RS485, USB, или интерфейс TYPE, или т. п., который может быть соединен с внешним адаптером шины. Интерфейс связи может также содержать проводной или беспроводной сетевой интерфейс. Сетевой интерфейс может необязательно содержать проводной интерфейс и/или беспроводной интерфейс (такой как интерфейс WI-FI, интерфейс Bluetooth и т. п.), который обычно используют для установления связующего соединения между сервером и другими компьютерными устройствами.

[00117] Считываемый носитель данных или считываемый компьютером носитель данных включает по меньшей мере один тип запоминающих устройств. Запоминающее устройство включает флеш-память, жесткий диск, мультимедийную карту, запоминающее устройство карточного типа (например, запоминающее устройство SD или DX или т. п.), магнитное запоминающее устройство, магнитный диск, или компакт-диск, или т. п. В некоторых вариантах осуществления запоминающее устройство может представлять собой внутренний блок хранения в компьютерном устройстве, например, жесткий диск компьютерного устройства. В некоторых других вариантах осуществления запоминающее устройство может также представлять собой внешнее устройство хранения компьютерного устройства, например, съемный жесткий диск, тонкую флеш-карту (SMC), защищенную цифровую (SD) карту, флеш-карту или т. п. на компьютерном устройстве. Кроме того, запоминающее устройство может содержать как внутренний блок хранения в компьютерном устройстве, так и внешнее устройство хранения. Запоминающее устройство может быть использовано не только для хранения прикладного программного обеспечения, установленного на компьютерном устройстве, и различных типов данных, например, кодов компьютерных программ и т. п., но и для временного хранения данных, которые уже выведены или подлежат выводу.

[00118] В некоторых вариантах осуществления процессор может представлять собой центральный процессор (CPU), контроллер, микроконтроллер, микропроцессор или другую микросхему обработки данных, которую используют для запуска программных кодов в запоминающем устройстве или обработки данных, например, исполнения компьютерных программ или т. п.

[00119] В некоторых вариантах осуществления шина связи может также быть шиной ввода/вывода, которая может быть шиной межсоединения периферийных компонентов (PCI), или шиной с расширенной промышленной стандартной архитектурой (EISA), или т. п. Шина может включать адресную шину, шину данных, и шину управления, и т. п.

[00120] Необязательно компьютерное устройство может также содержать пользовательский интерфейс, который может содержать дисплей, и блок ввода, например, клавиатуру. Необязательно пользовательский интерфейс может также содержать стандартный проводной интерфейс и беспроводной интерфейс. Необязательно в некоторых вариантах осуществления дисплей может представлять собой светодиодный дисплей, жидкокристаллический дисплей, сенсорный жидкокристаллический дисплей, и сенсорный дисплей на органических светодиодах (OLED), и т. п. Дисплей также может соответственно называться дисплейным экраном или дисплейным блоком для отображения информации, обрабатываемой в компьютерном устройстве, а также визуальным пользовательским интерфейсом.

[00121] Процессор исполняет программы для выполнения этапов вариантов осуществления способа оптимизации производительности моделирования модели транспортного средства, показанного на фиг. 1, например, этапов S101–S102, показанных на фиг. 1. Альтернативно процессор исполняет компьютерные программы для реализации функций модулей или блоков в вариантах осуществления устройства.

[00122] В некоторых вариантах осуществления процессор специально выполнен с возможностью выполнения следующих этапов:

[00123] создания программы ядра, ориентированного на работу в реальном времени, для исполнения задачи моделирования в реальном времени модели транспортного средства;

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

[00125] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00126] конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста.

[00127] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00128] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ автоматического управления программой ядра, ориентированного на работу в реальном времени, для исполнения команды моделирования посредством программы кода включает:

[00129] подготовку и сохранение программным обеспечением хоста данных команды в совместно используемом запоминающем устройстве и отправку события моделирования процессу-демону посредством программы кода, вследствие чего программа кода входит в состояние для отслеживания события моделирования;

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

[00131] после получения программой кода события моделирования, возвращаемого процессом-демоном, получение соответствующего результата исполнения команды из совместно используемого запоминающего устройства.

[00132] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00133] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

[00134] для считывания 32-битного сформированного сигнала моделирования:

[00135] вызов функции InterlockedIncrement, и введение в качестве параметров адреса совместно используемого запоминающего устройства сформированного сигнала моделирования и значения 0, подлежащего добавлению, и считывание возвращаемого функцией значения, чтобы обеспечить считывание для сформированного сигнала моделирования.

[00136] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00137] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

[00138] для считывания 32-битного сигнала моделирования с плавающей запятой:

[00139] вызов функции InterlockedIncrement, введение в качестве параметров адреса совместно используемого запоминающего устройства сигнала моделирования с плавающей запятой и значения 0, подлежащего добавлению, и считывание возвращаемого функцией значения, а затем преобразование возвращаемого функцией значения в 32-битное значение с плавающей запятой, чтобы обеспечить считывание сигнала моделирования с плавающей запятой.

[00140] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00141] способ преобразования возвращаемого функцией значения в 32-битное значение с плавающей запятой включает:

[00142] возврат 4 байтов из первого адреса возвращаемого функцией значения в качестве 32-битного значения с плавающей запятой.

[00143] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00144] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

[00145] для считывания 64-битного сформированного сигнала моделирования:

[00146] вызов функции InterlockedIncrement64, введение в качестве параметров адреса совместно используемого запоминающего устройства сформированного сигнала моделирования и значения 0, подлежащего добавлению, и считывание возвращаемого функцией значения, чтобы обеспечить считывание сформированного сигнала моделирования.

[00147] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00148] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

[00149] для считывания 64-битного сигнала моделирования с плавающей запятой:

[00150] вызов функции InterlockedIncrement64, введение в качестве параметров адреса совместно используемого запоминающего устройства сигнала моделирования с плавающей запятой и значения 0, подлежащего добавлению, считывание возвращаемого функцией значения, а затем преобразование возвращаемого функцией значения в 64-битное значение с плавающей запятой, чтобы обеспечить считывание сигнала моделирования с плавающей запятой.

[00151] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00152] способ преобразования возвращаемого функцией значения в 64-битное значение с плавающей запятой включает:

[00153] возврат 8 байтов из первого адреса возвращаемого функцией значения в качестве 64-битного значения с плавающей запятой.

[00154] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00155] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ записи сигнала моделирования транспортного средства включает:

[00156] для записи 32-битного сформированного сигнала моделирования:

[00157] вызов функции InterlockedExchange и введение в качестве параметров адреса совместно используемого запоминающего устройства сформированного сигнала моделирования и значения, подлежащего записи.

[00158] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00159] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ записи сигнала моделирования транспортного средства включает:

[00160] для записи 32-битного сигнала моделирования с плавающей запятой:

[00161] преобразование подлежащего записи значения с плавающей запятой в формирующее значение, требуемое параметром функции;

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

[00163] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00164] способ преобразования подлежащего записи значения с плавающей запятой в формирующее значение, требуемое параметром функции, включает:

[00165] возврат 4 байтов из первого адреса значения с плавающей запятой в качестве 32-битного формирующего значения.

[00166] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00167] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ записи сигнала моделирования транспортного средства включает:

[00168] для записи 64-битного сформированного сигнала моделирования:

[00169] вызов функции InterlockedExchange64 и введение в качестве параметров адреса совместно используемого запоминающего устройства сформированного сигнала моделирования и подлежащего записи значения.

[00170] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00171] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ записи сигнала моделирования транспортного средства включает:

[00172] для записи 64-битного сигнала моделирования с плавающей запятой:

[00173] преобразование подлежащего записи значения с плавающей запятой в формирующее значение, требуемое параметром функции;

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

[00175] Необязательно в качестве одной возможной реализации процессор дополнительно выполнен с возможностью выполнения следующих этапов:

[00176] способ преобразования подлежащего записи значения с плавающей запятой в формирующее значение, требуемое параметром функции, включает:

[00177] возврат 8 байтов из первого адреса значения с плавающей запятой в качестве 64-битного формирующего значения.

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

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

[00180] В некоторых вариантах осуществления считываемый компьютером носитель данных хранит считываемые компьютером инструкции, при этом считываемые компьютером инструкции исполняет по меньшей мере один процессор для выполнения следующего способа:

[00181] создание программы ядра, ориентированного на работу в реальном времени, для исполнения задачи моделирования в реальном времени модели транспортного средства;

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

[00183] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ автоматического управления программой ядра, ориентированного на работу в реальном времени, для исполнения команды моделирования посредством программы кода включает:

[00184] подготовку и сохранение программным обеспечением хоста данных команды в совместно используемом запоминающем устройстве и отправку события моделирования процессу-демону посредством программы кода, вследствие чего программа кода входит в состояние для отслеживания события моделирования;

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

[00186] после получения программой кода события моделирования, возвращаемого процессом-демоном, получение соответствующего результата исполнения команды из совместно используемого запоминающего устройства.

[00187] В некоторых вариантах осуществления компьютерный программный продукт включает считываемый компьютером носитель данных, на котором хранятся считываемые компьютером программные коды, при этом считываемые компьютером программные коды содержат инструкции, которые предписывают по меньшей мере одному процессору (одному или более компьютерным устройствам) выполнить следующие операции:

[00188] создание программы ядра, ориентированного на работу в реальном времени, для исполнения задачи моделирования в реальном времени модели транспортного средства;

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

[00190] после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ автоматического управления программой ядра, ориентированного на работу в реальном времени, для исполнения команды моделирования посредством программы кода включает:

[00191] подготовку и сохранение программным обеспечением хоста данных команды в совместно используемом запоминающем устройстве и отправку события моделирования процессу-демону посредством программы кода, вследствие чего программа кода входит в состояние для отслеживания события моделирования;

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

[00193] после получения программой кода события моделирования, возвращаемого процессом-демоном, получение соответствующего результата исполнения команды из совместно используемого запоминающего устройства.

[00194] Следует понимать, что в нескольких вариантах осуществления, предоставленных в настоящем изобретении, раскрытые устройство и способ могут быть реализованы иначе. Приведенные выше варианты осуществления устройства являются исключительно иллюстративными, например, блок-схемы и структурные схемы на графических материалах показывают возможные системные архитектуры, функции и операции устройства, способ и компьютерный программный продукт в нескольких вариантах осуществления, предоставленных в настоящем изобретении. Таким образом, каждый блок в блок-схемах и структурных схемах может представлять один модуль, один фрагмент программы или одну часть кодов. Модуль, фрагмент программы или часть кодов содержат одну или более исполняемых инструкций для реализации заданных логических функций. Следует отметить, что в некоторых альтернативных вариантах осуществления функции, указанные в блоках, могут быть также выполнены в последовательности, которая отличается от той, которая указана в графических материалах. Например, два непрерывных блока могут фактически быть выполнены по существу параллельно и иногда могут быть выполнены в обратной последовательности, что зависит от вовлеченных функций. Следует дополнительно отметить, что каждый блок в структурных схемах и/или блок-схемах и сочетания блоков в структурных схемах и/или блок-схемах могут быть реализованы системой на основе специализированного аппаратного обеспечения для исполнения заданных функций или действий или сочетанием специализированного аппаратного обеспечения и компьютерных инструкций.

[00195] Кроме того, функциональные модули в вариантах осуществления настоящего изобретения могут быть интегрированы в одну независимую часть или существовать как отдельные модули, или два или более модулей интегрированы в одну независимую часть.

[00196] Функции при реализации функциональными модулями программного обеспечения и продаже или использовании как независимые продукты могут храниться на одном считываемом компьютером носителе данных. Исходя из такого понимания, сущность технических решений настоящего изобретения, или часть, дополняющая предшествующий уровень техники, или часть технических решений может быть осуществлена в форме продукта в виде программного обеспечения. Компьютерный продукт в виде программного обеспечения хранится на одном носителе данных, который содержит несколько инструкций, обеспечивающих выполнение одним компьютерным устройством (например, персональным компьютером, сервером, или сетевым устройством, или т. п.) всех или части этапов способа согласно каждому из вариантов осуществления настоящего изобретения.

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

Похожие патенты RU2828766C1

название год авторы номер документа
ОБРАБОТКА ТРАНЗАКЦИЙ 2013
  • Грейнер Дан
  • Джейкоби Кристиан
  • Слегел Тимоти
RU2606878C2
СПОСОБ И СИСТЕМА ДЛЯ УПРАВЛЕНИЯ ВЫПОЛНЕНИЕМ ВНУТРИ ВЫЧИСЛИТЕЛЬНОЙ СРЕДЫ 2012
  • Дан Ф. Грейнер
  • Тимоти Дж. Слиджл
  • Кристиан Якоби
  • Питер Джереми Релсон
  • Рандалл Уилльям Филли
RU2577487C2
КОМАНДА НА НЕТРАНЗАКЦИОННОЕ СОХРАНЕНИЕ 2012
  • Дан Ф. Грейнер
  • Кристиан Якоби
  • Тимоти Дж. Слиджл
RU2568324C2
ФИЛЬТРАЦИЯ ПРОГРАММНОГО ПРЕРЫВАНИЯ В ТРАНЗАКЦИОННОМ ВЫПОЛНЕНИИ 2012
  • Дан Ф. Грейнер
  • Кристиан Якоби
  • Тимоти Дж. Слиджл
  • Марсель Митран
RU2568923C2
СОХРАНЕНИЕ/ВОССТАНОВЛЕНИЕ ВЫБРАННЫХ РЕГИСТРОВ ПРИ ТРАНЗАКЦИОННОЙ ОБРАБОТКЕ 2012
  • Дан Ф. Грейнер
  • Кристиан Якоби
  • Тимоти Дж. Слиджл
RU2562424C2
ВЫБОРКА КОМАНД ПО УКАЗАНИЮ В СРЕДСТВЕ СБОРА СВЕДЕНИЙ О ХОДЕ ВЫЧИСЛЕНИЙ 2013
  • Гейни Джр Чарлз У.
  • Митран Марсель
  • Шум Чунлун Кевин
  • Студли Кевин А.
RU2585982C2
БЛОК ДИАГНОСТИКИ ТРАНЗАКЦИЙ 2012
  • Дан Ф. Грейнер
  • Кристиан Якоби
  • Тимоти Дж. Слиджл
  • Марсель Митран
RU2571397C2
УПРАВЛЕНИЕ В РЕЖИМЕ НИЗКИХ ПРИВИЛЕГИЙ РАБОТОЙ СРЕДСТВА СБОРА СВЕДЕНИЙ О ХОДЕ ВЫЧИСЛЕНИЙ 2013
  • Фаррелл Марк С.
  • Гейни Джр. Чарлз У.
  • Митран Марсель
  • Шум Чунлун Кевин
  • Следжел Тимоти Дж.
  • Смит Брайан Леонард
  • Студли Кевин А.
RU2585969C2
ВЫПОЛНЕНИЕ ВЫНУЖДЕННОЙ ТРАНЗАКЦИИ 2012
  • Дан Ф. Грейнер
  • Тимоти Дж. Слиджл
  • Кристиан Якоби
RU2549112C2
СБОР СВЕДЕНИЙ О ХОДЕ ВЫЧИСЛЕНИЙ 2013
  • Фаррелл Марк С.
  • Гейни Джр. Чарлз У.
  • Митран Марсель М.
  • Шум Чунлун Кевин
  • Смит Брайан Леонард
RU2585968C2

Иллюстрации к изобретению RU 2 828 766 C1

Реферат патента 2024 года СПОСОБ И СИСТЕМА ОПТИМИЗАЦИИ ПРОИЗВОДИТЕЛЬНОСТИ МОДЕЛИРОВАНИЯ МОДЕЛИ ТРАНСПОРТНОГО СРЕДСТВА

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

Формула изобретения RU 2 828 766 C1

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

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

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

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

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

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

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

2. Способ оптимизации производительности моделирования модели транспортного средства по п. 1, отличающийся тем, что

после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

для считывания 32-битного целочисленного сигнала моделирования:

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

3. Способ оптимизации производительности моделирования модели транспортного средства по п. 1, отличающийся тем, что

после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

для считывания 32-битного сигнала моделирования с плавающей запятой:

вызов функции InterlockedIncrement, введение в качестве параметров адреса совместно используемого запоминающего устройства сигнала моделирования с плавающей запятой и значения 0, подлежащего добавлению, и считывание возвращаемого функцией значения, а затем преобразование возвращаемого функцией значения в 32-битное значение с плавающей запятой, чтобы обеспечить считывание сигнала моделирования с плавающей запятой.

4. Способ оптимизации производительности моделирования модели транспортного средства по п. 3, отличающийся тем, что

способ преобразования возвращаемого функцией значения в 32-битное значение с плавающей запятой включает:

возврат 4 байтов из первого адреса возвращаемого функцией значения в качестве 32-битного значения с плавающей запятой.

5. Способ оптимизации производительности моделирования модели транспортного средства по п. 1, отличающийся тем, что

после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

для считывания 64-битного целочисленного сигнала моделирования:

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

6. Способ оптимизации производительности моделирования модели транспортного средства по п. 1, отличающийся тем, что

после конфигурирования программы ядра, ориентированного на работу в реальном времени, как процесса-демона программного обеспечения хоста способ считывания сигнала моделирования транспортного средства включает:

для считывания 64-битного сигнала моделирования с плавающей запятой:

вызов функции InterlockedIncrement64, введение в качестве параметров адреса совместно используемого запоминающего устройства сигнала моделирования с плавающей запятой и значения 0, подлежащего добавлению, и считывание возвращаемого функцией значения, а затем преобразование возвращаемого функцией значения в 64-битное значение с плавающей запятой, чтобы обеспечить считывание сигнала моделирования с плавающей запятой.

7. Способ оптимизации производительности моделирования модели транспортного средства по п. 6, отличающийся тем, что

способ преобразования возвращаемого функцией значения в 64-битное значение с плавающей запятой включает:

возврат 8 байтов из первого адреса возвращаемого функцией значения в качестве 64-битного значения с плавающей запятой.

8. Способ оптимизации производительности моделирования модели транспортного средства по п. 1, отличающийся тем, что

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

для записи 32-битного целочисленного сигнала моделирования:

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

9. Способ оптимизации производительности моделирования модели транспортного средства по п. 1, отличающийся тем, что

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

для записи 32-битного сигнала моделирования с плавающей запятой:

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

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

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

возврат 4 байтов из первого адреса значения с плавающей запятой в качестве 32-битного целочисленного значения.

10. Способ оптимизации производительности моделирования модели транспортного средства по п. 1, отличающийся тем, что

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

для записи 64-битного целочисленного сигнала моделирования:

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

11. Способ оптимизации производительности моделирования модели транспортного средства по п. 1, отличающийся тем, что

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

для записи 64-битного сигнала моделирования с плавающей запятой:

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

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

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

возврат 8 байтов из первого адреса значения с плавающей запятой в качестве 64-битного целочисленного значения.

12. Считываемый компьютером носитель данных, хранящий считываемые компьютером инструкции, при этом считываемые компьютером инструкции исполняет по меньшей мере один процессор для выполнения способа оптимизации производительности моделирования модели транспортного средства по любому из пп. 1–11.

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

считываемый носитель данных выполнен с возможностью хранения программ выполнения способа оптимизации производительности моделирования модели транспортного средства по любому из пп. 1–11, и процессор выполнен с возможностью исполнения программ выполнения способа оптимизации производительности моделирования модели транспортного средства.

14. Компьютерный программный продукт, содержащий:

компьютерную программу или инструкцию, причем компьютерная программа или инструкция исполняется на компьютере для предписания компьютеру выполнить способ по любому из пп. 1–11.

15. Система оптимизации производительности моделирования модели транспортного средства, содержащая компьютерное устройство, при этом компьютерное устройство выполнено с возможностью исполнения программ выполнения способа оптимизации производительности моделирования модели транспортного средства по любому из пп. 1–11.

Документы, цитированные в отчете о поиске Патент 2024 года RU2828766C1

RU 2019108817 A, 06.05.2019
СПОСОБ АВТОМАТИЗИРОВАННОГО УПРАВЛЕНИЯ ПРОЕКТИРОВАНИЕМ БОРТОВЫХ ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМ 2012
  • Бухановский Александр Валерьевич
  • Иванов Сергей Владимирович
  • Нечаев Юрий Иванович
RU2502131C1
СПОСОБ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ СИСТЕМ БЕСПЕРЕБОЙНОГО ЭЛЕКТРОПИТАНИЯ 2011
  • Рогулина Лариса Геннадьевна
RU2468425C1
СПОСОБ АВТОМАТИЗИРОВАННОГО УПРАВЛЕНИЯ ПРОЦЕССОМ ПРОЕКТИРОВАНИЯ СТРУКТУРЫ СИСТЕМЫ УПРАВЛЕНИЯ ТЕХНИЧЕСКИМИ СИСТЕМАМИ И УСТРОЙСТВО ДЛЯ ЕГО ОСУЩЕСТВЛЕНИЯ 2007
  • Селифанов Валерий Анатольевич
  • Селифанов Валентин Валерьевич
RU2331097C1
US 2022238179 A1, 28.07.2022.

RU 2 828 766 C1

Авторы

Лю, Чу

Се, Юэинь

Мо, Ман

Даты

2024-10-17Публикация

2024-04-10Подача