通信系统的制作方法

文档序号:6599364阅读:217来源:国知局

专利名称::通信系统的制作方法
技术领域
:本发明涉及一种通信系统。近年来,软件程序的研制上越来越多地采用一种新的编程技术,这种技术叫做目标侧重技术,它适用于软件开发从分析到编码的生存周期的所有阶段。这种技术采用的主要原理是,建立一些目标,这些目标是一些数据和一些根据这些数据起作用的功能的集合体,从而使下列一些情况成立a.各目标仅通过互通信息彼此进行通信。b.目标的使用者无需知道任何有关目标内部的执行程序,只需知道目标(通过接收有效信息)所能提供的服务。c.所选择的目标应该与处理中的问题有一定的关系。一般说来,侧重于目标的软件系统包含一些目标,这些目标是其软件待监控或控制的系统内各机构的概括。本简单的说明书不是想全面说明作为一项技术的目标侧重法,而是作为理解本发明的基础。虽然这里对目标下的定义是按软件的术语进行的,但我们也可以把目标视为软件与硬件的混合体,例如,给某一目标传递一个信息可能会产生影响受控制中的硬件状态的作用-目标的“软件”部分事实上仅仅是目标的“硬件”部分的接口机构。鉴于电信系统中的目标只借助于互通信息进行通信,因而在建立侧重于目标的系统时给体系结构方面提供了很大的灵活性。这就产生了这样的问题,即无论在单个进程中存在的各目标之间互通信息,在同一个机器的个别进程中存在的各目标之间互通信息,还是在各不同机器上的各目标之间互通信息,差别都不大。在各情况下,仅仅是互通信息的机构不同而已。这意味着,各目标、各进程和各机器三者之间再也不存在任何严密的关系。“进程”一词在软件领域中应用面极其普遍,它是指软件的那一个与同一机器中的其它进程同时进行的部分,就是说,各指令在一个进程中的执行与各指令在另一个进程中的开始执行或完成无关。这种同时性通常是采用多重任务操作系统来共用系统各进程之间的处理时间达到的。如果不提供这种共用机理,则每个机器只能有一个进程。侧重于目标的系统中,单个目标拥有多个使用者是常有的事。若一个目标的使用者是同一个进程内的一些目标,则不牵涉到同时性问题,而各信息是顺次到达的。若目标的使用者是不同进程中的一些目标,则必须考虑如何处理同时存取的问题。虽然下面只将提到各项进程,但进程一词确实也可适用于分布在一个以上的机器上的目标。上述问题原先是在采用一般的客户/服务单位模式的基础上提出的。在这个方法中,许多并行目标待使用的目标系配在其各自的进程中的,这个进程叫做服务单位进程。于是其它一些进程(现在叫做客户进程)可以将信息传递到服务单位进程中的目标,以便利用其性能。各项要求的同时性由服务单位进程接口处某些形式的排队机构处理,该排队机构是作为进程间信息传递机构的一部分而设的。虽然这种机构行得通,但却具在许多缺点a.服务单位进程的作用是通过串行化处理同时性问题的,即只将各信息排排队,逐次进行处理,实际上抛弃了试图达到的同时性。这方面的容许程度取决于所研究的实际系统,但在那些采用多重机器达到同时性的系统上,这种方案会增加各客户等待服务单位回应的闲置时间,从而达不到最佳的运行效能。b.信息在同一个进程内的各目标之间传递总是比在不同进程中各目标之间传递快得多。客户/服务单位法使系统不得不使用较慢的机构。若目标通信能尽量限制在一个进程中进行,则在运行效能方面取得很好的改进。c.一般说来,侧重于目标的设计会产生大量需要由许多不同的进程使用的目标。客户/服务单位法兼顾了两种极端的作法一种作法是把所有这些目标放进单个服务单位的进程中,另一种作法是把各目标放进自己的进程中。使用单个服务单位进程会使信息涌塞,从而使系统的运行慢到让服务单位实行排队轮候的服务方式那样的速度,而目标的数目通常是多到实际上因系统资源上的限制而不能将进程分派到各目标中的程度。在大系统中是不可能获得与所要求的系统运行效能相称的令人满意的折衷方案的。为解决上述(a-c)的问题,我们提出了本发明的共享目标模式。若各不同进程中的各目标想利用它们之间的另一个目标,则这个目标可视为共享目标。如果不建立一个服务单位进程,也可以在每一个想使用的进程中建立该共享目标的复制品。可以认为所有传递到该共享目标的信息都处在同一个进程中,此外,队列上的各信息不是串行化的,即保留了同性。这样做看起来极为理想,只是为使该共享目标成为共享目标,各进程中的各复制品必须完全相同。目标的特点在于其内部数据和其方法(根据到来的信息作用到其内部数据的功能)。目标的内部数据通常是不断变化的,是随时间而变的。目标的方法则是变化较小,通常在系统建立时(或更早的时间)就确定下来了的,且在系统的使用寿命中是不变的。因此复制共享目标时,必须保持一致的仅仅是内部数据而已。若在一个进程内使用的方法只引起对共享目标内部数据的读出操作。则没有问题。但如果方法起作用后促使内部数据发生变化,即引起书写操作,则必须改变共享目标的每一个复制品,以保持一致性。这只能通过进程之间互通信息实现。这时必须制定数据结构并维持这种结构,这个数据结构详细说明了目前应用共享目标的各进程。在其中一个进程修改共享目标的内部数据时,可以利用此数据表改造或更新其它进程所保存的复制品。同时性借助于共享目标的多重复制品保持下来,因而这种共享目标法解决了同时性的问题。进程之间互通信息的方式目前仍在使用,只是只有当共享目标法会使内部数据发生变化时才应用这个方式,所有其它方法则使用进程之间更快速的互通信息的方式。这一下就消除了各目标往各服务单位进程的分派问题和与此有关的运行效能问题。这并不是说,不应采用客户/服务单位模式,仍然有某些情况使用这种方式比共享目标法切合实际。另外,共享目标法也有一些潜在的缺点,即a.若许多进程共享一个目标,则必须保持大的数据表。(而在客户/服务单位方法中,这种情况就成了信息涌塞现象)。b.为确保始终如一地更新共享目标的内部状态,必须将目标加以闭锁,即确保不同时更新来自不同进程的数据。按照本发明的一个方面,本发明提供这样的一种通信系统操作法,其中当含有数据的目标位于系统的第一节点,且需要在系统的第二节点使用该目标时,就给第二节点提供该目标的复制品,并在一个表中建立识别该目标和有关第二节点的记录,而另一个或另一些系统节点也需要该目标时,该另一个或另一些节点也在该表中加以标记,从而在通过其中一个节点的操作来更新包含在该目标中的数据时,就根据在该表中保存的记录更新保存在所有其它节点的复制品。按照本发明的另一个方面,本发明提供一种通信系统操作装置,该系统包括多个系统节点和目标,各目标含有保存在至少某些节点上的数据,还包括存储装置和更新装置,存储装置用以将保存在其中一个节点的一个目标的复制品提供给多个节点的其中至少另一个节点和供以该复制品的一个或多个节点时进行记录,更新装置则用以借助于其中一个节点的操作更新该目标的复制品时根据存储装置中的记录更新保存在所有其它各节点的复制品。现在以实例说明本发明的内容。客户/服务单位法一般是在与某些形式的进程间通信(IPC)的客户和服务单位进程中采用为数不多的代码(有时叫做信息段)。客户进程中代码的用途纯粹是传达对服务单位进程中的目标作为传递给采用IPC机构的服务单位进程的信息的任何要求。IPC机构会将各信息在服务单位进程排排队,由服务单位进程中的小量代码读取该队列,并将各要求送往该目标,将它们加以处理。整个过程可以想象为一条管线,该管线从其一端输入来自一个或多个客户进程的各项要求,并在管线的另一端将这些要求传送给服务单位进程中合适的目标。全部处理这些要求(而不是仅仅只传送它)所需的活动是在服务单位进程中进行的。分享目标法的采用使客户/服务单位“流水线”的机构成了在进程内采用分享目标局部处理各项要求的机构。只有当这些要求修改共享目标的内部数据时才会利用进程之间的通信来确保目标的其它复制品跟上共享目标的变化。有待在一个系统中共享的目标必须在汇编时照此加以鉴定。这是通过确定想要显示该特性的各目标可继承的共享目标的类别达到的。每当建立一个共享目标时,在所要求的进程内就建立起该目标的复制品。若该目标是第一次建立的,则建立另外两个项目;该目标的数据其复制品是连同写入要求进程的标识符所在的用户表(used-bytable)在共用存储器中建立的。该共享目标其后由其它进程的建立促使在其内部数据会是存储在共用存储器中的数据的真正复制品的请求进程内建立该目标的复制品,用户表则用请求进程的ID(标识符)加以更新。共用存储器可以视为可从任何进程加以访问的全局数据区。每当提出关于共享目标的要求时,该要求就由进程局部加以处理。若该要求促使该共享目标的内部数据的修改,则更新共享目标数据的共用存储复制品以反映该变化。除此之外,还需要用经修改的共享目标给每一个其它的进程发送信号表明已发生了变化,使它们能使它们共享目标的各局部复制品与存储在共用寄存器中经修改的数据重新组合。这个信号发送的过程叫做更新广播(或BOU),它是利用用户表给所有作为共享目标的用户登记的所有进程发送信号。含有共享目标的各进程必须含有确保BOU信号必须引起必要的更新的BOU信号处理器。当然进程有可能在某时候再不需要共享某一目标。发生这种情况时,可从进程除去该共享的目标,并修改用户表,以删除各请求进程的标识。权利要求1.一种通信系统的操作方法,其中当含有数据的目标位于系统的第一节点,且需要在系统的第二节点使用该目标时,就给第二节点提供该目标的复制品,并在一个表中建立识别该目标和有关第二节点的记录,而另一个或另一些系统节点也需要该目标时,该另一个或另一些节点也在该表中加以标记,其特征在于,通过其中一个节点的操作来更新包含在该目标中的数据时,就根据保存在该表中的记录更新保存在所有其它节点中的复制品。2.如权利要求1所述的方法,其特征在于,所述目标用保存在该表中的目标复制品加以识别。3.如权利要求1或2所述的方法,其特征在于,该记录保存在共用存储器内。4.通信系统操作装置,该系统包括多个系统节点和目标,各目标含有保存在至少某些节点上的数据,其特征在于,它包括存储装置和更新装置,存储装置用以将保存在其中一个节点的一个目标的复制品提供给多个节点的其中至少另一个节点和供以该复制品的一个或多个节点时进行记录,更新装置则用以借助于其中一个节点的操作更新该目标的复制品时根据存储装置中的记录更新保存在所有其它各节点的复制品。5.如权利要求4所述的装置,其特征在于,所述存储装置包括用以存储所述目标的复制品的装置。6.如权利要求4或5所述的装置,其特征在于,所述存储装置包括共用存储器。全文摘要用客户/服务单位法来解决侧重于目标的系统中各目标有多重用户的问题是众所周知的事。本发明公开了另一种方法,即建立一个共享目标,将该共享目标复制出来分派给需要使用该目标的所有系统节点,并编制识别该存放该目标的复制品的诸节点的用户表。操作其中一个节点来更新该目标时,同时也就更新了该用户表所识别的复制品。文档编号G06F13/00GK1078336SQ9310124公开日1993年11月10日申请日期1993年1月30日优先权日1992年1月31日发明者S·J·阿特金斯,J·N·弗洛加特,L·W·帕克申请人:Gpt有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1