Программируемый логический контроллер для управления устройствами реального времени Российский патент 2024 года по МПК G06F9/22 G06F21/70 

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

Область техники

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

Уровень техники

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

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

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

Из уровня техники известно большое количество решений разных компаний в рассматриваемой области, например NXP i.MX Series от разработчиков NXP Semiconductors, Intel Stratix 10 от компании Intel, Renesas R-Car Series от Renesas Electronics (https://www.renesas.com/us/en/products/automotive-products/automotive-system-chips-socs). Упомянутые решения подразумевают работу на нескольких выделенных вычислительных системах, на которых могут быть развернуты разные программные решения. При этом вычислительные системы могут включать ОС общего назначения и ОСРВ. При подключении к сетям общего доступа решений с несколькими операционными системами на единой системе на кристалле, сетевая функциональность должна быть защищена от внешнего вредоносного воздействия (например, кибератаки), что в свою очередь является слишком сложным. В связи с этим решения на базе ОСРВ обычно используются в замкнутых информационных системах, которые не имеют доступа или имеют ограниченный доступ к сетям общего доступа.

Из уровня техники известно решение WO 2020035742 A1 «Method for operating an industrial PC device and industrial PC device», в указанном решении представлены две операционные системы: ОС общего назначения и ОСРВ. За безопасность промышленного компьютерного устройства в указанном решении отвечает ОСРВ. К некоторым недостаткам указанного решения стоит отнести реализацию ОС общего назначения и ОСРВ на одной вычислительной системе, а также распределение аппаратных ресурсов между операционными системами, которое осуществляется через гипервизор, что в свою очередь приводит к ухудшению характеристик реального времени, например к задержке реакции или времени отклика ОСРВ на внешнее события.

Также из уровня техники известно решение EP 3267649 A1 «Method and industrial computing apparatus for performing a secure communication» в котором используется две ОС, одна из которых ОСРВ. Указанное решение реализуется с помощью безопасного канала между ОС с использованием виртуализации. Недостатком такого решения может являться снижение производительности на стороне ОСРВ из-за разделения ОС виртуальной машиной для которой требуется большое количество аппаратных ресурсов и как следствие, ухудшение характеристик реального времени, например увеличенное время отклика ОСРВ.

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

Раскрытие сущности изобретения

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

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

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

В еще одном варианте реализации настоящего изобретения дополнительно первая вычислительная система содержит операционную систему общего назначения (далее – ОС общего назначения), а вторая вычислительная система содержит операционную систему реального времени (далее – ОСРВ).

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

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

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

В еще одном варианте реализации настоящего изобретения монитор безопасности контролирует взаимодействие компонентов между собой с использованием механизмов межпроцессного взаимодействия на основе политик безопасности.

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

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

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

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

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

В еще одном варианте реализации настоящего изобретения веб-сервер принимает HTTP-запросы от удаленного интерфейса на вычислительном устройстве и выдает HTTP-ответы с HTML-страницей.

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

Краткое описание чертежей

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

Фиг. 1 представляет пример структурной схемы вычислительного устройства для управления исполнительными и/или измерительными устройствами.

Фиг. 2 представляет пример системы управления исполнительными и/или измерительными устройствами в режиме реального времени.

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

Фиг. 4 представляет способ управления исполнительными и/или измерительными устройствами в режиме реального времени.

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

Осуществление изобретения

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

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

Система на кристалле (СнК, англ. System-on-a-Chip, SOC) – электронная схема, выполняющая функции целого устройства (например, компьютера) и размещенная на интегральной схеме. СнК может принимать и обрабатывать цифровые, аналоговые, радиосигналы или работать в аналого-цифровом режиме, объединив на кристалле процессор (или несколько процессоров), периферию, блок оперативной памяти и долговременной памяти.

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

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

Система реального времени – система, в которой успешность работы любой программы зависит не только от ее логической правильности, но и от времени, за которое она получила результат. Если временные ограничения не удовлетворены, то фиксируется сбой в работе системы. Наиболее упоминаемыми системами реального времени являются – системы жесткого реального времени и системы мягкого реального времени. Системы мягкого реального времени характеризуются тем, что задержка реакции не критична. Системы жесткого реального времени предусматривают наличие гарантированного времени отклика системы на конкретное событие, например, аппаратное прерывание, выдачу команды управления и т.п. Примерами характеристик систем реального времени являются срок исполнения (англ. deadline), задержка (англ. latency), дрожание (англ. jitter). Под сроком исполнения подразумевается критический временной интервал обслуживания или предельный срок завершения какого-то процесса. Задержка указывает время отклика системы на событие в целом. Дрожание характеризует разброс времен отклика системы, который может возникнуть, например, под влиянием других событий, происходящих в объекте или процессе. Примерами систем жесткого реального времени являются бортовые системы управления, системы аварийной защиты, регистраторы аварийных событий. Системами реального времени являются как решения реального времени с операционной системой, так и решения реального времени без операционной системы.

Операционная система реального времени, ОСРВ (англ. real-time operating system, RTOS), – тип специализированной операционной системы, основное назначение которой — предоставление необходимой и достаточной функциональности для проектирования, разработки и функционирования систем реального времени на конкретном аппаратном оборудовании.

Исполнительное устройство (англ. actuator) - устройство для автоматического управления или регулирования, воздействующее на объект управления в соответствии с получаемой командой управления. Воздействие осуществляется преобразованием одного вида энергии (электрической, магнитной, тепловой, химической) в другую (чаще всего – в механическую), что приводит к выполнению определенного действия, заданного управляющим сигналом.

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

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

Вычислительное устройство 100 – программируемый логический контроллер (сокр. ПЛК; англ. programmable logic controller, PLC), характеризующийся тем, что содержит по меньшей мере систему на кристалле 105 (СнК), включающую две вычислительные системы 110 и 115, где каждая вычислительная система содержит свои выделенную память и периферию, а также между вычислительными системами 110 и 115 расположена высокоскоростная шина передачи данных 150 (далее – шина передачи данных 150). В свою очередь вычислительная система 110 содержит по меньшей мере одно вычислительное ядро 120, периферию 130, память 140. Аналогично вычислительная система 115 содержит по меньшей мере одно вычислительное ядро 125, периферию 135, память 145.

Вычислительная система 110 предназначена для взаимодействия с удаленным компьютером через интерфейс на удаленном компьютере посредством компьютерной сети, например сети Интернет, а также взаимодействия вычислительной системы 110 с вычислительной системой 115 через шину передачи данных 150. Пример удаленного компьютера представлен на Фиг. 5. Вычислительная система 115 предназначена для обработки информации, данных, сигналов или команд управления в реальном времени, в том числе, которые поступили от вычислительной системы 110. Одним из примеров является передача команд управления на исполнительное устройство от вычислительной системы 115, а также прием сигналов от измерительного устройства и выдача данных с него или исполнительного устройства в вычислительную систему 110. В одном из вариантов реализации в вычислительной системе 115 осуществляется обработка информации в режиме реального времени, например высокочастотный трейдинг (англ. High-frequency Trading, HFT) – разновидность автоматической торговли, в которой главную роль играет скорость принятия решений и выполнения операций; или обновление баз данных в режиме реального времени; мониторинг показателей здоровья в реальном времени (частота пульса, насыщенность крови кислородом, артериальное давление), предоставление данных в режиме реального времени о количестве забронированных номеров в гостинице и т.д.

В одном варианте реализации в вычислительной системе 110 исполняется программное решение, например операционная система общего назначения (далее – ОС общего назначения), а в вычислительной системе 115 исполняется решение реального времени, например операционная система реального времени (далее – ОСРВ).

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

В зависимости от варианта реализации вычислительная система 110 содержит по меньшей мере одно вычислительное ядро 120, также вычислительная система 115 содержит по меньшей мере одно вычислительное ядро 125.

Каждая вычислительная система 110 и 115 имеет собственную периферию 130 и 135 (например, I2C, SPI, USB, Ethernet и т.д) и память 140 и 145, например кэш вычислительных ядер, оперативное запоминающее устройство (далее – ОЗУ) и т.д.

В частном варианте реализации между вычислительными системами 110 и 115 имеется общая память, например постоянное запоминающее устройство, ПЗУ (на фигурах не указана).

Для взаимодействия вычислительных систем 110 и 115 между собой используется шина передачи данных 150, например RapidIO.

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

В другом частном варианте реализации взаимодействие вычислительных систем 110 и 115 осуществляется через перезаписываемую общую память ПЗУ с кодом загрузчика, например EEPROM.

В еще одном частном варианте реализации взаимодействие вычислительных систем 110 и 115 осуществляется посредством почтовых ящиков (англ. mailbox).

Таким образом, каждая вычислительная система 110 или 115 является независимой аппаратной вычислительной системой, на которую нельзя повлиять из другой вычислительной системы через общую память или периферию, а взаимодействие между вычислительными системами 110 и 115, происходит по шине передачи данных 150. Каждую такую вычислительную систему можно считать изолированной и, соответственно, вычислительные ядра 120 и 125 будут также изолированными друг от друга.

Изоляция периферии и памяти для каждой из вычислительных систем 110 и 115 подразумевает, что аппаратные модули работы с памятью также изолированы, например путем использования прямого доступа к памяти (англ. direct memory access, DMA). Таким образом, аппаратный модуль DMA вычислительной системы 110 и любого модуля периферии 130 имеет доступ только к периферии 130 и памяти 140 своей вычислительной системы. То же самое подразумевается и для вычислительной системы 115 с периферией 135 и памятью 145. В том числе при изоляции памяти 140 и 145 учитывается память кэшей внутри каждой вычислительной системы 110 и 115, не позволяя влиять на работу другого вычислительной системы.

В частном варианте реализации изоляция памяти 140 и 145, например такой как ОЗУ, реализуется внутри СнК 105 таким образом, что снаружи СнК 105 для обоих вычислительных систем 110 и 115 используется одна и та же память СнК 105. В таком случае изоляция памяти 140 и 145 вычислительных систем 110 и 115 обеспечивается арбитрами соответствующих шин внутри СнК 105, а снаружи СнК 105 предполагается отсутствие иных аппаратных модулей, например PCI, Ethernet, периферии 130 и 135, имеющих доступ к ОЗУ, в обход упоминаемых выше арбитров шин внутри СнК 105.

Также для безопасного использования вычислительных систем 110 и 115 в СнК 105 в одном из вариантов реализации дополнительно обеспечивается изоляция остальных аппаратных модулей, не относящихся к памяти и периферии (например, контроллера питания, контроллера прерываний), таким образом, чтобы вычислительная система или аппаратные модули, относящиеся к ней, не могли влиять на работу другой вычислительной системы или ее аппаратных модулей.

В частном варианте реализации применение аппаратной изоляции не исключает использование виртуальных изоляций внутри каждой вычислительной системы 110 и 115 (например, IOMMU, TEE и т.д).

В одном варианте реализации на вычислительной системе 110 исполняется решение не реального времени, например, программное решение без операционной системы, такое как bare metal (https://itglobal.com/ru-ru/company/glossary/bare-metal/), а на вычислительной системе 115 исполняется решение реального времени (далее – ОСРВ).

В случае, когда в вычислительной системе 115 исполняется решение реального времени, то предлагаемый подход по аппаратной изоляции вычислительных систем 110 и 115 улучшает характеристики решения реального времени по сравнению с использованием подходов виртуальной изоляции решений (например, TEE). Из-за использования в подходах с виртуальной изоляцией решений единых вычислительных ресурсов для обоих решений и переключения контекста внутри всей системы происходит уменьшение детерминированности времени исполнения примитивов в решении реального времени и увеличению различных временных задержек. Поэтому предлагаемый подход по аппаратной изоляции вычислительных систем 110 и 115 в дополнение к улучшению характеристик реального времени, позволяет с меньшими доработками использовать известные из уровня техники решения реального времени. Это достигается за счет того, что решение реального времени, исполняющееся на вычислительной системе 115, владеет собственными независимыми ресурсами, при этом вычислительная система 110 не влияет на работу указанного решения реального времени и предназначена для осуществления функций безопасности для взаимодействия с компьютерной сетью, например сетью Интернет. Также вынесение функций безопасности в вычислительную систему 110 не увеличивает вычислительную нагрузку на вычислительную систему 115. Таким образом, за функциональность реального времени отвечает решение реального времени, реализованное на вычислительной системе 115, а за безопасное взаимодействие по компьютерной сети, такой как, например сеть Интернет, – решение, реализованное на вычислительной системе 110. В одном из вариантов реализации решением реального времени на вычислительной системе 115 является ОСРВ, а решением, отвечающим за безопасное взаимодействие по сети Интернет, на вычислительной системе 110 является ОС общего назначения.

На Фиг. 2 представлен пример системы управления исполнительными и/или измерительными устройствами в режиме реального времени (далее – система 200).

В рамках реализации системы 200 представлено вычислительное устройство (далее – ВУ) 100. Примером реализации ВУ 100 может быть компьютер, ноутбук, микроконтроллер, программируемый логический контроллер (ПЛК) и любое другое вычислительное устройство, позволяющее осуществить заявленное изобретение.

Система 200 включает:

• по меньшей мере одно ВУ 100, предназначенное для управления измерительным устройством и/или исполнительным устройством, а также обеспечения взаимодействия по компьютерной сети,

• по меньшей мере один удаленный компьютер 210 для взаимодействия с ВУ 100 по компьютерной сети,

• по меньшей мере одно из устройств:

o измерительное устройство 230 (далее – датчик 230),

o исполнительное устройство 235.

Пример реализации удаленного компьютера 210 представлен на Фиг. 5. В свою очередь ВУ 100 включает СнК 105, содержащую вычислительную систему 110 и вычислительную систему 115 с изолированными памятью и периферией для каждой вычислительной системы. Вычислительная система 110 содержит операционную систему общего назначения 220 (далее – ОС 220), а вычислительная система 115 вычислительной системы 115 содержит операционную систему реального времени 225 (далее – ОСРВ 225). Для взаимодействия между вычислительной системой 110 и вычислительной системой 115 используется ранее упоминавшаяся при описании Фиг. 1 шина передачи данных 150.

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

Вычислительные системы 110 и 115 имеют свою периферию 130 и 135 (порты SATA, Ethernet, флэш-память NAND, USB) и память 140 и 145 (оперативное запоминающее устройство, ОЗУ). Данный подход позволяет ОС 220 на вычислительном системе 110 и ОСРВ 225 на вычислительной системе 115 работать изолированно друг от друга. Вычислительная система 110 содержит по меньшей мере одно вычислительное ядро 120, аналогично вычислительная система 115 содержит по меньшей мере одно вычислительное ядро 125.

В одном варианте реализации ОС 220 представляет собой ОС с микроядерной архитектурой (например, KasperskyOS - https://os.kaspersky.ru/), предоставляющую минимальный набор элементарных функций управления процессами и абстракций для работы с оборудованием. Это способствует более высокому уровню надежности и безопасности микроядерной архитектуры ОС, так как небольшой объем кода микроядра проще проверить на наличие уязвимостей и других ошибок.

ОС 220 отвечает как за взаимодействие через интерфейс на удаленном компьютере 210 по сети Интернет, так и за взаимодействие между компонентами самой ОС 220, которые могут быть доверенными и недоверенными компонентами, а также за взаимодействие с ОСРВ 225.

В частном варианте реализации ОС 220 выполняет роль шлюза безопасности (англ. secure gateway). Под шлюзом безопасности понимается точка соединения между сетями, между сегментами сетей или между программными приложениями в различных доменах безопасности, предназначенная для защиты сети в соответствии с существующей политикой безопасности (https://base.garant.ru/70246078/).

В свою очередь ОСРВ 225 предназначена для взаимодействия с ОС 220 и взаимодействия с по меньшей мере одним исполнительным устройством 235 и/или одним измерительным устройством – датчиком 230. ОСРВ 225 во время взаимодействия с ОС 220, например, осуществляет передачу статусных данных на ОС 220 и получение конфигурационных данных от ОС 220. Под статусными данными понимаются данные, которые содержат информацию о значениях или показателях с таких устройств как устройства 230 или 235. Полученные ОСРВ 225 конфигурационные данные от ОС 220 преобразуются в команды управления для исполнительного устройства 235.

В свою очередь взаимодействие ОСРВ 225 с датчиком 230 осуществляется путем сбора ОСРВ 225 данных с датчика 230. В частном варианте реализации осуществляют управление параметрами датчика 230. Примером данных, которые передаются от датчика 230 в ОСРВ 225 является состояние оборудования, температура в помещении, давление и пр. Частным примером управления параметрами датчика 230 является увеличение чувствительности датчика сигнализации. Взаимодействие ОСРВ 225 с исполнительным устройством 235 осуществляется путем передачи команд управления на исполнительное устройство 235. В частном варианте реализации передача команд управления от ОСРВ 225 на исполнительное устройство 235 осуществляется в зависимости от полученных данных с датчика 230. Также ОСРВ 225 передает от исполнительного устройства 235 в ОС 220 данные, касающиеся работы исполнительного устройства 235. Примерами данных, передаваемых от ОС 220 в ОСРВ 225, являются конфигурационные данные, такие как значения скорости подачи жидкости в резервуар, значения объема заполнения резервуара жидкостью, значения чувствительности датчика дымоуловителя. Примерами статусных данных передаваемых от ОСРВ 225 в ОС 220 являются состояние заслонок трубопровода, информация о состоянии шасси самолета, информация с счетчиков воды, информация с датчиков протечки воды, информация о состоянии здоровья больного и тому подобное.

В частном варианте реализации периферия 135 вычислительной системы 115 имеет выводы общего назначения GPIO, которые используются для непосредственного подключения исполнительного устройства 235 и датчика 230.

Как было описано ранее, для взаимодействия между вычислительной системой 110 и вычислительной системой 115 используется шина передачи данных 150. Это позволяет ОС 220 в вычислительной системе 110 обмениваться информацией и данными с ОСРВ 225 на вычислительной системе 115. В качестве шины передачи данных 150 применяется, например, RapidIO – высокопроизводительная коммуникационная шина.

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

В варианте реализации ОС 220 включает в себя по меньшей мере такие компоненты, как монитор безопасности 310, веб-сервер 320, средство аутентификации 330, средство контроля сертификатов 340, и средство контроля взаимодействий 350. ОС 220 расположена в вычислительной системе 110.

Монитор безопасности 310 предназначен для определения разрешения или запрета на взаимодействие компонентов ОС 220 между собой с использованием механизмов межпроцессного взаимодействия (англ. inter-process communication, IPC) на основе политик безопасности. Примером политики безопасности является, например, «по умолчанию запрещено» (англ. default deny), запрещающая все взаимодействия компонентов между собой, которые явно не разрешены политикой безопасности.

Компоненты ОС 220 подразделяются на доверенные и недоверенные компоненты. Доверенными компонентами ОС 220 считаются по меньшей мере монитор безопасности 310, средство аутентификации 330, средство контроля сертификатов 340 и средство контроля взаимодействий 350. Указанные компоненты разработаны доверенным производителем программного обеспечения. Под недоверенными понимаются компоненты, которые не являются доверенными, но также не признаны вредоносными, например, при помощи антивирусного приложения.

Недоверенным компонентом ОС 220 считается веб-сервер 320. Под веб-сервером 320 понимается приложение, сервис или сервер, принимающий HTTP-запросы от удаленного компьютера 210, и выдающий ему HTTP-ответы, как правило, вместе с HTML-страницей (веб-страницей), изображением, файлом, медиапотоком или другими данными. Также веб-сервер 320 имеет свою отдельную файловую систему, которая необходима веб-серверу 320 для хранения веб-страниц, CSS-страниц (англ. Cascading style sheets) и другой необходимой для работы информации. Являясь недоверенным компонентом ОС 220 веб-сервер 320 не имеет доступа к файловым системам компонентов ОС 220 на основании установленных политик безопасности.

Как было указано ранее, одним из доверенных компонентов ОС 220 является монитор безопасности 310. Монитор безопасности 310 представляет собой компонент, который контролирует все межпроцессные взаимодействия между компонентами ОС 220, а также проверяет, соответствует ли каждое межпроцессное взаимодействие установленным политикам безопасности. Еще одним доверенным компонентом ОС 220 является средство аутентификации 330, которое осуществляет проверку аутентификации пользователей и хранит в своей файловой системе базу данных аутентифицированных пользователей (на фигурах не указана).

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

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

Стоит отметить, что у таких компонентов, как средство аутентификации 330, средство контроля сертификатов 340, средство контроля взаимодействий 350 имеются свои файловые системы для работы с логами пользователей, а у средства контроля сертификатов 340 дополнительно имеется файловая система для работы с сертификатами. При этом, только у средства контроля взаимодействий 350 имеется доступ к сетевой файловой системе и только средство контроля взаимодействий 350 может принимать сетевые пакеты для взаимодействия с ОСРВ 225.

Рассмотрим подробнее пример взаимодействия компонентов при запуске ОС 220, аутентификации пользователя и завершении сессии пользователя. В момент запуска ОС 220 происходит инициализация IPC-каналов монитором безопасности 310 между компонентами ОС 220, при этом когда пользователь еще не аутентифицирован, на основании политик безопасности установлено, что веб-серверу 320 запрещено взаимодействовать со средством контроля взаимодействий 350 при установленном IPC-канале, но при этом веб-серверу 320 разрешено взаимодействовать со средством аутентификации 330 и средством контроля сертификатов 340 по установленным IPC-каналам. Для того чтобы веб-сервер 320 начал взаимодействовать по IPC-каналу со средством контроля взаимодействий 350, пользователь должен быть аутентифицирован в системе, используя удаленный компьютер 210. Аутентификация и авторизация пользователя обеспечивается средством аутентификации 330. Когда аутентификация проходит успешно, пользователь авторизован, начинается рабочая сессия с аутентифицированным пользователем на удаленном устройстве 210. Монитор безопасности 310 на основании политик безопасности устанавливает, что в один момент времени может поддерживается только одна сессия. Детальный процесс аутентификации пользователя будет раскрыт далее.

В момент аутентификации пользователя, средство аутентификации 330 передает статус об успешной аутентификации пользователя средству контроля взаимодействий 350 по IPC-каналу. После получения средством контроля взаимодействий 350 статуса об успешной аутентификации монитор безопасности 310 на основании политик безопасности разрешает взаимодействие веб-сервера 320 и средства контроля взаимодействий 350 по IPC-каналу, при этом все так же разрешено взаимодействие веб-сервера 320 со средством аутентификации 330 и средством контроля сертификатов 340. После того, как, монитор безопасности 310 разрешил взаимодействие веб-сервера 320 и средства контроля взаимодействий 350, пользователь может взаимодействовать с ОСРВ 225 через средство контроля взаимодействий 350, а также получать информацию от ОСРВ 225. IPC-канал между веб-сервером 320 и средством контроля взаимодействий 350 остается открытым с разрешением взаимодействия через него до момента завершения сессии работы с пользователем. На время активной сессии генерируется ключ шифрования посредством удаленного компьютера 210, например по алгоритму Диффи-Хеллмана. Средство аутентификации 330 хранит ключ шифрования на протяжении активной сессии. В активной сессии на основании политики безопасности монитор безопасности 310 запрещает попытки аутентификации.

В момент завершения сессии работы с пользователем средство аутентификации 330 передает монитору безопасности 310 статус завершения сессии, после чего монитор безопасности 310 разрывает IPC-канал между веб-сервером 320 и средством контроля взаимодействий 350. Для новой сессии пользователю необходимо снова проходить аутентификацию согласно установленным политикам безопасности. Также средство аутентификации 330 после отправки статуса завершения сессии монитору безопасности 310 удаляет ключ шифрования, сгенерированный при аутентификации. При этом сессия с пользователем может быть завершена по истечении определенного таймаута, например периода бездействия пользователя в течение 15 минут. В случае компрометации веб-сервера 320 и попытки взаимодействия со средством контроля взаимодействий 350 в тот момент, когда пользователь не аутентифицирован, монитор безопасности 310 на основании политик безопасности запретит взаимодействие веб-сервера 320 со средством контроля взаимодействий 350.

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

Посредством веб-сервера 320 устанавливают HTTPS-соединение с удаленным компьютером 210 и осуществляют передачу критической информации, такой как логин и пароль пользователя, от удаленного компьютера 210 в средство аутентификации 330 через веб-сервер 320. При этом передача критической информации через веб-сервер 320, который является недоверенным компонентом ОС 220, должна осуществляться безопасно, т.е. без возможности эту информацию скомпрометировать. Для решения такой задачи с использованием удаленного компьютера 210 устанавливается, например, зашифрованный канал. Далее будет описываться установление зашифрованного канала на примере использования криптографического протокола Диффи-Хеллмана (англ. Diffie–Hellman key exchange protocol, DH).

Между удаленным компьютером 210 и средством аутентификации 330 устанавливается зашифрованный канал через веб-сервер 320 для передачи информации аутентификации от удаленного компьютера 210 веб-серверу 320. Перед тем, как выработать криптографический ключ, средство контроля сертификатов 340 проводит проверку сертификата веб-страницы.

В момент начала работы сессии с пользователем в веб-сервер 320 от удаленного компьютера 210 поступает запрос о начале работы сессии, далее от веб-сервера 320 запрос передается в средство аутентификации 330. В ответ на поступивший запрос от веб-сервера 320 средство аутентификации 330 генерирует значения алгоритма Диффи-Хеллмана g, p, A и передает их веб-серверу 320 и средству контроля сертификатов 330. В свою очередь веб-сервер 320 добавляет значения g, p, A в свою базу аутентификаций (на фигурах не указана), формирует веб-страницу для ввода данных аутентификации и передает веб-страницу удаленному компьютеру 210 в его интерфейс через средство контроля сертификатов 340. Далее средство контроля сертификатов 340 проверяет, корректно ли сформирована веб-страница веб-сервером 320 (т.к. в этой странице присутствуют значения для вычисления криптографического ключа K), а также корректность формата веб-страницы и место размещения значений g, p, A на ней и сравнивает с теми значениями g, p, A, которые были переданы от средства аутентификации 330. Пользователь вводит логин и пароль на удаленном компьютере 210, после чего генерируется криптографический ключ K. На этом ключе зашифровывается информация об аутентификации, а также находится значение B. Ключ передается обратно в средство аутентификации 330 через веб-сервер 320. В случае, если веб-сервер 320 подвергся кибератаке и был взломан, ключ с зашифрованной информацией невозможно будет расшифровать. Далее средство аутентификации 330, получив данные от удаленного компьютера 210, вычисляет на основании значения B значение K, дешифрует зашифрованную информацию, сверяет информацию аутентификации с базой данных аутентифицированных пользователей (на фигурах не указана) и аутентифицирует пользователя, если информация об аутентификации совпала с информацией из базы данных аутентифицированных пользователей.

После того, как аутентификация прошла успешно, пользователь может взаимодействовать с приложениями в ОСРВ 225 с помощью удаленного компьютера 210 через ОС 220. В свою очередь пользователь отправляет с помощью удаленного компьютера 210 конфигурационные данные через средство контроля взаимодействий 350 по шине передачи данных 150 в ОСРВ 225. Полученные конфигурационные данные в ОСРВ 225 преобразуются в команды управления для исполнительного устройства 235 и отправляются далее на исполнительное устройство 235. В ответ ОСРВ 225 передает в ОС 220 информацию о работе исполнительного устройства 235.

В качестве примера реализации системы 200 с составом операционной системы 220 рассмотрим работу управления клапанами трубопровода с удаленным мониторингом и управлением.

Пользователь использует удаленный компьютер 210 чтобы взаимодействовать с ОС 220 на ВУ 100 для управления клапанами трубопровода. Пользователь проходит аутентификацию, после чего ему становится доступен интерфейс управления трубопроводом. Интерфейс управления в виде HTML-страницы предоставляется веб-сервером 320, запущенным на ОС 220.

Для полноценного понимания примера приведем конкретные понятия и величины. Резервуар с жидкостью объемом 1000 литров; входная труба, которая подает жидкость в резервуар с жидкостью с определенной скоростью Vin. Расход жидкости из резервуара обеспечивается выходными трубами, например, двумя – V1, V2. Максимальные скорости расхода жидкости по выходным трубам V1max, V2max, при этом все трубы могут перекрываться клапанами. При наполнении резервуара до уровня Hin,0 = 950 литров входной клапан входной трубы закрывается во избежание переполнения резервуара. При опустошении резервуара до уровня Hin,1 = 200 литров, входной клапан входной трубы открывается. Во избежание полного опустошения резервуара, при достижении жидкости уровня Hout,0 = 50 литров, с помощью клапанов выходных труб начинает ограничиваться скорость расхода жидкости. При этом сначала перекрывается выходная труба, имеющая наименьший приоритет подачи жидкости – начиная с трубы V2, заканчивая трубой V1 в случае продолжения падения уровня жидкости. Скорость подачи жидкости по выходным трубам возобновляется при достижении уровня жидкости в резервуаре Hout,1 = 800 литров.

Пользователь проходит аутентификацию в ОС 220 и задает следующие величины: Hin,0; Hout,1; Hin,1; Hout,0 – уровни жидкости в резервуаре (могут задаваться в процентном соотношении), при этом вводимые величины должны соответствовать следующим условиям: Hin,0 > Hout,1 > Hin,1 > Hout,0; Vin – скорость подачи жидкости в резервуар; V1,max, V2,max – максимальные скорости расхода жидкости по трубам. В процессе работы программы величины V1, V2 могут быть изменяемыми.

После того, как пользователь задал величины, все конфигурационные данные передаются от ОС 220 в ОСРВ 225 по шине передачи данных 150 и преобразуются в команды управления для исполнительного устройства 235. Если величины V1, V2 изменяются, то данные пересылаются заново в ОСРВ 225 от ОС 220 и также преобразуются в команды управления. В свою очередь от ОСРВ 225 передаются в ОС 220 данные об уровне жидкости в резервуаре с датчиков 230, а также о состоянии клапанов входной и выходных труб. При этом данные пересылаются от ОСРВ 225 в ОС 220 при изменении значения уровня воды в резервуаре больше, чем на 1% от максимального значения.

На Фиг. 4 представлен пример способа взаимодействия с исполнительными устройствами и измерительными устройствами в режиме реального времени 400 (далее – способ 400). Представленный способ 400 реализуется под управлением ВУ 100, представленного при описании Фиг. 1 и системы 200, представленной при описании Фиг. 2.

Способ 400 осуществляется при помощи системы 200, при этом используется по меньшей мере вычислительное устройство 100. В свою очередь ВУ 100 включает СнК 105, содержащую вычислительную систему 110 и вычислительную систему 115 с изолированными памятью и периферией для каждой вычислительной системы. Для взаимодействия между вычислительной системой 110 и вычислительной системой 115 используется шина передачи данных 150. Стоит отметить, что в способе 400 взаимодействие с ВУ 100 осуществляется с помощью удаленного компьютера 210 по компьютерной сети, например сети Интернет. Пример вычислительного устройства представлен на Фиг. 5. Вычислительная система 110 содержит по меньшей мере одно вычислительное ядро 120, аналогично вычислительная система 115 содержит по меньшей мере одно вычислительное ядро 125.

Для реализации способа 400 ВУ 100 содержит вычислительную систему 110 с операционной системой общего назначения 220 (далее – ОС 220), и вычислительную систему 115 с операционной системой реального времени 225 (далее – ОСРВ 225), а также шину передачи данных 150 между вычислительной системой 110 и вычислительной системой 115. ОС 220 предназначено для взаимодействия с удаленным компьютером 210, взаимодействия между доверенными и недоверенными компонентами ОС 220, а также взаимодействия с ОСРВ 225. ОСРВ 225 предназначено для взаимодействия с ОС 220 для передачи в ОС 220 статусных данных, получения от ОС 220 конфигурационных данных или команд управления для измерительного или исполнительного устройств, преобразование полученных конфигурационных данных в команды управления для исполнительного устройства 235. Также взаимодействие с по меньшей мере одним из устройств: измерительным устройством 230 (далее - датчик 230) и исполнительным устройством 235. В варианте реализации ОС 220 включает в себя по меньшей мере такие компоненты, как монитор безопасности 310, веб-сервер 320, средство аутентификации 330, средство контроля сертификатов 340, и средство контроля взаимодействий 350 представленные ранее по Фиг. 3 и раскрытые по Фиг. 2.

Доступ к ОСРВ 225 с ОС 220 возможен только аутентифицированному пользователю посредством удаленного компьютера 210.

На шаге 410 с помощью удаленного компьютера 210 передают в вычислительную систему 110 запрос о начале работы сессии пользователя. Запрос осуществляют путем передачи от удаленного компьютера 210 в ОС 220 на веб-сервер 320 запроса о начале работы сессии, после чего веб-сервер 320 передает запрос в средство аутентификации 330. Примером интерфейса на удаленном компьютере 210, предназначенного для взаимодействия с вычислительной системой 110, является веб-браузер. В частном варианте реализации интерфейсом на удаленном компьютере 210 является любая программа способная отправлять команды, которые ВУ 100 может интерпретировать, а также шифровать соединение.

На шаге 420 устанавливают с использованием удаленного компьютера 210 зашифрованный канал между удаленным компьютером 210 и вычислительной системой 110. Зашифрованный канал устанавливается между удаленным компьютером 210 и средством аутентификации 330 через веб-сервер 320. Установление зашифрованного канала на примере использования криптографического протокола Диффи-Хеллмана было приведено ранее при описании Фиг. 3.

На шаге 430 проводят аутентификацию пользователя в вычислительной системе 110, в результате разрешают удаленному компьютеру 210 взаимодействие с вычислительной системой 115 в случае успешной аутентификации. Аутентификацию пользователя проводят посредством компонентов ОС 220 на вычислительной системе 110. Аутентифицированный пользователь взаимодействует с ОСРВ 225 на вычислительной системе 115.

На шаге 440 с помощью удаленного компьютера 210 отправляют конфигурационные данные через вычислительную систему 110 в вычислительную систему 115. Например, передают значение заданного уровня жидкости в резервуаре из ранее описанного примера по Фиг. 3

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

На шаге 460 осуществляют взаимодействие вычислительной системы 115 с по меньшей мере одним измерительным устройством 230 и одним исполнительным устройством 235. Взаимодействие вычислительной системы 115 с датчиком 230 осуществляют путем сбора данных с датчика 230. Взаимодействие вычислительной системы 115 с исполнительным устройством 235 осуществляют путем передачи команд управления на исполнительное устройство 235. Например, передают данные об уровне жидкости в резервуаре, а также данные о состоянии клапанов входных и выходных труб из ранее описанного примера реализации системы 200. В частном варианте реализации команды управления передаются от вычислительной системы 115 на исполнительное устройство 235 в зависимости от полученных данных с датчика 230.

Как показано на Фиг. 5, компьютерная система 20 включает в себя: центральный процессор 21, системную память 22 и системную шину 23, которая связывает разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, способную взаимодействовать с любой другой шинной архитектурой. Примерами шин являются: PCI, ISA, PCI-Express, HyperTransport™, InfiniBand™, Serial ATA, I2C и другие подходящие соединения между компонентами компьютерной системы 20. Центральный процессор 21 содержит один или несколько процессоров, имеющих одно или несколько ядер. Центральный процессор 21 исполняет один или несколько наборов машиночитаемых инструкций, реализующих способы, представленные в настоящем документе. Системная память 22 может быть любой памятью для хранения данных и/или компьютерных программ, исполняемых центральным процессором 21. Системная память может содержать как постоянное запоминающее устройство (ПЗУ) 24, так и память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами компьютерной системы 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.

Компьютерная система 20 включает в себя одно или несколько устройств хранения данных, таких как одно или несколько извлекаемых запоминающих устройств 27, одно или несколько неизвлекаемых запоминающих устройств 28, или комбинации извлекаемых и неизвлекаемых устройств. Одно или несколько извлекаемых запоминающих устройств 27 и/или неизвлекаемых запоминающих устройств 28 подключены к системной шине 23 через интерфейс 32. В одном из вариантов реализации извлекаемые запоминающие устройства 27 и соответствующие машиночитаемые носители информации представляют собой энергонезависимые модули для хранения компьютерных инструкций, структур данных, программных модулей и других данных компьютерной системы 20. Системная память 22, извлекаемые запоминающие устройства 27 и неизвлекаемые запоминающие устройства 28 могут использовать различные машиночитаемые носители информации. Примеры машиночитаемых носителей информации включают в себя машинную память, такую как кэш-память, SRAM, DRAM, ОЗУ не требующую конденсатора (Z-RAM), тиристорную память (T-RAM), eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM; флэш-память или другие технологии памяти, такие как твердотельные накопители (SSD) или флэш-накопители; магнитные кассеты, магнитные ленты и магнитные диски, такие как жесткие диски или дискеты; оптические носители, такие как компакт-диски (CD-ROM) или цифровые универсальные диски (DVD); и любые другие носители, которые могут быть использованы для хранения нужных данных и к которым может получить доступ компьютерная система 20.

Системная память 22, извлекаемые запоминающие устройства 27 и неизвлекаемые запоминающие устройства 28, содержащиеся в компьютерной системе 20 используются для хранения операционной системы 35, приложений 37, других программных модулей 38 и программных данных 39. Компьютерная система 20 включает в себя периферийный интерфейс 46 для передачи данных от устройств ввода 40, таких как клавиатура, мышь, стилус, игровой контроллер, устройство голосового ввода, устройство сенсорного ввода, или других периферийных устройств, таких как принтер или сканер через один или несколько портов ввода/вывода, таких как последовательный порт, параллельный порт, универсальная последовательная шина (USB) или другой периферийный интерфейс. Устройство отображения 47, такое как один или несколько мониторов, проекторов или встроенных дисплеев, также подключено к системной шине 23 через выходной интерфейс 48, такой как видеоадаптер. Помимо устройств отображения 47, компьютерная система 20 оснащена другими периферийными устройствами вывода (на Фиг. N не показаны), такими как динамики и другие аудиовизуальные устройства.

Компьютерная система 20 может работать в сетевом окружении, используя сетевое соединение с одним или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 является рабочим персональным компьютером или сервером, который содержит большинство или все упомянутые компоненты, отмеченные ранее при описании сущности компьютерной системы 20, представленной на Фиг. N. В сетевом окружении также могут присутствовать и другие устройства, например, маршрутизаторы, сетевые станции или другие сетевые узлы. Компьютерная система 20 может включать один или несколько сетевых интерфейсов 51 или сетевых адаптеров для связи с удаленными компьютерами 49 через одну или несколько сетей, таких как локальная компьютерная сеть (LAN) 50, глобальная компьютерная сеть (WAN), интранет и Интернет. Примерами сетевого интерфейса 51 являются интерфейс Ethernet, интерфейс Frame Relay, интерфейс SONET и беспроводные интерфейсы.

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

Машиночитаемый носитель информации является осязаемым устройством, которое сохраняет и хранит программный код в форме машиночитаемых инструкций или структур данных, к которым имеет доступ центральный процессор 21 компьютерной системы 20. Машиночитаемый носитель может быть электронным, магнитным, оптическим, электромагнитным, полупроводниковым запоминающим устройством или любой подходящей их комбинацией. В качестве примера, такой машиночитаемый носитель информации может включать в себя память с произвольным доступом (RAM), память только для чтения (ROM), EEPROM, портативный компакт-диск с памятью только для чтения (CD-ROM), цифровой универсальный диск (DVD), флэш-память, жесткий диск, портативную компьютерную дискету, карту памяти, дискету или даже механически закодированное устройство, такое как перфокарты или рельефные структуры с записанными на них инструкциями.

Система и способ, настоящего изобретения, могут быть рассмотрены в терминах средств. Термин «средство», используемый в настоящем документе, относится к реальному устройству, компоненту или группе компонентов, реализованных с помощью аппаратного обеспечения, например, с помощью интегральной схемы, специфичной для конкретного приложения (ASIC) или FPGA, или в виде комбинации аппаратного и программного обеспечения, например, с помощью микропроцессорной системы и набора машиночитаемых инструкций для реализации функциональности средства, которые (в процессе выполнения) превращают микропроцессорную систему в устройство специального назначения. Средство также может быть реализовано в виде комбинации этих двух компонентов, при этом некоторые функции могут быть реализованы только аппаратным обеспечением, а другие функции - комбинацией аппаратного и программного обеспечения. В некоторых вариантах реализации, по крайней мере, часть, а в некоторых случаях и все средство может быть выполнено на центральном процессоре 21 компьютерной системы 20. Соответственно, каждое средство может быть реализовано в различных подходящих конфигурациях и не должно ограничиваться каким-либо конкретным вариантом реализации, приведенным в настоящем документе.

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

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

название год авторы номер документа
Безопасная аутентификация по логину и паролю в сети Интернет с использованием дополнительной двухфакторной аутентификации 2016
  • Петровичев Дмитрий Леонидович
  • Баранов Артем Олегович
  • Гончаров Евгений Викторович
RU2635276C1
СПОСОБ И СИСТЕМА ДЛЯ ПРОВЕДЕНИЯ ТОРГОВЫХ ОПЕРАЦИЙ С ИСПОЛЬЗОВАНИЕМ ЭЛЕКТРОННЫХ СРЕДСТВ ОБРАБОТКИ ИНФОРМАЦИИ 2022
  • Посаженников Владимир Владимирович
RU2775442C1
УПРАВЛЕНИЕ ЗАЩИЩЕННОЙ ЛИНИЕЙ СВЯЗИ В ДИНАМИЧЕСКИХ СЕТЯХ 2001
  • Мур Тимоти М.
  • Айягари Арун
  • Шетх Сачин К.
  • Бахл Прадип
RU2297037C2
ИНФРАСТРУКТУРА ВЕРИФИКАЦИИ БИОМЕТРИЧЕСКИХ УЧЕТНЫХ ДАННЫХ 2007
  • Кросс Дэвид Б.
  • Лич Пол Дж.
  • Шутц Клаус Ю.
  • Янг Роберт Д.
  • Шерман Натан К.
RU2434340C2
ОБЕСПЕЧЕНИЕ БЕЗОПАСНОСТИ СВЯЗИ С РАСШИРЕННЫМИ МУЛЬТИМЕДИЙНЫМИ ПЛАТФОРМАМИ 2015
  • Элиен Жан-Эмиль
  • Балма Дэниел Коллинз
  • Кри Рокко Iii
  • Фрей Майкл Брендан
  • Хеллайар Пол Стефен
  • Тэн Виктор
  • Ким Кие Хиун
  • Мухлестейн Тревис Дж.
  • Юноки Роберт С.
  • Байер Кеннет Майкл
  • Уолин Уэс
RU2685975C2
ВНЕШНИЙ ОБЪЕДИНЕННЫЙ ЦЕНТР ДАННЫХ, ПРЕДОСТАВЛЯЮЩИЙ ФУНКЦИОНАЛЬНОСТЬ КЛИЕНТА 2007
  • Леви Марк
  • Пирсон Малком Эрик
  • Роттсолк Маргарет Элизабет
  • Лекрой Джонатан Роберт
  • Макколган Чарльз
RU2451996C2
Система и способ контроля операций при взаимодействии пользователя с удаленными сервисами 2020
  • Федюшкин Максим Сергеевич
RU2762527C1
СПОСОБ, УСТРОЙСТВО И КОМПЬЮТЕРНЫЙ ПРОГРАММНЫЙ ПРОДУКТ ДЛЯ УПРАВЛЕНИЯ ВЕРСИЯМИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 2009
  • Такала Янне
  • Муукка Олли Пекка Юхани
  • Тамминен Рауно Юхани
  • Ярвинен Янне Йоханнес
RU2494456C2
СИСТЕМА И СПОСОБ ЦЕЛЕВОЙ УСТАНОВКИ СКОНФИГУРИРОВАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 2012
  • Воронков Константин Павлович
  • Дешевых Степан Николаевич
  • Яблоков Виктор Владимирович
RU2523113C1
Отчётность о законном перехвате в беспроводных сетях, используя релейную передачу для общественной безопасности 2015
  • Стояновски Александр
  • Венкатачалам Мутайа
RU2658659C2

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

Реферат патента 2024 года Программируемый логический контроллер для управления устройствами реального времени

Изобретение относится к программируемому логическому контроллеру (ПЛК) для управления устройствами реального времени. Заявленное устройство характеризуется тем, что содержит систему на кристалле (СнК), включающую по меньшей мере две вычислительные системы, память, периферию и высокоскоростную шину передачи данных, где память и периферия первой вычислительной системы изолированы от памяти и периферии второй вычислительной системы. При этом первая вычислительная система содержит по меньшей мере одно вычислительное ядро и предназначена для: взаимодействия с удаленным компьютером, взаимодействия со второй вычислительной системой; вторая вычислительная система содержит по меньшей мере одно вычислительное ядро и предназначена: для взаимодействия с первой вычислительной системой, при котором получает от первой вычислительной системы конфигурационные данные или команды управления для измерительного или исполнительного устройства, передает статусные данные в первую вычислительную систему, преобразовывает конфигурационные данные в команды управления для исполнительного устройства; для взаимодействия с исполнительным и/или измерительным устройством. Технический результат заключается в усовершенствовании устройств, осуществляющих управление устройствами реального времени. 13 з.п. ф-лы, 5 ил.

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

1. Программируемый логический контроллер (ПЛК) для управления устройствами реального времени, характеризующийся тем, что содержит систему на кристалле, включающую по меньшей мере две вычислительные системы, каждая из которой содержит память, периферию, где память и периферия, взаимодействующие с первой вычислительной системой, изолированы от памяти и периферии, взаимодействующие со второй вычислительной системой, при этом: первая вычислительная система предназначена для взаимодействия с удаленным компьютером и взаимодействия со второй вычислительной системой; вторая вычислительная система предназначена для взаимодействия с первой вычислительной системой, во время которого по меньшей мере осуществляет одно из: получает от первой вычислительной системы конфигурационные данные или команды управления для измерительного или исполнительного устройства, передает статусные данные в первую вычислительную систему, преобразовывает конфигурационные данные в команды управления для исполнительного устройства; для взаимодействия с по меньшей мере одним из устройств: исполнительным устройством и измерительным устройством, при этом во время взаимодействия осуществляется: сбор данных с измерительного устройства, передача команд управления на исполнительное устройство.

2. ПЛК, по п. 1, в котором каждая вычислительная система содержит по меньшей мере одно вычислительное ядро.

3. ПЛК, по п. 1, в котором взаимодействие первой вычислительной системы со второй вычислительной системой осуществляется посредством высокоскоростной шины передачи данных.

4. ПЛК, по п. 1, в котором дополнительно первая вычислительная система проводит аутентификацию пользователя на основании полученных данных от удаленного компьютера.

5. ПЛК, по п. 4, в котором первая вычислительная система осуществляет передачу данных во вторую вычислительную систему только если пользователь аутентифицирован.

6. ПЛК, по п. 1, в котором взаимодействие между удаленным компьютером и ПЛК осуществляется через установление зашифрованного канала связи.

7. ПЛК, по п. 1, в котором дополнительно первая вычислительная система содержит операционную систему (ОС) общего назначения, а вторая вычислительная система содержит операционную систему реального времени (ОСРВ).

8. ПЛК, по п. 7, в котором операционная система общего назначения включает компоненты: монитор безопасности, веб-сервер, средство аутентификации, средство контроля сертификатов и средство контроля взаимодействий.

9. ПЛК, по п. 8, в котором монитор безопасности, средство аутентификации, средство контроля сертификатов и средство контроля взаимодействий являются доверенными компонентами, а веб-сервер является недоверенным компонентом.

10. ПЛК, по п. 8, в котором монитор безопасности контролирует взаимодействие компонентов между собой с использованием механизмов межпроцессного взаимодействия на основе политик безопасности.

11. ПЛК по п. 8, в котором средство контроля сертификатов осуществляет поддержку HTTPS-соединения между удаленным интерфейсом на вычислительном устройстве и веб-сервером.

12. ПЛК по п. 8, в котором средство контроля взаимодействий осуществляет передачу конфигурационных данных от удаленного компьютера по высокоскоростной шине передачи данных в вычислительную систему с ОСРВ, а также принимает из вычислительной системы с ОСРВ данные касающиеся работы измерительного устройства.

13. ПЛК по п. 8, в котором веб-сервер принимает HTTP-запросы от удаленного интерфейса на вычислительном устройстве и выдает HTTP-ответы с HTML-страницей.

14. ПЛК по п. 8, в котором монитор безопасности отвечает за определение разрешений или запретов на взаимодействие компонентов ОС общего назначения между собой с использованием механизмов межпроцессного взаимодействия на основе политик безопасности.

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

EP 3611642 B1, 12.08.2020
EP 3267649 B1, 13.02.2019
US 0009746844 B2, 29.08.2017
Промышленный программируемый контроллер 2019
RU2749103C1
СПОСОБ ОПРЕДЕЛЕНИЯ ДИСПЕРСНОСТИ 0
SU195051A1

RU 2 825 561 C1

Авторы

Барсуков Сергей Николаевич

Сорокин Игорь Александрович

Мотавин Александр Михайлович

Духвалов Андрей Петрович

Даты

2024-08-27Публикация

2024-02-14Подача