CN101169745A - 模块执行装置及模块化程序 - Google Patents
模块执行装置及模块化程序 Download PDFInfo
- Publication number
- CN101169745A CN101169745A CNA2007101674694A CN200710167469A CN101169745A CN 101169745 A CN101169745 A CN 101169745A CN A2007101674694 A CNA2007101674694 A CN A2007101674694A CN 200710167469 A CN200710167469 A CN 200710167469A CN 101169745 A CN101169745 A CN 101169745A
- Authority
- CN
- China
- Prior art keywords
- module
- communication
- mentioned
- intermodule
- controlled
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
Abstract
一种模块执行装置及模块化程序,能提高进行模块间通信的模块化程序的再利用性。模块管理部(105)根据来自控制模块(101)、(102)的被控制模块生成指示,生成被控制模块(103)、(104)。指示通信标识符设定部(106)、(107)生成用于控制模块和被控制模块间的模块间通信的、由模块编号和处理器编号构成的通信标识符(模块间通信控制信息)。通信标识符设定部生成通信标识符,对各模块(101)~(104)进行设定。通信部选择部(108)根据从各模块提供的通信标识符,选择通信部(109)、(110)。通信部(109)进行处理器间通信,而通信部(110)进行处理器内通信。
Description
技术领域
本发明涉及进行控制模块与由上述控制模块生成并控制的被控制模块之间的模块间通信的模块执行装置。
背景技术
在由执行程序实现来各种功能的设备中,有程序被模块化、并在进行模块间通信的同时被执行的设备。另外,还有在进行模块间通信时,选择性使用多种通信方式中的任意一种通信方式的设备。
具体而言,例如在多CPU系统中,在进行与由相同CPU执行的模块(任务)的通信的情况下发送直接信息,而在进行与由其他CPU执行的任务的通信的情况下,对CPU间通信任务进行包括指定通信目标的任务和执行该任务的CPU的发送请求。在这种装置的情况下,当由于系统结构的变更、向其他系统的移植而执行通信对方的任务的CPU不相同时,通信方式发生变更,因此每次需要修正任务(模块化程序),再利用性降低。
因此,提出有例如如下方案:设置在系统构建时分配的、登记了由CPU编号和本地任务编号构成的任务ID的任务表格,和参照上述任务表格、根据执行通信目标的任务的CPU与通信源CPU是否相同而切换通信方式的实时监控器(例如,日本特开平8-339356号公报)。由此,能够与通信目标的任务由哪个CPU执行无关地执行相同的通信处理。
发明内容
但是,即使如上述那样构成为使用任务表格和实时监控器来切换通信方式,也存在着由于通信对方本身不同,而需要修正模块化程序,导致再利用性容易降低这样的问题。
本发明是鉴于以上问题,以提供通信处理的灵活性、容易地提高模块化程序的再利用性为目的的。
为解决上述课题,本发明的模块执行装置的特征在于,包括:
模块执行部,执行控制模块和通过执行上述控制模块而生成的被控制模块中的至少一个;
多种模块间通信部,进行上述控制模块和上述被控制模块间的模块间通信;以及
模块间通信部选择部,选择用于上述模块间通信的模块间通信部,
上述控制模块和上述被控制模块中的至少一个,根据从该控制模块或被控制模块的外部提供的模块间通信控制信息,对上述模块间通信部选择部指示选择模块间通信部。
由此,根据从控制模块或被控制模块的外部提供的模块间通信控制信息,选择用于模块间通信的通信方式。因此,能够生成并使用隐蔽了关于通信顺序的处理的模块化程序。
根据本发明,能够容易地通过根据模块间通信控制信息而灵活地选择通信方式,实现不变更模块化程序地进行再利用。
附图说明
图1是表示本发明实施方式的模块执行装置的结构的框图。
图2是表示本发明实施方式的模块执行装置的模块间通信动作的流程图。
具体实施方式
模块执行装置,例如在具有处理器和存储器的计算机中安装操作系统和被模块化的模块化程序等而构成,进行由这些模块化程序所指示的处理。
更具体而言,模块执行装置100例如具有如图1所示的功能性结构。
控制模块101、102和被控制模块103、104,通过分别被生成并执行(通过载入并启动模块化程序),从而进行预定的处理。处理内容并没有特别限定,但是例如在模块执行装置100应用于电视机、视频录像装置的情况下,控制模块101、102在各自的装置中进行专用的处理,另一方面,被控制模块103、104在这些装置中使用公共的模块化程序进行MPEG2或MPEG4处理等。
此处,作为模块实现方式,例如能够使用多线程系统中的线程、多任务系统中的任务等。
另外,示出了控制模块和被控制模块的区别是生成侧和被生成侧的关系。但是该区别是相对的,因此,例如被控制模块还可以作为控制模块而生成其他被控制模块。
模块管理部105管理被控制模块103、104的生成等,例如,根据来自控制模块101、102的被控制模块生成指示,生成被控制模块103、104。另外,此时,指示通信标识符设定部106、107生成用于控制在模块101、102和被控制模块103、104之间的模块间通信的通信标识符(模块间通信控制信息)。上述通信标识符,例如由用于指定通信对方的模块的模块编号和执行该模块的处理器的处理器编号构成(在本实施方式中,说明模块执行装置和处理器1∶1相对应的情况)。上述处理器编号在本实施方式中,除了按字面指定处理器之外,还如后述那样被用作为指示使用通信部109、110的哪一个(使用多种通信方式中的哪一种通信方式)的信息。
通信标识符设定部106、107根据来自上述模块管理部105的指示生成通信标识符,对各模块101~104进行设定(能够参照各模块进行)。具体而言,例如使之存储在能够参照各模块101~104的存储区域中。
通信选择部108根据与通信数据一起由各模块101~104提供的通信标识符,选择通信部109、110。
通信部109、110进行各模块间的通信处理。更详细而言,通信部109进行从模块执行装置100的模块101~104至其他模块执行装置200的控制模块201的通信(处理器间通信)。另一方面,通信部110进行模块执行装置100内的模块101~104间通信(处理器内通信)。
上述模块管理部105、通信标识符设定部106、107、通信部选择部108、以及通信部109、110,例如能够作为操作系统的功能而使用通常提供的处理(被控制模块的生成处理、通信处理等)。
此处,图1所示的模块执行装置200仅描绘了控制模块201和通信部209,但也可以是与模块执行装置100同样地构成的装置,还可以是以预先在模块化程序等中指定的通信方法进行通信而构成的装置。即,构成为能够与模块执行装置100中的各模块进行通信即可。
说明如上述那样地构成的模块执行装置100的动作。
(由控制模块101进行的被控制模块103的生成)
例如,当控制模块101对模块管理部105指示生成被控制模块103时,模块管理部105载入并启动与指示相对应的模块化程序,生成被控制模块103。
模块管理部105,还将所生成的被控制模块103的模块编号和模块执行装置100的处理器编号通知给通信标识符设定部106,另一方面,将控制模块101的模块编号和模块执行装置100的处理器编号通知给通信标识符设定部107。因此,通信标识符设定部106、107分别对模块101、103设定由上述模块编号和处理器编号构成的通信标识符。
如上述那样生成的被控制模块103由控制模块101控制进行预定处理,将处理结束响应等返回控制模块101。这些控制和响应通过模块间通信来实现。
(从控制模块101到被控制模块103等的通信)
上述模块间通信,例如在从控制模块101到被控制模块103进行通信的情况下,如图2和下述那样进行。
(S101)
控制模块101例如取得在生成被控制模块103时由通信标识符设定部106设定的通信标识符、即由被控制模块103的模块编号和模块执行装置100的处理器编号构成的通信标识符,与通信数据一起传送至通信选择部108。
(S102)
通信选择部108从通信标识符提取模块编号和处理器编号。
(S103)
通信选择部108还判断提取出的处理器编号是否为模块执行装置100自身的处理器编号。
(S104)
在通信对方为被控制模块103的情况下,处理器编号一致,因此通信部选择部108选择通信部110(处理器内通信),对所选择的通信部110传送模块编号和通信数据。
(S105)
通信部110利用处理器内通信对由模块编号所示的被控制模块103等发送通信数据。
另一方面,控制模块101生成由其他处理器执行的被控制模块,在与该被控制模块进行通信的情况下,在上述(S103)判断为处理器编号不一致,因此进行以下处理。
(S106)
通信部选择部108选择通信部109(处理器间通信),对所选择的通信部109发送模块编号、处理器编号和通信数据。
(S107)
通信部109利用处理器间通信对由处理器编号和模块编号所示的处理器的被控制模块发送通信数据。
如上所述,即使未特别涉及通信方式、通信对方地生成控制模块101的生成源的模块化程序本身,通过基于由通信标识符设定部106设定的通信标识符进行通信处理,也能够适当地进行与被控制模块103等的通信。
另外,控制模块101在与由该控制模块101生成的被控制模块103进行通信时,仅取得由通信标识符设定部106设定的通信标识符即可,不需要参照如日本特开平8-339356号公报所示那样的关于全部任务的任务表格,因此能够降低检索时间和处理负荷,容易实现处理的高速化。另外,也不会导致使用存储器量的增加。
(从被控制模块103至控制模块101的通信等)
从被控制模块103至控制模块101的通信,也同样地根据由通信标识符设定部107设定的通信标识符,由通信部选择部108选择通信部110,利用处理器内通信进行至控制模块101的通信。即,仍然是即使未特别涉及通信方式、通信对方地生成被控制模块103的生成源的模块化程序本身,通过基于由通信标识符设定部107设定的通信标识符进行通信处理,也能够适当地进行与控制模块101的通信。
因此,例如在根据与成为上述被控制模块103的生成源相同的模块化程序,控制模块102生成被控制模块104,该被控制模块104与控制模块102进行通信的情况下,仍然是同样地根据由通信标识符设定部107设定的通信标识符适当地进行通信。
进一步,例如在其他模块执行装置200内的控制模块201在模块执行装置100内生成被控制模块的情况下,对被控制模块设定由控制模块201的模块编号和模块执行装置200的处理器编号构成的通信标识符,由此,仍然是适当地进行从该被控制模块对经由通信部109的控制模块201的通信。
因此,即使在由相同或不同的模块执行装置中的各种控制模块生成被控制模块的情况、或使用各种通信方式等情况下,也不必在意实际的通信对方和通信方式而生成具有相同的通信顺序的被控制模块用的模块化程序(不变更关于通信处理的记述),并且能够被公共地使用,因此,能够容易地在同一设备内和多个设备间使已模块化的模块化程序的再利用性提高。另外,也能够容易地使之灵活应对系统结构的变更。
另外,如上述那样地由通信标识符设定部107设定通信标识符的模块,即,例如成为被控制模块103的通信对方的模块,仅限于生成该控制模块103的控制模块101的情况下,能够不需要任务表格的检索而容易谋求处理负荷的减轻和处理的高速化。
在上述的说明中,示出了通信方式为处理器间通信和处理器内通信的这两种例子,但不限于此,也可以选择性地使用依照多种接口和协议的处理器内通信和处理器间通信。即,在同一处理器内或处理器间,在根据各种条件决定(变更)通信方法等情况下,仍然能够不变更关于通信处理的记述地使用已模块化的模块化程序,由此能够使独立性和再利用性提高。
另外,示出了通信标识符由通信对方的模块编号和处理器编号构成、由处理器编号选择通信方式的例子,但不限于此,也可以在通信标识符中包含指示直接通信方式的信息。
另外,例如也可以在通信标识符中包含处理器编号和通信方式编号,用处理器编号指示处理器间通信或处理器内通信,并且用通信方式编号指示各种通信中的通信方式。另外,也可以用通信方式编号来指示处理器间通信或处理器内通信与通信方式的组合。
进一步,例如在为单个的处理器等情况下,以处理器内通信为前提,也可以在通信标识符中不包含处理器编号。
另外,为了便于说明,说明了模块执行装置和处理器1∶1相对应的情况,但不限于此,例如也可以使用1个模块执行装置由相同种类或不同种类的处理器构成的多处理器结构。
另外,示出了在被控制模块生成时设定通信标识符的例子,但也可以在预先判断所生成的被控制模块等情况下,在系统构成时等设定通信标识符等。
工业可利用性
本发明的模块间通信装置根据模块间的通信控制信息灵活地选择通信方式,具有能够不变更模块化程序地容易地进行再利用的效果,作为进行控制模块和由上述控制模块生成并控制的被控制模块间的模块间通信的模块间通信装置等是有用的。
Claims (7)
1.一种模块执行装置,其特征在于,包括:
模块执行部,执行控制模块和通过执行上述控制模块而生成的被控制模块中的至少一个;
多种模块间通信部,进行上述控制模块和上述被控制模块间的模块间通信;以及
模块间通信部选择部,选择用于上述模块间通信的模块间通信部,
上述控制模块和上述被控制模块中的至少一个,根据从上述控制模块或被控制模块的外部提供的模块间通信控制信息,对上述模块间通信部选择部指示选择模块间通信部。
2.根据权利要求1所述的模块执行装置,其特征在于:
在控制模块生成被控制模块时,生成依照上述控制模块和被控制模块间的通信的模块间通信控制信息。
3.根据权利要求2所述的模块执行装置,其特征在于:
每次控制模块生成被控制模块时,生成依照从上述控制模块至被控制模块的通信的模块间通信控制信息,上述控制模块能够与该控制模块生成的多个被控制模块进行通信。
4.根据权利要求2所述的模块执行装置,其特征在于:
在控制模块生成被控制模块时,生成依照从上述被控制模块至控制模块的通信的模块间通信控制信息,上述被控制模块能够与生成该被控制模块的控制模块进行通信。
5.根据权利要求1所述的模块执行装置,其特征在于:
上述多种模块间通信部包括进行由相同处理器执行的模块间的通信的模块间通信部,和进行由彼此不同的处理器执行的模块间的通信的模块间通信部,
上述模块间通信控制信息包含指示执行通信对方的模块的处理器的处理器指定信息,
根据上述处理器指定信息,选择模块间通信部。
6.根据权利要求1所述的模块执行装置,其特征在于:
上述模块间通信控制信息包括指定通信对方的模块的模块指定信息,和指示执行上述通信对方的模块的处理器的处理器指定信息,根据上述模块间通信控制信息,进行上述控制模块和上述被控制模块间的模块间通信。
7.一种记录介质,记录有指示控制模块的处理内容或由上述控制模块的执行而生成的被控制模块的处理内容的模块化程序,
其中,上述模块化程序根据从上述控制模块或被控制模块的外部提供的模块间通信控制信息,选择用于上述控制模块和被控制模块间的模块间通信的模块间通信方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006291373A JP2008108123A (ja) | 2006-10-26 | 2006-10-26 | モジュール実行装置、およびモジュール化プログラム |
JP291373/2006 | 2006-10-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101169745A true CN101169745A (zh) | 2008-04-30 |
Family
ID=39330036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007101674694A Pending CN101169745A (zh) | 2006-10-26 | 2007-10-25 | 模块执行装置及模块化程序 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20080101349A1 (zh) |
JP (1) | JP2008108123A (zh) |
CN (1) | CN101169745A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104112215A (zh) * | 2013-04-22 | 2014-10-22 | 腾讯科技(深圳)有限公司 | 一种奖励发放的方法、装置及系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105528256B (zh) * | 2015-12-30 | 2018-11-23 | 北京宇航系统工程研究所 | 航天装备培训系统主程序与多媒体课件间的通信控制方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2753123B2 (ja) * | 1990-08-28 | 1998-05-18 | 富士通株式会社 | 制御モード選択式通信コントローラ |
US5909368A (en) * | 1996-04-12 | 1999-06-01 | Fisher-Rosemount Systems, Inc. | Process control system using a process control strategy distributed among multiple control elements |
US6981034B2 (en) * | 1999-06-30 | 2005-12-27 | Nortel Networks Limited | Decentralized management architecture for a modular communication system |
CN102043446A (zh) * | 2002-10-22 | 2011-05-04 | 贾森·A·沙利文 | 用于提供动态模块处理单元的系统及方法 |
US20050033809A1 (en) * | 2003-08-08 | 2005-02-10 | Teamon Systems, Inc. | Communications system providing server load balancing based upon weighted health metrics and related methods |
US20050125792A1 (en) * | 2003-12-08 | 2005-06-09 | Che-An Chang | Software materialization platform and an artificial neuron computer system |
US7827557B2 (en) * | 2004-03-24 | 2010-11-02 | Hewlett-Packard Development Company, L.P. | Method and apparatus for allocating resources to applications using a linearized objective function |
-
2006
- 2006-10-26 JP JP2006291373A patent/JP2008108123A/ja active Pending
-
2007
- 2007-09-20 US US11/902,231 patent/US20080101349A1/en not_active Abandoned
- 2007-10-25 CN CNA2007101674694A patent/CN101169745A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104112215A (zh) * | 2013-04-22 | 2014-10-22 | 腾讯科技(深圳)有限公司 | 一种奖励发放的方法、装置及系统 |
WO2014173105A1 (en) * | 2013-04-22 | 2014-10-30 | Tencent Technology (Shenzhen) Company Limited | Systems and methods for reward issuance |
CN104112215B (zh) * | 2013-04-22 | 2019-04-09 | 腾讯科技(深圳)有限公司 | 一种奖励发放的方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
JP2008108123A (ja) | 2008-05-08 |
US20080101349A1 (en) | 2008-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100446942C (zh) | 一种模块化嵌入式多足机器人运动控制器 | |
US6757568B2 (en) | Automation system for merging automation components | |
US6807461B2 (en) | Coordinated robot control from multiple remote instruction sources | |
US4510568A (en) | Graphic processing method | |
CN101923490B (zh) | 作业调度设备和作业调度方法 | |
US20190179290A1 (en) | Process design device, procedure generation device, method of controlling process design device, and recording medium | |
US20100274385A1 (en) | Control system for controlling an industrial robot | |
JPH03125202A (ja) | 自動装置の制御装置 | |
CN107942797A (zh) | 基于sopc的嵌入式双核伺服控制器及其设计方法 | |
JP2010105150A (ja) | ロボットコンポーネント管理装置及び方法 | |
CN101169745A (zh) | 模块执行装置及模块化程序 | |
CN110114732A (zh) | 可编程控制器、管理装置和控制系统 | |
US6490520B2 (en) | Vehicle-mounted information processing device and storage medium | |
Lefebvre et al. | A computer architecture for intelligent machines | |
US9454142B2 (en) | Method for operation of an automation device | |
JP2006301733A (ja) | 工作機械、工作機械システムおよびそれらの制御方法 | |
CN108088435A (zh) | 一种识别触控的导航方法及装置 | |
CN102156448A (zh) | 控制操纵器的方法和装置 | |
Sanderson et al. | Context-aware plug and produce for robotic aerospace assembly | |
US7653521B2 (en) | Method for projecting and/or configuring a project | |
Xuemei | Study on control system architecture of modular robot | |
Li et al. | Software protocol design: Communication and control in a multi-task robot machine for ITER vacuum vessel assembly and maintenance | |
JP2761788B2 (ja) | プログラム変換装置及びプログラム転送装置 | |
Moyne et al. | An integrated distributed software system for reconfigurable manufacturing | |
JPH0223434A (ja) | マルチタスクトレース方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080430 |