JP7458923B2 - 共有メモリの設定方法及び計算機 - Google Patents
共有メモリの設定方法及び計算機 Download PDFInfo
- Publication number
- JP7458923B2 JP7458923B2 JP2020119289A JP2020119289A JP7458923B2 JP 7458923 B2 JP7458923 B2 JP 7458923B2 JP 2020119289 A JP2020119289 A JP 2020119289A JP 2020119289 A JP2020119289 A JP 2020119289A JP 7458923 B2 JP7458923 B2 JP 7458923B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- system program
- shared memory
- program
- control system
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 147
- 238000012545 processing Methods 0.000 claims description 54
- 238000004364 calculation method Methods 0.000 claims description 14
- 239000000872 buffer Substances 0.000 description 58
- 238000010586 diagram Methods 0.000 description 51
- 238000013499 data model Methods 0.000 description 48
- 230000006870 function Effects 0.000 description 17
- 238000006243 chemical reaction Methods 0.000 description 13
- 238000003491 array Methods 0.000 description 9
- 230000002093 peripheral effect Effects 0.000 description 6
- 230000010365 information processing Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000000547 structure data Methods 0.000 description 4
- 239000000470 constituent Substances 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Memory System (AREA)
- Programmable Controllers (AREA)
Description
(1)ナチュラルアラインメントの処理系のプログラムは、固定アラインメントの変数配置にアクセスできるが、固定アラインメントの処理系のプログラムは、ナチュラルアラインメントの変数配置にアクセスできない場合がある。
(2)アラインメントサイズが小さい処理系のプログラムは、当該アラインメントサイズより大きなアラインメントサイズの変数配列にアクセスできるが、アラインメントサイズが大きな処理系のプログラムは、当該アラインメントサイズより小さなアラインメントサイズの変数配列にアクセスできない場合がある。
実施例1の制御システム1では制御装置30及び設定装置10を独立した装置としているが、1つの装置にまとめてもよい。
実施例1では、制御装置30は、リアルタイムOS71及び非リアルタイムOS72が共存するハイブリッドOS型であったがこれ以外の構成でもよい。
10 設定装置
20、40 ネットワーク
30 制御装置
50 制御対象機器
11、31 CPU
12、32 EPROM
13、33 メインメモリ
14、35 周辺制御装置
15、36 不揮発性記憶装置
16、37 ユーザI/F装置
17、38、39 ネットワークI/F
34 タイマ
51 センサ
52 アクチュエータ
71 リアルタイムOS
72 非リアルタイムOS
75 制御系プログラム
76 情報系プログラム
77 共有メモリ
90 設定プログラム
91 変数配置方式決定手段
92 変数配置手段
93 ブロックサイズ算出手段
94 制御系プログラム構造体定義出力手段
95 情報系プログラム構造体定義出力手段
96 ブロック数算出手段
97 共有メモリ定義情報出力手段
1000 データモデル定義情報
1100 制御系プログラム定義情報
1200 情報系プログラム定義情報
1300 出力変数配置方式情報
1400 データ型変換テーブル
1500 構造体メンバ情報
1600 共有メモリ定義情報
1700 制御系プログラム構造体定義情報
1800 情報系プログラム構造体定義情報
2200 リングバッファ管理情報
3100 単純配列待ち行列
3110 リングバッファ
3120 連結リスト
Claims (10)
- 演算装置、前記演算装置に接続される記憶装置、前記演算装置に接続されるインタフェースを有する計算機が実行する共有メモリの設定方法であって、
前記計算機は、機器を制御する制御系プログラムと、前記機器から取得された情報を用いた処理を実行する情報系プログラムとが稼働する制御装置と接続し、
前記制御装置は、前記制御系プログラム及び前記情報系プログラムが、互いに、構造体によって関連付けられたデータ群を送受信するために使用する、所定のサイズの複数のブロックから構成されるキューを含む共有メモリを設定可能であり、
前記共有メモリの設定方法は、
前記演算装置が、前記制御系プログラム及び前記情報系プログラムの各々の実行周期に基づいて、前記制御系プログラムが前記キューに書き込んだ前記データ群を、当該データ群が上書きにより消去される前に前記情報系プログラムが読み出すことができる、前記ブロックの数を算出する第1のステップと、
前記演算装置が、前記共有メモリを介して送受信する前記データ群の構造を分析することによって、前記制御系プログラムが前記キューに書き込んだ前記データ群を、当該データ群が上書きにより消去される前に前記情報系プログラムが読み出すことができる、前記ブロックのサイズを算出する第2のステップと、
前記演算装置が、前記算出されたブロックの数及びサイズに基づいて定義される前記キューを含む前記共有メモリを設定するための共有メモリ定義情報を生成し、前記制御装置に出力する第3のステップと、
を含むことを特徴とする共有メモリの設定方法。 - 請求項1に記載の共有メモリの設定方法であって、
前記第1のステップは、
前記演算装置が、前記制御系プログラムの実行周期及び前記情報系プログラムの実行周期に基づいて、実行周期比率を算出する第4のステップと、
前記演算装置が、前記実行周期比率に基づいて前記ブロックの数を算出する第5のステップと、を含むことを特徴とする共有メモリの設定方法。 - 請求項2に記載の共有メモリの設定方法であって、
前記第5のステップは、前記演算装置が、前記実行周期比率より大きい整数の中で最も小さい前記整数を、前記ブロックの数として算出するステップを含むことを特徴とする共有メモリの設定方法。 - 請求項3に記載の共有メモリの設定方法であって、
前記第5のステップは、前記演算装置が、前記最も小さい整数に、処理の遅延及びジッタを考慮して補正整数を加算した値を、前記ブロックの数として算出するステップを含むことを特徴とする共有メモリの設定方法。 - 請求項1に記載の共有メモリの設定方法であって、
前記計算機は、前記構造体の情報と、前記制御系プログラムにおける前記データ群に対応する複数の変数の配置方式を定義する第1変数配置方式情報と、前記情報系プログラムにおける前記データ群に対応する複数の変数の配置方式を定義する第2変数配置方式情報とを管理し、
前記第1変数配置方式情報及び前記第2変数配置方式情報は、アラインメント方式及びアラインメントサイズを含み、
前記第2のステップは、
前記演算装置が、前記第1変数配置方式情報及び前記第2変数配置方式情報に基づいて、前記制御系プログラム及び前記情報系プログラムの各々が前記共有メモリを介した前記データ群の送受信が可能なアラインメント方式及びアラインメントサイズを決定する第6のステップと、
前記演算装置が、前記構造体の情報と、前記決定されたアラインメント方式及び前記決定されたアラインメントサイズとに基づいて、前記共有メモリを介して送受信する前記データ群に対応する前記変数を前記共有メモリ上に配置した場合の前記構造体のサイズを、前記ブロックのサイズとして算出する第7のステップと、を含むことを特徴とする共有メモリの設定方法。 - 演算装置、前記演算装置に接続される記憶装置、前記演算装置に接続されるインタフェースを備える計算機であって、
機器を制御する制御系プログラムと、前記機器から取得された情報を用いた処理を実行する情報系プログラムとが稼働する制御装置と接続し、
前記制御装置は、前記制御系プログラム及び前記情報系プログラムが、互いに、構造体によって関連付けられたデータ群を送受信するために使用する、所定のサイズの複数のブロックから構成されるキューを含む共有メモリを設定可能であり、
前記計算機は、
前記制御系プログラム及び前記情報系プログラムの各々の実行周期に基づいて、前記制御系プログラムが前記キューに書き込んだ前記データ群を、当該データ群が上書きにより消去される前に前記情報系プログラムが読み出すことができる、前記ブロックの数を算出するブロック数算出部と、
前記共有メモリを介して送受信する前記データ群の構造を分析することによって、前記制御系プログラムが前記キューに書き込んだ前記データ群を、当該データ群が上書きにより消去される前に前記情報系プログラムが読み出すことができる、前記ブロックのサイズを算出するブロックサイズ算出部と、
前記演算装置が、前記算出されたブロックの数及びサイズに基づいて定義される前記キューを含む前記共有メモリを設定するための共有メモリ定義情報を生成し、前記制御装置に出力する情報出力部と、
を備えることを特徴とする計算機。 - 請求項6に記載の計算機であって、
前記ブロック数算出部は、
前記制御系プログラムの実行周期及び前記情報系プログラムの実行周期に基づいて、実行周期比率を算出し、
前記実行周期比率に基づいて前記ブロックの数を算出することを特徴とする計算機。 - 請求項7に記載の計算機であって、
前記ブロック数算出部は、前記実行周期比率より大きい整数の中で最も小さい前記整数を、前記ブロックの数として算出することを特徴とする計算機。 - 請求項8に記載の計算機であって、
前記ブロック数算出部は、前記最も小さい整数に、処理の遅延及びジッタを考慮して補正整数を加算した値を、前記ブロックの数として算出することを特徴とする計算機。 - 請求項6に記載の計算機であって、
前記計算機は、前記構造体の情報と、前記制御系プログラムにおける前記データ群に対応する複数の変数の配置方式を定義する第1変数配置方式情報と、前記情報系プログラムにおける前記データ群に対応する複数の変数の配置方式を定義する第2変数配置方式情報とを管理し、
前記第1変数配置方式情報及び前記第2変数配置方式情報は、アラインメント方式及びアラインメントサイズを含み、
前記ブロックサイズ算出部は、
前記第1変数配置方式情報及び前記第2変数配置方式情報に基づいて、前記制御系プログラム及び前記情報系プログラムの各々が前記共有メモリを介した前記データ群の送受信が可能なアラインメント方式及びアラインメントサイズを決定し、
前記構造体の情報と、前記決定されたアラインメント方式及び前記決定されたアラインメントサイズとに基づいて、前記共有メモリを介して送受信する前記データ群に対応する前記変数を前記共有メモリ上に配置した場合の前記構造体のサイズを、前記ブロックのサイズとして算出することを特徴とする計算機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020119289A JP7458923B2 (ja) | 2020-07-10 | 2020-07-10 | 共有メモリの設定方法及び計算機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020119289A JP7458923B2 (ja) | 2020-07-10 | 2020-07-10 | 共有メモリの設定方法及び計算機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022016031A JP2022016031A (ja) | 2022-01-21 |
JP7458923B2 true JP7458923B2 (ja) | 2024-04-01 |
Family
ID=80121156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020119289A Active JP7458923B2 (ja) | 2020-07-10 | 2020-07-10 | 共有メモリの設定方法及び計算機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7458923B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118152154A (zh) * | 2024-05-13 | 2024-06-07 | 杭州芯控智能科技有限公司 | 基于共享内存开发的通讯控制方法、系统和可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007234047A (ja) | 1996-07-11 | 2007-09-13 | Compaq Computer Corp | インターフェイス定義言語によって定義されたデータ構造体を異種システム間で移送するための方法および装置 |
JP2013524386A (ja) | 2010-04-13 | 2013-06-17 | イーティー インターナショナル,インコーポレイティド | ランスペース方法、システムおよび装置 |
US8654136B1 (en) | 2010-02-19 | 2014-02-18 | Steve Rosenbluth | Memory paging system for real time motion data recording, editing, and playback |
WO2019244328A1 (ja) | 2018-06-22 | 2019-12-26 | ソフトサーボシステムズ株式会社 | モーション制御プログラム、モーション制御方法及びモーション制御装置 |
-
2020
- 2020-07-10 JP JP2020119289A patent/JP7458923B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007234047A (ja) | 1996-07-11 | 2007-09-13 | Compaq Computer Corp | インターフェイス定義言語によって定義されたデータ構造体を異種システム間で移送するための方法および装置 |
US8654136B1 (en) | 2010-02-19 | 2014-02-18 | Steve Rosenbluth | Memory paging system for real time motion data recording, editing, and playback |
JP2013524386A (ja) | 2010-04-13 | 2013-06-17 | イーティー インターナショナル,インコーポレイティド | ランスペース方法、システムおよび装置 |
WO2019244328A1 (ja) | 2018-06-22 | 2019-12-26 | ソフトサーボシステムズ株式会社 | モーション制御プログラム、モーション制御方法及びモーション制御装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2022016031A (ja) | 2022-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9164755B2 (en) | Personal and pooled virtual machine update | |
US8290764B2 (en) | Virtualization program, simulation apparatus and virtualization method | |
JP2017117204A (ja) | プロセッサ、再構成可能回路の制御方法及びプログラム | |
JP7050957B2 (ja) | タスクスケジューリング | |
KR102202149B1 (ko) | 선택 가능한 비교 속성들을 갖는 부동 소수점 명령 | |
JP7458923B2 (ja) | 共有メモリの設定方法及び計算機 | |
Wang et al. | Design and implementation of an analytical framework for interference aware job scheduling on apache spark platform | |
CN107729050A (zh) | 基于let编程模型的实时系统及任务构建方法 | |
JP6801776B2 (ja) | 仮想ネットワーク機能管理装置、仮想インフラストラクチャ管理装置、及び仮想ネットワーク機能構築方法 | |
KR102166185B1 (ko) | 파이프라인 실행 가속을 위한 데이터 처리 장치 및 그 방법 | |
US9116751B2 (en) | Reconfigurable device, processing assignment method, processing arrangement method, information processing apparatus, and control method therefor | |
CN103257892B (zh) | 一种基于宏组合的多任务调度方法及系统 | |
CN116866167A (zh) | 一种网卡混合亲核的硬件绑定方法、装置及存储介质 | |
Duan | Formal verification of device drivers in embedded systems | |
AU2020462915B2 (en) | Information processing system for assisting in solving allocation problems, and method | |
US8056030B2 (en) | Behavioral synthesis system, behavioral synthesis method, and behavioral synthesis program | |
TW200929939A (en) | A job management and a scheduling method of network systems | |
KR20140030660A (ko) | 하나 이상의 실행 유닛에 대한 성능 분석 방법, 성능 분석 장치 및 성능 분석 방법을 수행하는 프로그램을 기록한 컴퓨터 판독가능 기록매체 | |
JP5907607B2 (ja) | 処理配置方法及びプログラム | |
JP5832311B2 (ja) | 再構成デバイス、処理割当て方法及びプログラム | |
Alcaraz Mejia et al. | Modeling and Simulation Process of Extended Petri Nets with PNML and Matlab/Simulink | |
CN108228708A (zh) | 大数据etl系统及其调度方法 | |
JPWO2006059786A1 (ja) | アプリケーション競合管理システム及びその方法並びにそれを用いた情報処理端末 | |
WO2015022908A1 (ja) | ストレージ提供システム、ストレージ選択装置、ストレージ提供方法及びプログラム | |
JPH0340145A (ja) | 大規模ファイル作成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230616 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240216 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240312 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240319 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7458923 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |