CN1860442A - 用于注册连接的系统和方法、计算机可读媒体和自动设备 - Google Patents

用于注册连接的系统和方法、计算机可读媒体和自动设备 Download PDF

Info

Publication number
CN1860442A
CN1860442A CNA2004800046762A CN200480004676A CN1860442A CN 1860442 A CN1860442 A CN 1860442A CN A2004800046762 A CNA2004800046762 A CN A2004800046762A CN 200480004676 A CN200480004676 A CN 200480004676A CN 1860442 A CN1860442 A CN 1860442A
Authority
CN
China
Prior art keywords
interface
module
software module
arrangement
modules
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
Application number
CNA2004800046762A
Other languages
English (en)
Inventor
A·J·N·范布里门
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1860442A publication Critical patent/CN1860442A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/028Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Stored Programmes (AREA)
  • Manipulator (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

本发明公开了用于监控材料处理系统的改进的系统和方法,其中该材料处理系统包括一个处理工具、连接到处理工具以生成并传送电数据的若干RF响应电传感器、配置为从若干RF响应电传感器接收电数据的传感器接口集合(SIA)。

Description

用于注册连接的系统和方法、 计算机可读媒体和自动设备
技术领域
本发明涉及用于在第一软件模块和第二软件模块之间注册连接的系统。
本发明进一步涉及用于在第一软件模块和第二软件模块之间注册连接的方法。
本发明进一步涉及一种计算机可读媒体,其中存储了用于使一个或更多处理单元执行上述方法的指令。
本发明进一步涉及包括上述系统的一个自动设备。
背景技术
EP0940747中公开了上述系统和方法的一个实施例。其中公开了在程序运行的过程中,可以通过系统管理器添加、改变或移动软件系统的种类。至此,包括了有关模块化计算机系统中的模块中的子系统的信息。类是一种软件结构,其包括了一个或多个属性以及用于操作上述属性的方法。子系统是类的实例,其提供了明确定义的功能。其它子系统可以使用由该子系统提供的接口,以使用其功能。模块是包含了一个或更多子系统的软件实体。模块是可动态地链接的实体。模块由系统管理器在内部使用。当下载了一个模块时,系统管理器调用该模块以得到关于该模块包含了哪个子系统的信息。当需要一个子系统时,发送一个请求到系统管理器,以找到需要的子系统的位置。系统管理器找到了包含该子系统的模块,命令该模块启动该子系统,并返回需要的子系统的位置。因而只要有需要就可以直接地使用子系统。直到需要找到下一个子系统时,才会需要系统管理器。然而,如果不存在相应于请求的子系统,系统管理器不能提供需要的子系统的位置,并且因而不能访问需要的子系统的接口。
发明内容
本发明的一个目标是根据在两个软件模块之间以改进的方式注册连接的开始段落,而提供一个系统。要实现上述目标,该系统的第一软件模块包括第一接口装置,并且该系统的第二软件模块包括第二接口装置;第一接口装置设定为连接到第二接口装置,并且第二接口装置设定为连接到第一接口装置;第一接口装置包括注册装置,该注册装置设定为将第二接口装置注册成要与其连接的一个接口;并且第二软件模块包括通知装置,其设定为将作为要与其连接的接口的第二接口装置的可用性的改变通知给第一接口装置。
软件模块是用于实现功能性的各个段的构件块。例如,软件模块可以实现例如传感器、激励器、图象算法、控制行为、状态计算机等功能性。软件模块可以作为操作系统中一个可执行的个体而启动。软件模块具有输入和/或输出接口以共享数据,并且其包含一个处理数据的算法。来自一个模块的接口可以连接到来自另一个模块的接口,因而在两个模块之间创建了连接。来自一个模块的接口可以连接到不同模块的不同接口。通过在每个接口中注册它可以连接的接口,接口自身具有哪些接口能够与其连接的信息。因此,接口本身可以被通知关于能够与其连接的接口的可用性的改变。然后接口可以根据通知消息的内容采取合适的行动。
在权利要求2中描述了根据本发明的系统的一个实施例。仍然是通过注册已建立了连接的接口,软件模块能够明了期望与其建立连接的接口,以及已经建立了连接的接口。因此,软件模块会具有是否至今已建立了其所有的连接的信息。
权利要求3中描述了根据本发明的系统的另一个实施例。通过包括关于期望与其建立连接的一个接口的创建的信息,被通知的接口可以采取适合的行动,如创建一个到已创建的接口的连接。而且,通过包括关于已建立连接的接口的消除的信息,被通知的接口对于该事件采取合适的行动。例如,被通知的接口可以关闭该连接,并且将被消除的接口注册到要连接的接口的注册中。此外,在重新创建被消除的接口的情况下,可以要求包含该被消除的接口的软件模块添加到该软件模块的注册中,作为要被通知的接口。
本发明的另一个目标是根据在两个软件模块之间以改进的方式注册一个连接的开始段落,而提供一个方法。要实现上述目标,该方法的第一软件模块包括第一接口装置,并且该方法的第二软件模块包括第二接口装置;第一接口装置设定为连接到第二接口装置,并且第二接口装置设定为连接到第一接口装置;该方法进一步包括,通过第一接口装置,将第二接口装置注册成要与其连接的一个接口;通过第二软件模块,将作为一个接口要与其连接的第二接口装置的可用性的改变通知给第一接口装置。
在权利要求5和权利要求6中描述了该方法的实施例。
附图说明
通过参照下面附图所示的实施例,本发明的上述和其它方面会非常明显。
附图1示意性地示出了一个模块结构;
附图2示出了注册一个软件模块的方法步骤;
附图3示出了创建一个模块的方法步骤;
附图4示出了创建一个连接接口的方法步骤;
附图5以示意性的方式示出了根据本发明的系统的主要部分。
具体实施方式
模块是计算机可读代码,其共同形成了用于实现功能性的各个段的构件块。例如,软件模块可以实现传感器、激励器、图象算法、控制行为、状态计算机、自动设备等。模块是独立的软件程序,其可以相对于在例如一个自动设备中的其它模块而异步地运转。操作系统可以提供模块所需的资源,例如处理器时间和存储器。软件模块可以作为操作系统中一个可执行的个体而启动。此外,模块可以与其它模块相对独立地执行。
附图1示意性地示出了一个模块结构。模块100包括输出接口104,模块102包括输入接口106以及输出接口108。模块100的输出接口104通过连接110连接到模块102的输入接口106。彼此连接的输入接口和输出接口共享数据。模块包含处理该数据的算法。如果接口的属性匹配,在运行时间内接口可以彼此连接。接口具有以下的属性:接口类型、数据类型、缓冲类型和触发类型。
-接口类型:有三种类型的接口。第一种类型是输入接口。该接口用于从其它模块读出数据。第二种类型是输出接口。该接口用于向其它模块写入数据。从该接口的读出和写入是异步进行的。也就是说,如果一个模块向另一个模块写入数据,它不会等到数据已经被接收,相反它会继续执行其算法。第三种类型是双向接口,从中可以读也可以写。第三种类型允许同步通信。
-数据类型:接口优选为只支持一种数据类型。共享相同数据类型的接口可以彼此连接。不同的数据类型,例如字符串、字节、整数和浮点数、或者上述类型的阵列等可以在该结构中使用。
-缓冲类型:由于输入接口和输出接口可以异步运转,可以将数据发送到输出接口,而其还没有正在读取。因此,缓冲类型是由接口定义的。第一种缓冲类型是“保持最新”缓冲,其存储已到达的新数据项目,并且移除旧的数据。第二种缓冲类型是“保持最先”缓冲,其保持最先未经读取的数据项目,并且移除最新到达的数据项目。第三种缓冲类型是“保持全部”缓冲,其存储所有接收并未读取的数据项目。
-触发类型:有两种类型的机制来触发接口之间数据的传送。第一种机制是推送机制(push mechanism)。当模块的算法执行写操作时,推送输出接口将数据直接传送到与其连接的推送输入接口。这在所连接的模块的输入接口处生成了一个外部事件。第二种是机制是拉出机制(pull mechanism)。当模块的算法执行读操作时,拉出输入接口发送对于新数据的请求到其连接的拉出输出接口。这样在与其连接的模块的输出接口生成了一个外部事件。推送/拉出输入接口和推送/拉出输出接口之间的所有组合都是允许的。然而,对于推送输入接口和拉出输出接口的组合来说,没有能够初始传送数据的接口。
在不背离本发明内容的情况下,接口还可以具有更多(或更少)的不同类型的属性。
每个接口都可以连接到多个其它接口。例如,如果一个输出接口连接到多个输入接口,那么输入接口接收正在传送的数据的拷贝。
附图2示出了注册软件模块的方法步骤。如上所述,模块是一个独立的程序。因此,为了使模块彼此连接,模块和接口可以“找到”彼此。这是通过给模块和接口一个唯一的名字并且使用注册处来完成的。该注册处是一个程序,其保持所有运行模块的名字的一个列表。在第一步骤S200中,创建了模块A,并将其名字和附加信息例如其程序标识发送到注册处以被注册。一旦注册了该模块,其可以通过名字搜索其它模块。模块A包含输出接口oA,其希望连接到另一个模块B的输入接口iB。现在,在步骤S202中,模块A向注册处询问具有模块名B的其它模块的程序标识。在具有名字B的模块不可用的情况下,方法进行到步骤S204。在具有名字B的模块可用的情况下,方法进行到步骤S206。
在步骤S204中,模块A要求注册处,以注册在注册处的通知列表中,以便在创建模块B时接收到通知。通知列表包括一个表格,其具有需要通知的模块的名字,以及需要向其发送创建通知的模块的名字。例如:
  要通知的模块   对于下面模块的创建
  模块A   模块B
  模块X   模块Y
其它表格或集合也是可以考虑的,例如根据需要通知的模块的集合或根据创建的模块的集合。
在步骤S206,模块A要求模块B连接到输入接口iB。在输入接口iB不可用的情况下,方法进行到步骤S208。在输入接口iB可用的情况下,方法进行到步骤S210。
在步骤S208中,模块A要求模块B在模块B的通知列表中注册,以在输入接口iB创建时,接收一个通知。模块B将模块A的名字注册到其通知列表中。该通知列表包括在创建或移除一个接口的情况下,需要通知的所有模块的名字。通知列表包括需要通知的模块名字和被创建或移除的接口的映射。通知列表还可以是按照需要通知的模块名字的接口的集合。此外,输出接口oA注册其到输入接口iB的连接还未建立。
在步骤S210中,建立模块A的输出接口oA和模块B的输入接口iB之间的连接。输出接口oA还包括已与其建立连接的接口的名字的一个列表,并将输入接口iB添加到该“已建立”列表中。输入接口iB随后与还不能建立连接的接口一起,从输出接口oA的该列表中移除。而且,输入接口iB具有其自己的“已建立”列表,并且将输出接口oA作为已建立连接的一个接口,添加入该列表。
附图3示出了模块创建的方法步骤。在步骤S300中,模块A试图建立到模块B的输入接口iB的一个连接。然而,由于模块B还没有在注册处注册,模块A被添加到该注册处的通知列表,以便在创建模块B时通知模块A。
在步骤S302中,启动模块B,并在注册处注册模块B。注册处用模块B的模块名和其程序标识注册模块B。
在接下来的步骤S304中,注册处检查其通知列表,并且将模块B的创建通知给模块A。
在步骤S306中,模块A请求模块B连接到输入接口iB。在输入接口iB不可用的情况下,方法如上所述进行到步骤S208。在输入接口iB可用的情况下,方法如上所述进行到步骤S210。
附图4示出了创建一个连接接口的方法步骤。在步骤S400中,模块A试图在模块A的输出接口oA和模块B的输入接口iB之间建立一个连接。模块A向注册处请求模块B的程序标识,而且模块A接收注册处的该程序标识。通过使用该标识,模块A要求模块B建立一个到输入接口iB的连接。然而,输入接口iB还没有创建,而且模块B将模块A添加到模块B的通知列表,以便在创建输入接口iB时通知模块A。
在步骤S402中,模块B创建名为iB的一个输入接口。模块B检查其通知列表,并通知模块A已创建了输入接口iB。
在下一个步骤S404中,模块A的输出接口oA请求模块B的输入接口iB建立一个连接。
在下一个步骤S210中,执行如上所述的,并且在输出接口oA和输入接口iB之间建立一个连接。
对于一个模块的接口的消除的注册,模块和注册处也具有一个通知列表。模块的“消除”通知列表明了对于模块的接口的消除而要通知的所有模块。注册处的“消除”通知列表明了如果一个模块停止执行时,则需要通知的所有模块。
当前发明的方法的所述实施例的顺序并不是必须遵循的,本领域技术人员能够在不背离当前发明所示的内容的情况下,改变步骤的顺序,或并行地使用穿线模型、多处理器系统或多个程序执行步骤。
附图5以示意的方式示出了根据本发明的系统的主要部分。系统500包括微处理器502、软件总线504和存储器506。存储器508可以是随机存取存储器(RAM)。存储器506通过软件总线504与微处理器502通信。存储器506包括计算机可读代码508、510、512、514、516和518。计算机可读代码508被设计为一个软件模块,其能够实现运动传感器的功能。计算机可读代码514被设计为一个软件模块,其能够实现响应所感应的运动而产生反应的功能。该反应可以是运动、警报等。计算机可读代码510被设计成实现如上所述的一个输出接口的功能。计算机可读代码512被设计成实现注册还未建立连接的接口的功能。此外,计算机可读代码512被设计成实现注册已建立连接的接口的功能。计算机可读代码516被设计成实现如上所述的一个输入接口的功能。计算机可读代码518被设计成实现将模块注册的功能,在如上所述一个接口可用的情况下,该模块必须被通知。系统500包括在自动设备520中。
值得注意的是上述实施例旨在解释而不是限定本发明,本领域的技术人员能够在不背离附加的权利要求的范围的情况下,设计很多可选实施例。在权利要求中,位于圆括号中的任何附图标记都不能解释为限定该权利要求。词语“包括”并不排除权利要求中所列之外的部件或步骤的存在。在某个部件之前的词语“一个”并不排除多个该部件的存在。本发明可以通过包括若干各别的部件的硬件实现,也可以通过适合的程序控制的计算机实现。在系统中权利要求列举了若干装置,上述装置中的个别装置可以由计算机可读软件或硬件的一个和相同项目实现。仅仅凭彼此不同的从属权利要求叙述特定方法的事实,并不代表着不能有效地使用上述方法的组合。

Claims (8)

1.一种用于在第一软件模块(508)和第二软件模块(506)之间注册一个连接的系统(500),其中:
第一软件模块(508)包括第一接口装置(510),而且第二软件模块(506)包括第二接口装置(516),第一接口装置(510)设定为连接到第二接口装置(516),并且第二接口装置(516)设定为连接到第一接口装置(510);
第一接口装置(510)包括注册装置(512),其设定为将第二接口装置(516)注册为要与其连接的一个接口;并且
第二软件模块(506)包括通知装置(508),其设定为将作为要与其连接的接口的第二接口装置(516)的可用性的改变通知给第一接口装置(510)。
2.根据权利要求1的系统(500),其中第一接口装置(510)的注册装置(512)被设定为将第二接口装置(516)注册为与其已建立连接的一个接口。
3.根据权利要求1的系统(500),其中第二接口的可用性表示第二接口装置(516)的创建或第二接口装置(516)的消除。
4.一种在第一软件模块(508)和第二软件模块(506)之间注册一个连接的方法,其中:
第一软件模块(508)包括第一接口装置(510),而且第二软件模块(506)包括第二接口装置(516),第一接口装置(510)设定为连接到第二接口装置(516),并且第二接口装置(516)设定为连接到第一接口装置(510);并且该方法包括
由第一接口装置(510)将第二接口装置(516)注册成要与其连接的一个接口;
由第二软件模块(506)将作为要与其连接的接口的第二接口装置(516)的可用性的改变通知给第一接口装置(506)。
5.权利要求4所述的方法,该方法包括,由第一接口装置(510)将第二接口装置(516)注册为与其已建立连接的一个接口。
6.权利要求4所述的方法,其中第二接口的可用性表示第二接口的创建或第二接口的消除。
7.一个计算机可读媒体,其中存储的指令可以促使一个或更多处理单元执行权利要求4至6中的任一个所述方法。
8.一种自动设备(520),包括权利要求1至3中任一个所述的系统(500)。
CNA2004800046762A 2003-02-20 2004-02-09 用于注册连接的系统和方法、计算机可读媒体和自动设备 Pending CN1860442A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03100398.1 2003-02-20
EP03100398 2003-02-20

Publications (1)

Publication Number Publication Date
CN1860442A true CN1860442A (zh) 2006-11-08

Family

ID=32892959

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2004800046762A Pending CN1860442A (zh) 2003-02-20 2004-02-09 用于注册连接的系统和方法、计算机可读媒体和自动设备

Country Status (6)

Country Link
US (1) US20060150179A1 (zh)
EP (1) EP1627306A2 (zh)
JP (1) JP2006518509A (zh)
KR (1) KR20050106442A (zh)
CN (1) CN1860442A (zh)
WO (1) WO2004074970A2 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1729213A1 (en) * 2005-05-30 2006-12-06 Honda Research Institute Europe GmbH Development of parallel/distributed applications
JP5177082B2 (ja) * 2009-06-02 2013-04-03 株式会社デンソー 開発支援装置,プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6684261B1 (en) * 1993-07-19 2004-01-27 Object Technology Licensing Corporation Object-oriented operating system
GB0004194D0 (en) * 2000-02-22 2000-04-12 Nat Power Plc System and method for monitoring a control process in a process plant

Also Published As

Publication number Publication date
JP2006518509A (ja) 2006-08-10
WO2004074970A2 (en) 2004-09-02
KR20050106442A (ko) 2005-11-09
US20060150179A1 (en) 2006-07-06
EP1627306A2 (en) 2006-02-22
WO2004074970A3 (en) 2005-12-01

Similar Documents

Publication Publication Date Title
CN1276362C (zh) 用于多处理器系统中的片上数据传输的方法和系统
JP5042454B2 (ja) 受信コンピューティングシステムのための方法とコンピュータプログラム、およびコンピューティングシステム
CN1818882A (zh) 容错系统、其中所用的控制装置、访问控制方法及控制程序
CN1561493A (zh) 多节点系统中硬件事件的聚集
CN1757021A (zh) 设备管理方法及设备管理系统
CN101055546A (zh) 用于处理i/o地址转换高速缓存未命中的方法和系统
WO2019021668A1 (ja) 車両制御装置
WO2010143686A1 (ja) 自動車用制御システム及び電子制御ユニット
CN113849449A (zh) 一种通信系统和信息交互方法、设备和介质
CN1860442A (zh) 用于注册连接的系统和方法、计算机可读媒体和自动设备
US20050256998A1 (en) Bus bridge device
CN1464415A (zh) 一种多处理器系统
CN1433616A (zh) 用于实现网络中的叶节点代理的方法和装置
EP1369784A2 (en) Computer system failure handling
CN1627705A (zh) 强制设置防毒软件的方法、网络系统及存储媒体
CN1278210C (zh) 信息处理设备、键盘控制器以及键输入确定方法
US7251248B2 (en) Connection device
CN1414489A (zh) 与对接系统总线连接的基本系统及其控制方法
CN1391386A (zh) 一种多任务操作系统中任务进程的保护方法
JP2812274B2 (ja) 疎結合多重計算機システムにおけるトランザクション負荷分散システム
US20240061689A1 (en) Asynchronous cancellation of requests for processing engines
JP3425885B2 (ja) メモリアクセス処理装置
CN1449616A (zh) 灵活快速通信的方法及装置
CN1234550A (zh) 加载/存储协助引擎
JP2853607B2 (ja) ジョブ間通信システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication