JP2010160600A - 情報処理装置、スケジューラ、及びスケジューリング方法 - Google Patents
情報処理装置、スケジューラ、及びスケジューリング方法 Download PDFInfo
- Publication number
- JP2010160600A JP2010160600A JP2009001375A JP2009001375A JP2010160600A JP 2010160600 A JP2010160600 A JP 2010160600A JP 2009001375 A JP2009001375 A JP 2009001375A JP 2009001375 A JP2009001375 A JP 2009001375A JP 2010160600 A JP2010160600 A JP 2010160600A
- Authority
- JP
- Japan
- Prior art keywords
- calculation
- time
- programs
- unit
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
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
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Programmable Controllers (AREA)
- Stored Programmes (AREA)
- Advance Control (AREA)
- Debugging And Monitoring (AREA)
Abstract
【解決手段】単位時間算出部301により算出した複数プログラムのそれぞれの演算周期の最大公約数を単位時間としてプログラムを割り当てるベース期間を設定し、割り当て部305が複数プログラムの演算時間を連続するベース期間の中に演算周期が短い順に割り当て、かつ、一つのベース期間の中で演算が完了しないプログラムの残りの演算時間を、後のベース期間の中に演算周期が短い順に割り当てることにより、演算部400が複数のプログラムを効率よく演算することができる。
【選択図】図1
Description
第1の実施の形態に係る情報処理装置は、図1に示すように、スケジューラ300を備える。スケジューラ300は、複数のプログラムのそれぞれの演算周期の最大公約数を単位時間として算出する単位時間算出部301を備える。また、スケジューラ300は、複数のプログラムのそれぞれの演算時間を、それぞれ単位時間を有する複数の連続するベース期間のそれぞれの中に、演算周期がより短い順に割り当て、かつ、複数のベース期間のうちの一のベース期間の中で演算が完了しないプログラムの残りの演算時間を、一のベース期間の後のベース期間の中に、演算周期が短い順に割り当てる割り当て部305をさらに備える。また、情報処理装置は、複数のベース期間の中にそれぞれ演算時間が割り当てられた複数のプログラムを演算する演算部400を備える。
第2の実施の形態に係る、図12に示す情報処理装置のプログラム記憶装置330には、第1の実施の形態と同じ第1乃至第3のプログラムが保存されている。また、第2の実施の形態に係るプログラム記憶装置330には、第4のプログラムの代わりに、例えば1000ミリ秒の演算周期で演算される機能ブロックを30個含む、第5のプログラムが保存されている。演算装置400で1個の機能ブロックを演算するために必要な演算時間が2ミリ秒である場合、第5のプログラムを一回演算するために必要な演算時間は、60ミリ秒である。
上記のように本発明を実施の形態によって記載したが、この開示の一部をなす記述及び図面はこの発明を限定するものであると理解するべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかになるはずである。例えば、図1に示すプログラム記憶装置330に新たなプログラムが追加されたり、保存されていたプログラムの演算周期が変更されたり、保存されていたプログラムが削除されたりした場合、スケジューラ300が自動的に、プログラムの演算時間の割り当てを再スケジューリングしてもよい。また、実施の形態に示した演算周期及び演算時間等はあくまで例示的なものである。例えば、プログラム記憶装置330に、100ミリ秒の演算周期で演算されるプログラムと、250ミリ秒の演算周期で演算されるプログラムが保存されている場合、単位時間は50ミリ秒であり、完了時間は500ミリ秒である。この様に、本発明はここでは記載していない様々な実施の形態等を包含するということを理解すべきである。したがって、本発明はこの開示から妥当な特許請求の範囲の発明特定事項によってのみ限定されるものである。
301・・・単位時間算出部
302・・・完了時間算出部
303・・・演算回数算出部
304・・・優先割り当て部
305・・・割り当て部
312・・・入力装置
313・・・出力装置
330・・・プログラム記憶装置
331・・・一時記憶装置
400・・・演算装置
500・・・データバス
Claims (13)
- 複数のプログラムのそれぞれの演算周期の最大公約数を単位時間として算出する単位時間算出部と、
前記複数のプログラムのそれぞれの演算時間を、それぞれ前記単位時間を有する複数の連続するベース期間のそれぞれの中に、前記演算周期が短い順に割り当て、かつ、前記複数のベース期間のうちの一のベース期間の中で演算が完了しないプログラムの残りの演算時間を、前記一のベース期間の後のベース期間の中に、前記演算周期が短い順に割り当てる割り当て部と、
前記複数のベース期間の中にそれぞれ前記演算時間が割り当てられた前記複数のプログラムを演算する演算部と、
を備える情報処理装置。 - 複数のプログラムのそれぞれの演算周期の最大公約数を単位時間として算出する単位時間算出部と、
前記複数のプログラムのそれぞれの演算時間を、それぞれ前記単位時間を有する複数の連続するベース期間のそれぞれの中に、前記演算周期が短い順に割り当て、かつ、前記複数のベース期間のうちの一のベース期間の中で演算が完了しないプログラムの残りの演算時間を、前記一のベース期間の後のベース期間の中に、前記演算周期が短い順に割り当てる割り当て部と、
を備えるスケジューラ。 - 前記複数のプログラムのそれぞれの演算周期の最小公倍数を、前記複数のプログラムの総ての演算が少なくとも1回完了するために必要な完了時間として算出する、完了時間算出部を更に備える、請求項2に記載のスケジューラ。
- 前記複数の連続するベース期間の合計時間が、前記完了時間である、請求項3に記載のスケジューラ。
- 前記完了時間を、前記複数のプログラムのそれぞれの演算周期で割ることにより、前記完了時間までに、前記複数のプログラムのそれぞれが演算される合計演算回数を算出する、演算回数算出部を更に備える、請求項3又は4に記載のスケジューラ。
- 前記割り当て部が、前記複数のプログラムのそれぞれの演算回数が前記合計演算回数に達するまで、前記複数のプログラムのそれぞれの演算時間を、前記複数のベース期間の中に割り当てる、請求項5に記載のスケジューラ。
- 前記割り当て部が、前記複数のプログラムのそれぞれの演算時間を、前記複数のベース期間のそれぞれの中に割り当てる前に、演算するタイミングが指定されたタイミング指定プログラムを、前記複数のベース期間の少なくとも一つの中に割り当てる、優先割り当て部を更に備える、請求項2乃至6のいずれか1項に記載のスケジューラ。
- 複数のプログラムのそれぞれの演算周期の最大公約数を単位時間として算出することと、
前記複数のプログラムのそれぞれの演算時間を、それぞれ前記単位時間を有する複数の連続するベース期間のそれぞれの中に、前記演算周期が短い順に割り当て、かつ、前記複数のベース期間のうちの一のベース期間の中で演算が完了しないプログラムの残りの演算時間を、前記一のベース期間の後のベース期間の中に、前記演算周期が短い順に割り当てることと、
を含むスケジューリング方法。 - 前記複数のプログラムのそれぞれの演算周期の最小公倍数を、前記複数のプログラムの総ての演算が少なくとも1回完了するために必要な完了時間として算出することを更に含む、請求項8に記載のスケジューリング方法。
- 前記複数の連続するベース期間の合計時間が、前記完了時間である、請求項9に記載のスケジューリング方法。
- 前記完了時間を、前記複数のプログラムのそれぞれの演算周期で割ることにより、前記完了時間までに、前記複数のプログラムのそれぞれが演算される合計演算回数を算出することを更に含む、請求項9又は10に記載のスケジューリング方法。
- 前記割り当てることにおいて、前記複数のプログラムのそれぞれの演算回数が前記合計演算回数に達するまで、前記複数のプログラムのそれぞれの演算時間を、前記複数のベース期間の中に割り当てる、請求項11に記載のスケジューリング方法。
- 前記複数のプログラムのそれぞれの演算時間を、前記複数のベース期間のそれぞれの中に割り当てる前に、演算するタイミングが指定されたタイミング指定プログラムを、前記複数のベース期間の少なくとも一つの中に割り当てることを更に含む、請求項8乃至12のいずれか1項に記載のスケジューリング方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009001375A JP2010160600A (ja) | 2009-01-07 | 2009-01-07 | 情報処理装置、スケジューラ、及びスケジューリング方法 |
TW098141841A TWI402752B (zh) | 2009-01-07 | 2009-12-08 | Information processing device, scheduler, and scheduling method |
US12/649,138 US8327366B2 (en) | 2009-01-07 | 2009-12-29 | Data processing device, scheduling device, and scheduling method for program operation cycle allocation |
KR1020090132693A KR101093286B1 (ko) | 2009-01-07 | 2009-12-29 | 정보 처리 장치, 스케쥴러 및 스케쥴링 방법 |
CN2010100030121A CN101799769B (zh) | 2009-01-07 | 2010-01-06 | 信息处理装置、调度器及调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009001375A JP2010160600A (ja) | 2009-01-07 | 2009-01-07 | 情報処理装置、スケジューラ、及びスケジューリング方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010160600A true JP2010160600A (ja) | 2010-07-22 |
Family
ID=42312563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009001375A Pending JP2010160600A (ja) | 2009-01-07 | 2009-01-07 | 情報処理装置、スケジューラ、及びスケジューリング方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8327366B2 (ja) |
JP (1) | JP2010160600A (ja) |
KR (1) | KR101093286B1 (ja) |
CN (1) | CN101799769B (ja) |
TW (1) | TWI402752B (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014006788A (ja) * | 2012-06-26 | 2014-01-16 | Azbil Corp | 情報処理装置およびプログラム実行方法 |
JP2014206830A (ja) * | 2013-04-11 | 2014-10-30 | 富士電機株式会社 | プログラマブルコントローラの支援装置、そのプログラム、プログラマブルコントローラシステム |
JP2017138814A (ja) * | 2016-02-04 | 2017-08-10 | 富士電機株式会社 | 制御システム、および制御装置 |
JP2021179722A (ja) * | 2020-05-12 | 2021-11-18 | 株式会社デンソー | 電子制御装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102009055752A1 (de) * | 2009-11-25 | 2011-05-26 | Robert Bosch Gmbh | Verfahren zum Ermöglichen einer sequentiellen, nicht blockierenden Abarbeitung von Anweisungen in nebenläufigen Tasks in einer Steuereinrichtung |
KR101880452B1 (ko) * | 2012-02-06 | 2018-08-17 | 삼성전자주식회사 | 커널 수행 순서 스케줄링 방법 및 장치 |
JP2014142823A (ja) * | 2013-01-24 | 2014-08-07 | Azbil Corp | データ作成装置および方法 |
CN105049173B (zh) * | 2015-08-27 | 2017-12-22 | 南京南瑞继保电气有限公司 | 异步装置的同步方法 |
TWI584667B (zh) | 2015-11-27 | 2017-05-21 | 財團法人工業技術研究院 | 多請求的排程方法及排程裝置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02159603A (ja) | 1988-12-14 | 1990-06-19 | Japan Tobacco Inc | ループ制御装置 |
JP2002342097A (ja) * | 2001-05-17 | 2002-11-29 | Matsushita Electric Ind Co Ltd | タスク割当可能時間決定装置及びタスク割当可能時間決定方法 |
JP2007233930A (ja) * | 2006-03-03 | 2007-09-13 | Shimadzu System Solutions Co Ltd | 分散制御システム用シミュレータ |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1050808B1 (en) * | 1999-05-03 | 2008-04-30 | STMicroelectronics S.A. | Computer instruction scheduling |
US7165252B1 (en) * | 1999-06-21 | 2007-01-16 | Jia Xu | Method of scheduling executions of processes with various types of timing properties and constraints |
US7143401B2 (en) * | 2000-02-17 | 2006-11-28 | Elbrus International | Single-chip multiprocessor with cycle-precise program scheduling of parallel execution |
US20020103847A1 (en) * | 2001-02-01 | 2002-08-01 | Hanan Potash | Efficient mechanism for inter-thread communication within a multi-threaded computer system |
JP2002351509A (ja) | 2001-05-25 | 2002-12-06 | Mitsubishi Electric Corp | プログラミングツール及びプログラミング方法 |
US7475222B2 (en) * | 2004-04-07 | 2009-01-06 | Sandbridge Technologies, Inc. | Multi-threaded processor having compound instruction and operation formats |
JP2006099332A (ja) * | 2004-09-29 | 2006-04-13 | Sony Corp | 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム |
JP4074296B2 (ja) * | 2005-03-25 | 2008-04-09 | 株式会社東芝 | スケジューリング可能性判定方法、リアルタイムシステム及びプログラム |
US8438572B2 (en) * | 2006-03-15 | 2013-05-07 | Freescale Semiconductor, Inc. | Task scheduling method and apparatus |
-
2009
- 2009-01-07 JP JP2009001375A patent/JP2010160600A/ja active Pending
- 2009-12-08 TW TW098141841A patent/TWI402752B/zh active
- 2009-12-29 US US12/649,138 patent/US8327366B2/en active Active
- 2009-12-29 KR KR1020090132693A patent/KR101093286B1/ko active IP Right Grant
-
2010
- 2010-01-06 CN CN2010100030121A patent/CN101799769B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02159603A (ja) | 1988-12-14 | 1990-06-19 | Japan Tobacco Inc | ループ制御装置 |
JP2002342097A (ja) * | 2001-05-17 | 2002-11-29 | Matsushita Electric Ind Co Ltd | タスク割当可能時間決定装置及びタスク割当可能時間決定方法 |
JP2007233930A (ja) * | 2006-03-03 | 2007-09-13 | Shimadzu System Solutions Co Ltd | 分散制御システム用シミュレータ |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014006788A (ja) * | 2012-06-26 | 2014-01-16 | Azbil Corp | 情報処理装置およびプログラム実行方法 |
JP2014206830A (ja) * | 2013-04-11 | 2014-10-30 | 富士電機株式会社 | プログラマブルコントローラの支援装置、そのプログラム、プログラマブルコントローラシステム |
JP2017138814A (ja) * | 2016-02-04 | 2017-08-10 | 富士電機株式会社 | 制御システム、および制御装置 |
JP2021179722A (ja) * | 2020-05-12 | 2021-11-18 | 株式会社デンソー | 電子制御装置 |
JP7331774B2 (ja) | 2020-05-12 | 2023-08-23 | 株式会社デンソー | 電子制御装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101799769A (zh) | 2010-08-11 |
CN101799769B (zh) | 2013-10-02 |
KR101093286B1 (ko) | 2011-12-14 |
KR20100081928A (ko) | 2010-07-15 |
US20100175069A1 (en) | 2010-07-08 |
US8327366B2 (en) | 2012-12-04 |
TW201032135A (en) | 2010-09-01 |
TWI402752B (zh) | 2013-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2010160600A (ja) | 情報処理装置、スケジューラ、及びスケジューリング方法 | |
JP6799947B2 (ja) | スライディングタイムウィンドウを用いてタスクをスケジュール設定するためのシステムおよび方法 | |
US8621473B2 (en) | Constrained rate monotonic analysis and scheduling | |
CN103729246A (zh) | 一种任务调度方法和装置 | |
CN104765640B (zh) | 一种智能服务调度方法 | |
EP2839370B1 (en) | Time slack pipeline balancing for multicore programmable logic controllers (plc) | |
US10579036B2 (en) | Apparatus for program management of programmable logic controller | |
CN102667648A (zh) | 并行程控 | |
JP2005044326A (ja) | 改善されたedfスケジューリング方法 | |
CN103778016A (zh) | 多线程处理器 | |
CN110866687A (zh) | 任务分配方法及装置 | |
US10452425B2 (en) | Apparatus and method for processing a plurality of tasks | |
JP6464982B2 (ja) | 並列化方法、並列化ツール、車載装置 | |
US20090293060A1 (en) | Method for job scheduling with prediction of upcoming job combinations | |
JP7267819B2 (ja) | 並列タスクスケジューリング方法 | |
KR101335038B1 (ko) | 위상 정렬 및 잉여 시간을 기반으로 하는 주기 및 비주기 실시간 태스크 스케줄링 알고리즘 | |
JP2010160599A (ja) | スケジューラ、情報処理装置およびスケジューリング方法 | |
JP2006099579A (ja) | 情報処理装置及び情報処理方法 | |
JPWO2020035975A1 (ja) | 数値制御装置 | |
JP2018116389A (ja) | 処理装置 | |
JP5686477B2 (ja) | スケジュール作成方法及びスケジュール作成プログラム、並びにスケジュール作成装置 | |
JP2007072598A (ja) | バス調停方法及びバス調停プログラム | |
CN111240829A (zh) | 一种基于时间片的多核任务调度方法、装置、存储介质及电子设备 | |
JP2006048088A5 (ja) | ||
Tang et al. | Dynamic binding and scheduling of firm-deadline tasks on heterogeneous compute resources |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111107 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130426 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130502 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130828 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131009 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141126 |