RU2015147897A - Способ выполнения задач в критической системе реального времени - Google Patents
Способ выполнения задач в критической системе реального времени Download PDFInfo
- Publication number
- RU2015147897A RU2015147897A RU2015147897A RU2015147897A RU2015147897A RU 2015147897 A RU2015147897 A RU 2015147897A RU 2015147897 A RU2015147897 A RU 2015147897A RU 2015147897 A RU2015147897 A RU 2015147897A RU 2015147897 A RU2015147897 A RU 2015147897A
- Authority
- RU
- Russia
- Prior art keywords
- processes
- alternative
- partial
- time
- node
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
Claims (31)
1. Способ автономного планирования процессов, образующих задачу, соответствующую гибкой модели для многозадачной системы реального времени, причем способ содержит следующие этапы, выполняемые цепочкой инструментов для компиляции исходного кода, определяющего задачу, на которых:
a) присваивают каждому процессу потребность в аппаратном ресурсе и временное ограничение;
b) выделяют для каждого процесса временной интервал, имеющий продолжительность, соответствующую временному ограничению процесса;
c) идентифицируют точку ветвления, в которой принимается решение о выполнении одного или другого из двух альтернативных процессов;
d) выделяют для двух альтернативных процессов общий временной интервал;
e) присваивают общему временному интервалу потребность в ресурсе, соответствующую большей из потребностей в ресурсах двух альтернативных процессов;
f) повторяют этапы с этапа с) для каждой точки ветвления;
g) организуют получающиеся временные интервалы в шаблоне выполнения, связанном с задачей; и
h) получают параметры статического планирования для многозадачной системы из шаблона выполнения.
2. Способ по п. 1, в котором исходный код представляет собой задачу в виде графа, определяющего набор процессов, соединенных переходными узлами, причем каждый переходной узел определяет точку синхронизации согласно временному базису во время выполнения задачи на многозадачной системе, причем способ содержит этапы, на которых:
определяют пределы временного интервала, выделенного для каждого процесса, из исходного переходного узла и переходного узла назначения процесса;
для двух альтернативных процессов, которые имеют общий исходный узел и два соответственных целевых узла, объединяют два целевых узла в объединенный целевой узел; и
определяют временной интервал, общий для обоих альтернативных процессов, из общего исходного узла и объединенного целевого узла.
3. Способ по п. 2, содержащий для двух альтернативных процессов, имеющих на этапе с) различные временные ограничения, следующие этапы, на которых:
создают промежуточный переходной узел в первом из двух альтернативных процессов, имеющем самое длительное временное ограничение, приводящий к первому частичному альтернативному процессу между исходным узлом и промежуточным узлом и ко второму частичному процессу между промежуточным узлом и целевым узлом первого альтернативного процесса;
присваивают первому частичному альтернативному процессу первую потребность в ресурсе и временное ограничение, соответствующее временному ограничению второго альтернативного процесса;
присваивают второму частичному процессу вторую потребность в ресурсе так, что сумма первой и второй потребностей в ресурсах соответствует потребности в ресурсе первого альтернативного процесса, и временное ограничение, соответствующее разнице временных ограничений двух альтернативных процессов; и
приступают к первому частичному альтернативному процессу и второму альтернативному процессу согласно этапу d).
4. Способ выполнения планируемой задачи по п. 3, содержащий следующие этапы, выполняемые в многозадачной системе, на которых:
в каждом временном интервале проверяют с помощью сторожевого процесса, что выполнение текущего процесса соответствует потребности в ресурсе, присвоенной для временного интервала; и
исключают сигнализирование об ошибке сторожевым процессом, если выполнение текущего процесса превышает потребность в ресурсе, и текущий процесс представляет собой первый частичный альтернативный процесс.
5. Способ по п. 4, содержащий этапы, на которых:
устанавливают переменную состояния при выполнении первого частичного альтернативного процесса;
исключают сигнализирование об ошибке сторожевым процессом, если выполнение текущего процесса превышает потребность в ресурсе, и переменная состояния установлена; и
очищают переменную состояния в точке синхронизации, соответствующей объединенному целевому узлу.
6. Способ по п. 3, содержащий следующие этапы для циклического участка графа, на которых:
разделяют каждый процесс, имеющий более длительное временное ограничение в наборе частичных процессов, имеющих более короткое временное ограничение, которое является наибольшим общим делителем временных ограничений в циклическом участке, посредством чего циклический участок графа преобразуется в нормализованный подграф, определяющий последовательность полных или частичных процессов, все из которых имеют одинаковое нормализованное временное ограничение; и
распределяют потребность в ресурсе каждого процесса, имеющего более длительное временное ограничение, между соответствующими частичными процессами, посредством чего сумма потребностей в ресурсах частичных процессов соответствует потребности в ресурсе процесса, имеющего более длительное временное ограничение.
7. Способ по п. 6, содержащий этапы, на которых:
накладывают конец первого участка подграфа на начало участка подграфа так, что переходные узлы конца первого участка подграфа совпадают с соответственными узлами начала второго участка подграфа, посредством чего две последовательные пары совпадающих узлов определяют временной интервал, общий для процессов, имеющих в качестве соответственных начальных адресов два узла первой пары; и
присваивают общему временному интервалу таким образом определенную потребность в ресурсе, соответствующую наибольшим потребностям в ресурсах процессов, связанных с первой парой узлов, и временное ограничение, соответствующее нормализованному временному ограничению.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1353203A FR3004274A1 (fr) | 2013-04-09 | 2013-04-09 | Procede d'execution de taches dans un systeme temps-reel critique |
FR1353203 | 2013-04-09 | ||
PCT/FR2014/050612 WO2014167197A1 (fr) | 2013-04-09 | 2014-03-17 | Procédé d'exécution de taches dans un system temps-réel critique |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2015147897A true RU2015147897A (ru) | 2017-05-16 |
RU2660614C2 RU2660614C2 (ru) | 2018-07-06 |
Family
ID=48906285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2015147897A RU2660614C2 (ru) | 2013-04-09 | 2014-03-17 | Способ выполнения задач в критической системе реального времени |
Country Status (11)
Country | Link |
---|---|
US (1) | US9946575B2 (ru) |
EP (1) | EP2984565B1 (ru) |
JP (1) | JP6524064B2 (ru) |
KR (1) | KR102178574B1 (ru) |
CN (1) | CN105144104B (ru) |
AU (1) | AU2014252942A1 (ru) |
BR (1) | BR112015025326B1 (ru) |
CA (1) | CA2907808C (ru) |
FR (1) | FR3004274A1 (ru) |
RU (1) | RU2660614C2 (ru) |
WO (1) | WO2014167197A1 (ru) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9740529B1 (en) * | 2013-12-05 | 2017-08-22 | The Mathworks, Inc. | High throughput synchronous resource-constrained scheduling for model-based design |
CN105912390A (zh) * | 2016-04-07 | 2016-08-31 | 四川大学 | 云计算环境下基于模板的任务调度策略 |
US11243949B2 (en) | 2017-04-21 | 2022-02-08 | Microsoft Technology Licensing, Llc | Query execution across multiple graphs |
FR3072197B1 (fr) * | 2017-10-10 | 2019-10-11 | Krono-Safe | Procede d'execution de plans de sequencement assurant une communication a faible latence entre taches temps-reel |
FR3084187B1 (fr) * | 2018-07-18 | 2021-01-01 | Commissariat Energie Atomique | Procede d'acceleration de l'execution d'un programme a chemin unique par execution en parallele de sequences conditionnellement concurrentes |
CN109460277B (zh) * | 2018-10-30 | 2022-08-05 | 北京小米移动软件有限公司 | 商品抢购流程的展示方法及装置 |
US11244106B2 (en) * | 2019-07-03 | 2022-02-08 | Microsoft Technology Licensing, Llc | Task templates and social task discovery |
RU2751441C1 (ru) * | 2020-09-11 | 2021-07-13 | Федеральное государственное бюджетное образовательное учреждение высшего образования «Московский государственный университет имени М.В.Ломоносова» (МГУ) | Способ формирования вычислительного комплекса |
US11726817B2 (en) | 2020-09-25 | 2023-08-15 | Red Hat, Inc. | Scheduling multiple processes with varying delay sensitivity |
DE102020214144A1 (de) | 2020-11-11 | 2022-05-12 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren und Vorrichtung zum Überwachen zyklischer Aufgaben in Maschinensteuerung |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2816730B1 (fr) | 2000-11-13 | 2004-10-15 | Commissariat Energie Atomique | Procede de securisation rendant deterministe l'execution en temps reel d'applications multitaches du type controle- commande avec confinement d'erreur |
RU2239228C2 (ru) * | 2001-07-05 | 2004-10-27 | Всероссийский научно-исследовательский институт автоматики | Способ распределения времени центрального процессора между задачами в автоматизированных системах управления технологическими процессами |
US7614037B2 (en) * | 2004-05-21 | 2009-11-03 | Microsoft Corporation | Method and system for graph analysis and synchronization |
KR20070031307A (ko) * | 2004-05-27 | 2007-03-19 | 코닌클리즈케 필립스 일렉트로닉스 엔.브이. | 신호 스트림 처리 작업의 조합을 실행하기 위한 방법, 장치및 시스템, 실행 파라미터를 계산하는 방법 및 장치,컴퓨터 프로그램 제품 |
FR2873830B1 (fr) * | 2004-07-30 | 2008-02-22 | Commissariat Energie Atomique | Procede d'ordonnancement de traitement de taches et dispositif pour mettre en oeuvre le procede |
GB0513045D0 (en) * | 2005-06-27 | 2005-08-03 | Vidus Ltd | Resource scheduling method and system |
FR2893156B1 (fr) * | 2005-11-04 | 2008-02-15 | Commissariat Energie Atomique | Procede et systeme de calcul intensif multitache et multiflot en temps reel. |
CN100580632C (zh) * | 2008-02-22 | 2010-01-13 | 浙江大学 | 嵌入式系统rm低功耗调度中松弛时间在线重分配方法 |
US8214245B2 (en) * | 2009-05-04 | 2012-07-03 | International Business Machines Corporation | Method and system for synchronizing inclusive decision branches |
US8606377B2 (en) | 2009-07-23 | 2013-12-10 | Biosense Webster, Inc. | Preventing disruptive computer events during medical procedures |
JP5069325B2 (ja) | 2010-03-11 | 2012-11-07 | 株式会社豊田中央研究所 | タスク実行制御装置及びプログラム |
EP2568346B1 (en) * | 2011-09-06 | 2015-12-30 | Airbus Operations | Robust system control method with short execution deadlines |
-
2013
- 2013-04-09 FR FR1353203A patent/FR3004274A1/fr not_active Withdrawn
-
2014
- 2014-03-17 CA CA2907808A patent/CA2907808C/fr active Active
- 2014-03-17 AU AU2014252942A patent/AU2014252942A1/en not_active Abandoned
- 2014-03-17 BR BR112015025326-1A patent/BR112015025326B1/pt active IP Right Grant
- 2014-03-17 KR KR1020157030996A patent/KR102178574B1/ko active IP Right Grant
- 2014-03-17 RU RU2015147897A patent/RU2660614C2/ru active
- 2014-03-17 JP JP2016507024A patent/JP6524064B2/ja active Active
- 2014-03-17 US US14/783,246 patent/US9946575B2/en active Active
- 2014-03-17 WO PCT/FR2014/050612 patent/WO2014167197A1/fr active Application Filing
- 2014-03-17 EP EP14715372.0A patent/EP2984565B1/fr active Active
- 2014-03-17 CN CN201480019979.5A patent/CN105144104B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
AU2014252942A1 (en) | 2015-11-19 |
US20160070600A1 (en) | 2016-03-10 |
US9946575B2 (en) | 2018-04-17 |
CN105144104B (zh) | 2020-03-17 |
BR112015025326A2 (pt) | 2017-07-18 |
WO2014167197A1 (fr) | 2014-10-16 |
KR20150140708A (ko) | 2015-12-16 |
CA2907808A1 (fr) | 2014-10-16 |
WO2014167197A9 (fr) | 2015-01-08 |
RU2660614C2 (ru) | 2018-07-06 |
EP2984565A1 (fr) | 2016-02-17 |
KR102178574B1 (ko) | 2020-11-13 |
EP2984565B1 (fr) | 2019-08-21 |
CA2907808C (fr) | 2021-06-08 |
BR112015025326B1 (pt) | 2022-05-03 |
JP6524064B2 (ja) | 2019-06-05 |
CN105144104A (zh) | 2015-12-09 |
FR3004274A1 (fr) | 2014-10-10 |
JP2016519821A (ja) | 2016-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2015147897A (ru) | Способ выполнения задач в критической системе реального времени | |
BR112017016467A2 (pt) | computação de percurso ciente de tempo | |
JP6448052B2 (ja) | 高速変更計画システム、高速変更計画方法および高速変更計画プログラム | |
WO2015126968A3 (en) | Data management systems and methods | |
WO2016036817A4 (en) | Executing graph-based program specifications | |
ATE551818T1 (de) | Verfahren zur bereitstellung einer nachfolgerliste | |
BR112017020635A2 (pt) | determinação de modo de derivação de informações de movimento em conversão de vídeo em código | |
JP2017532678A5 (ru) | ||
BR112016007199A8 (pt) | processo de diálogo entre uma máquina, tal como um robô humanoide, e um interlocutor humano, produto de programa de computador e robô humanoide para a execução de tal processo | |
JP2016081494A (ja) | 分散コンピューティング環境におけるグラフデータの振り分け方法及び装置 | |
EA201500176A1 (ru) | Способ обработки рабочего процесса машиной состояний | |
US9391875B2 (en) | Resource oriented dependency graph for network configuration | |
EP2950212A3 (en) | Parallel computer system and method for controlling parallel computer system | |
JP2016071886A5 (ru) | ||
Romanova et al. | Complexity of cyclic job shop scheduling problems for identical jobs with no-wait constraints | |
MX2020009779A (es) | Sistema y metodo para gestion de recursos y asignacion de recursos en una red auto-optimizante de nodos de procesamiento heterogeneos. | |
MX2019005534A (es) | Metodo y sistema para fabricacion distribuida. | |
JP6234916B2 (ja) | ネットワークシステムおよびその制御方法 | |
SE1751168A1 (en) | Evaluation of developer organizations | |
CN104572132A (zh) | 一种程序版本差异确定方法及装置 | |
MX2020010009A (es) | Técnicas para el diseño de reparación de antientropía programada. | |
JPWO2016151808A1 (ja) | 部品の取替周期算出装置および取替周期算出方法 | |
RU2020123319A (ru) | Динамическое выделение неоднородных вычислительных ресурсов, определяемое во время выполнения приложения | |
AT514673A3 (de) | Verfahren zum Steuern einer Fertigungsanlage | |
Fiske | Consecutive Repeating State Cycles Determine Periodic Points in a Turing Machine |