CN1298513A - 用于远程方法启用的方法和设备 - Google Patents
用于远程方法启用的方法和设备 Download PDFInfo
- Publication number
- CN1298513A CN1298513A CN99805490A CN99805490A CN1298513A CN 1298513 A CN1298513 A CN 1298513A CN 99805490 A CN99805490 A CN 99805490A CN 99805490 A CN99805490 A CN 99805490A CN 1298513 A CN1298513 A CN 1298513A
- Authority
- CN
- China
- Prior art keywords
- enable
- activated
- module constitutes
- enabled
- module
- 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/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/289—Object oriented databases
-
- 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/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- 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/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
- G06F9/548—Object oriented; Remote method invocation [RMI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/427—Loop networks with decentralised control
- H04L12/433—Loop networks with decentralised control with asynchronous transmission, e.g. token ring, register insertion
Abstract
使用通用代理类的远程方法启用。客户机发送启用一远程对象的一个方法的调用,包括用于该方法对象的标识符。服务器接收此标识符并使用通用码来启用该方法对象,而且返回被启用的方法的指示及任何相关参数。
Description
相关申请
依靠以下所述的美国专利申请,在本申请中完整地通过参考引入。
1998年2月26日提交的名为“分布式计算系统”的60/076,048号临时美国专利申请。
同一天提交的名为“租用存储器的方法和系统”的09/044,923号美国专利申请,其律师备案号为06502.0011-01000。
同一天提交的名为“租用分布式系统中的授权证书的方法、设备和产品”的09/044,838号美国专利申请,其律师备案号为06502.0011-02000。
同一天提交的名为“租用分布式系统中的分组成员的方法、设备和产品”的09/044,834号美国专利申请,其律师备案号为06502.0011-03000。
同一天提交的名为“在基于事件的系统中的传送行为的方法”的09/044,933号美国专利申请,其律师备案号为06502.0054-00000。
同一天提交的名为“分布式系统中的事件通知的对象和远程安装的延迟重构”的09/044,919号美国专利申请,其律师备案号为06502.00162-01000。
同一天提交的名为“识别远程方法的确定性散列方法和系统”的09/045,652号美国专利申请,其律师备案号为06502.0103-00000。
同一天提交的名为“确定分布式系统中的远程对象的状态的方法和设备”的09/044,790号美国专利申请,其律师备案号为06502.0104-00000。
同一天提交的名为“用于执行有关分布式系统中的远程过程调用处理的可下载智能代理”的09/044,930号美国专利申请,其律师备案号为06502.0105-00000。
同一天提交的名为“远程方法的挂起和继续”的09/044,917号美国专利申请,其律师备案号为06502.0106-00000。
同一天提交的名为“数据库中的多入口和多模板匹配的方法和系统”的09/044,835号美国专利申请,其律师备案号为06502.0107-00000。
同一天提交的名为“数据库中的原地修改的方法和系统”的09/044,839号美国专利申请,其律师备案号为06502.0108。
同一天提交的名为“数据库中的类型安全属性匹配的方法和系统”的09/044,945号美国专利申请,其律师备案号为06502.0109-00000。
同一天提交的名为“分布式系统中的动态查找服务”的09/044,931号美国专利申请,其律师备案号为06502.0110-00000。
同一天提交的名为“用于提供在与分布式系统中的一个装置进行通信时所使用的可下载代码的设备和方法”的09/044,939号美国专利申请,其律师备案号为06502.0112-00000。
同一天提交的名为“便于访问查找服务的方法和系统”的09/044,826号美国专利申请,其律师备案号为06502.0113-00000。
同一天提交的名为“用于动态地检验分布式系统中的信息的设备和方法”的09/044,932号美国专利申请,其律师备案号为06502.0114-00000。
同一天提交的名为“在一网络上进行动态分布式计算的方法和设备”的09/044,840号美国专利申请,其律师备案号为06502.0115-00000。
同一天提交的名为“持久性共享的存储空间的交互设计工具”的09/044,936号美国专利申请,其律师备案号为06502.0116-00000。
同一天提交的名为“基于多形态令牌的控制”的09/044,934号美国专利申请,其律师备案号为06502.0117-00000。
同一天提交的名为“基于堆栈的访问控制”的09/044,915号美国专利申请,其律师备案号为06502.0118-00000。
同一天提交的名为“基于堆栈的安全需求”的09/044,944号美国专利申请,其律师备案号为06502.0119-00000。
同一天提交的名为“安全需求的按方法指定”的09/044,837号美国专利申请,其律师备案号为06502.0120-00000。
技术领域
本发明涉及在分布式系统中的机器之间发送对象的系统和方法,尤其涉及在分布式系统中启用远程方法的方法。
背景技术
通常,可使用用于远程终端访问和文件传送的专用协议而充分有效地处理集中于点对点数据传输的分布式程序。这些协议是为特定程序而制作的,因此,它们不能提供建立各种分布式程序(例如,分布式操作系统、电子邮件系统、会议系统等)的基础。
虽然可把常规的传输服务用作建立分布式程序的基础,但这些服务表现出许多组织上的问题,诸如在不同的机器中使用不同的数据类型、缺乏同步的设施以及不能提供有限的编程范例。
分布式系统通常包含通过通信网络互连的许多不同类型的机器。每个机器有它自己的内部数据类型、它自己的地址对准规则以及它自己的操作系统。这种差异在建立分布式系统时产生了问题。结果,程序开发人员必须在为这种异构分布式系统所开发的程序中包括安排保证在不同机器上一致地处理和解释信息的能力。
然而,注意大部分程序使用进程(在该处,启动程序(即,启动通信的程序)被阻塞而等到响应被返回且在此时为空闲)之间的请求和响应交互,从而提供一个简化。这可以通过进程之间的过程调用机构来建模。一个这样的机构叫做远程过程调用(RPC)。
RPC是一种用于在同一机器或不同机器上运行的两个进程(例如,程序、小应用程序等)之间提供同步通信的机构。在一种简单的情况下,一进程(例如,一客户程序)把一消息发送给另一进程(例如,一服务器程序)。在此情况下,在发送或接收该消息时,这些进程都不需要同步。客户程序可发送消息,然后开始一个新的活动,或者服务器程序的环境可缓冲入局的消息,直到服务器程序准备好处理新的消息。
然而,RPC增加了同步约束,这是因为它在调用进程中紧密地对本地过程调用进行建模,这需要沿一个方向传送参数、阻塞调用进程直到完成服务器程序调用的过程、然后返回响应。因而RPC涉及两个消息传送以及调用持续时间内的两个进程的同步。
通常使用本地过程调用范例,以两个处理部分来实现RPC机构,一个部分位于客户一侧,另一部分在服务器一侧。以下将参考图1讨论这两部分。
图1是示出使用RPC机构的信息调用流程的图。如图1所示,客户程序100发出一调用(步骤102)。然后,RPC机构101把该调用打包成为调用包(packet)的自变量(argument)(步骤103),然后,RPC机构101把此包发送到服务器程序109(步骤104)。调用包还包含识别首先发送此调用的客户程序100的信息。在此调用包被发送(步骤104)后,RPC机构101进入等待状态,在此期间,它等待来自服务器程序109的响应。
服务器程序109的RPC机构108(当服务器程序109位于与客户程序100相同的平台上时,该RPC机构108可以是与RPC机构101相同的RPC机构)接收此调用包(步骤110),从调用包中拆开此调用的自变量(步骤111),使用调用信息来识别此调用所针对的服务器程序109,并把调用自变量提供给服务器程序109。
服务器程序接收此调用(步骤112),通过启用适当的过程来处理此调用(步骤115),以及把响应返回RPC机构108(步骤116)。然后,RPC机构108把此响应打包成一响应包(步骤114),并把它发送给客户程序100(步骤113)。
接收此响应包(步骤107)触发了RPC机构101退出等待状态,并从此响应包中拆开响应(步骤106)。然后,RPC 101响应于此调用把此响应提供给客户程序100(步骤105)。这是按照本地过程调用范例建模的典型RPC机构的处理流程。由于RPC机构使用本地过程调用范例,所以客户程序100在此调用处被阻塞,直到接收到一响应。因而,客户程序100在发送此调用后不继续它自己的处理;而是,等待来自服务器程序109的响应。
JavaTM编程语言是一种面向对象的编程语言,通常使用字节码指令集把这种语言编译成为可在支持Java虚拟机(JVM)的任何平台上执行的与平台无关的格式。例如,在James Gosling、Bill Joy和Guy Steele,Addison-Wesley的名为“Java语言规范”一文中描述了这种语言,在这里通过参考而引入。例如,TimLindholm和Frank Yellin、Addison Wesley在1996年的名为“Java虚拟机规范”的一文中描述了JVM,这里通过参考而引入。Java和基于Java的商标都是SunMicrosystems Inc.在美国和其它国家的商标或注册商标。
在面向对象的系统中,“类”提供了创建具有该类特性的“对象”(它代表系统所操纵的项或实例)用的模板。模板这一术语指每一类中的对象(即,数据项)共享该类所确定的某些特性或属性。因而,一类定义一对象的类型。通常,对象是在系统操作期间动态地创建的。一般,在同一类或子类的对象上启用(即,引起操作)与一类有关的方法。
由于可在任何类型的平台上实现JVM,所以使用JVM来实现分布式程序明显地减少了与开发异构分布式系统有关的难度。此外,JVM使用远程方法启用(RMI)系统,该系统使能系统的程序之间的通信。例如,在以下文档中说明了RMI,在这里通过参考而引入。Sun Microsystems,Inc.的远程方法启用规范(1997),它可通过全球资源定位器(URL)http://www.javasoft.com/products/jdk/1.1/docs/guide/rmi/spec/rmiTOC.doc.html而获得。
图2是示出面向对象的分布式系统200中的对象流程的图,系统200包括使用JVM发送和接收方法启用的机器201和202。在系统200中,机器201使用RMI205,以响应于来自对象203的调用,通过把该调用(包括该方法的标识和任何参数)转换成字节流207来启用远程对象204上的方法。当机器201响应于来自对象203的调用时,在系统200中的同一或另一机器上运行的进程可继续操作而不必等待响应。
机器202接收字节流207。使用RMI 206,机器202自动地把它转换成可执行的字节码,以启动对象204上的方法的启用。还可使用RMI在分布式系统中传输对象,以结合在远程机器上执行的进程而使用。
为了进行RMI,这些机器使用RMI编译器所创建的叫做承接程序(stub)和框架(skeleton)的代码。承接程序位于客户机器上且包括对一远程对象的引用,并且它起到该远程对象的代理的作用。框架也是远程对象的一个代理,但它位于包含此远程对象的服务器上。因而,承接程序位于执行启用一远程对象的方法的调用的客户机器上,框架位于包含该远程对象的服务器上。此外,通过成为有关常数和方法的集合的界面来引用(reference)远程对象。承接程序和框架通常必须是以调用中所涉及的远程对象的类型为基础的特定类型。因此,对于涉及各种类型对象的RMI必须存在各种类型的承接程序和框架。例如,在以下文件中说明了承接程序和骨架,在这里通过参考而引入:Jamie Jaworski的“Java 1.1开发者指南,第二版”第371-383页,Sams.net出版(1997)。在上述远程方法启用规范中也对此进行了说明。
相应地,需要用于涉及各种类型的对象的RMI的通用(generic)码。
发明内容
依据本发明的第一种方法包括接收启用一对象的方法的请求并使用通用码来确定待启用的方法。根据此确定来启用该方法,并提供所启用的方法的指示。
依据本发明的第二种方法包括接收启用一特定类的对象的方法的请求,并使用用于所有类的公共进程来确定该方法。根据此确定来启用该方法,并提供所启用的方法的指示。
依据本发明的第三种方法包括接收启用第一对象的第一方法以及与第一对象的类型不同的第二对象的第二方法的请求,并使用公共进程来确定待启用的第一和第二方法。根据此确定来启用第一和第二方法,并提供第一启用方法和第二启用方法的指示。
依据本发明的第一设备接收启用一对象的方法的请求并使用通用码来确定待启用的方法。该设备根据此确定来启用该方法,并提供所启用的方法的指示。
依据本发明的第二设备接收启用一特定类的对象的方法的请求,并使用用于所有类的公共进程来确定该方法。该设备根据此确定来启用该方法,并提供所启用的方法的指示。
依据本发明的第三设备包括接收启用第一对象的第一方法以及与第一对象的类型不同的第二对象的第二方法的请求,并使用公共进程来确定待启用的第一和第二方法。该设备根据此确定来启用第一和第二方法,并提供第一启用方法和第二启用方法的指示。
附图概述
附图引入并构成本发明的一部分,这些附图与描述一起说明本发明的优点和原理。在图中,
图1是示出使用RPC机构的调用信息的流程图;
图2是面向对象的分布式系统中的对象传输的图;
图3是可在依据本发明的一个实现中使用的示例分布式处理系统的图;
图4是示例的分布式系统基础结构的图;
图5是图4所示分布式系统基础结构中的计算机的图;
图6是对RMI使用通用码的系统的方框图;以及
图7是使用通用码启用远程对象的方法的流程图。
本发明的较佳实施方式
概述
依据本发明的系统使用通用代理类来执行远程方法启用。一般,客户机器发送启用远程对象的方法的调用(包括该方法对象的标识符),服务器接收此标识符并使用非专用于任何特定类的通用码,以获得待启用的方法的指示,它包括任何相关的参数类型。例如,一方法对象是具有用于启用一方法的代码的对象。
当客户接收到一远程对象的承接程序时,它是知道该远程对象所实现的所有远程界面的通用代理类。当客户启用该承接程序(与类型无关的通用代理类)上的方法时,通过以下信息来调用该代理的启用方法:指示客户在该对象上启用什么方法的方法对象;以及该方法的参数清单。一方法对象包含以下信息:方法名称;自变量类型;以及返回类型,但不限于此。每一类型可以是“Object(对象)”类型或“基本(primitive)”类型。
代理计算该方法的方法散列(hash),并发送一调用(可经由RMI)。该调用包含以下信息:接收该调用的对象的标识符;方法散列;以及经编组(marshal)的参数(依据该方法对象中所指定的类型),但不限于此。可以通用代理码来进行参数编组,因为它仅依赖于是否知道该方法对象中的自变量类型。
服务器接收该调用并读取对象标识符和方法标识符。通过使用把方法散列与方法对象相对应的查找表,可使用方法标识符来确定想要的方法对象。给定方法对象,服务器一侧的通用码可对这些参数解编组(unmarshal),因为它可从该方法对象中获得类型,然后它在实际远程对象实现中启用该方法。使用通用码并使用从该方法对象获得的返回类型的知识,把对至客户的该启用的结果进行编组。
客户一侧的通用代理使用此方法对象返回类型信息读取返回值,并把结果返回调用者。
分布式处理系统
图3示出分布式处理系统300,它可用于依据本发明的实现中。在图3中,分布式处理系统300包含连接在以网络云319所表示的一个网络配置中的三个独立的异构平台301、302和303。由云319所表示的网络配置的组成和协议并不重要,只要它允许平台301、302和303之间的信息传递。此外,使用三个平台只是为了说明,而不是把依据本发明的实现限于使用特定数目的平台。此外,对依据本发明的实施例而言,特定的网络体系结构并不是决定性的。例如,可用于依据本发明的实现的另一个网络体系结构可把一个平台用作与它所有连接其它平台的网络控制器。
在分布式处理系统300的实现中,每个平台301、302和303分别包括处理器316、317和318以及存储器304、305和306。在每个存储器304、305、306内分别包括应用程序307、308和309、操作系统310、311和312以及RMI部件313、314和315。
应用程序307、308和309可以是先前写入并被修改以与依据本发明所提供的服务一起使用或者是被专门写入以利用依据本发明所提供的服务的应用程序或程序。应用程序307、308和309待依据符合本发明的实现所执行的操作。
操作系统310、311和312是分别捆绑于相应处理器316、317和318的典型操作系统。平台301、302和303可以是异构的。例如,平台301把Sun Microsystems,Inc.制造的UltraSparc微处理器用作处理器316并使用Solaris操作系统310。平台302把Silicon Graphics Corp.制造的MIPS微处理器用作处理器317并使用Unix操作系统311。最后,平台303把Intel Corp.制造的Pentium微处理器用作处理器318且使用Microsoft Windows 95操作系统312。依据本发明的实现不限于此,并可适应同构平台。
Sun、Sun Microsystems和Solaris是Sun Microsystems,Inc.在美国和其它国家的商标或注册商标。在许可下使用UltraSparc和所有其它的SPARC商标,这些商标都是SPARC International,Inc.在美国和其它国家的商标。带有SPARC商标的产品基于Sun Microsystems,Inc.所开发的体系结构。
存储器304、305和306服务于几个功能,诸如用于相关平台的总存储器。另一个功能是在各处理器316、317和318的执行期间存储应用程序307、308和309、RMI部件313、314和315以及操作系统310、311和312。此外,存储器304、305和306中的部分可构成网络319中的所有平台301、302和303都可获得的共享存储器。注意,RMI部件313、314和315结合JVM进行操作,为了简化附图的目的未示出此JVM。
分布式系统的基础结构
符合本发明的系统和方法还可在示例的特定分布式系统400中操作,将参考图4和5对其进行描述。此分布式系统400包括各种部件,包括以下硬件和软件,以(1)使系统的用户经由一具有许多装置的网络共享服务和资源;(2)给编程人员提供可开发稳健而安全的分布式系统的工具和编程模式;以及(3)简化管理分布式系统的任务。为了实现这些目标,分布式系统400利用JavaTM编程环境,从而允许以无缝的方式在各装置之间转移代码和数据。相应地,示例的分布式系统处于Java编程环境的顶层,并开发该环境的特性,包括它所提供的安全性及它所提供的强大类型定义。
在图4和5的分布式系统400中,把不同的计算机和装置结合成为对用户来说表现为单个的系统。通过表现为单个系统,分布式系统400提供了单个系统可提供的访问简化和共享能力,而不放弃个人计算机或工作站的灵活性和个人化响应。分布式系统400可包含由用户所操作的数千个装置,这些用户在地理上分散,但他们约定了委托、管理和政策等基本概念。
在示例的分布式系统内有一个或多个装置所提供的服务的各种逻辑分组,每个这样的逻辑分组被称为是一个Djinn。“服务”指可被用户、程序、装置或其它服务所访问并可以是与计算、存储相关、与通信相关或与提供对另一个用户的访问相关的资源、数据或功能。作为Djinn的一部分所提供的服务的例子包括诸如打印机、显示器和磁盘等装置;诸如应用程序或实用程序等软件;诸如数据库和文件等信息;以及系统的用户。
用户和装置都可加入Djinn。在加入一Djinn时,用户或装置把零个或多个的服务加到Djinn并可访问(经历安全性约束)它所包含的任一个服务。因而,装置和用户结合成为一Djinn,以共享对其服务的访问。Djinn的服务在编程方面表现为Java编程环境的对象,此Java编程环境可包括其它对象、以不同的编程语言编写的软件成分或硬件装置。服务具有定义可请求该服务的操作的界面,该服务的类型确定了构成该服务的界面。
分布式系统400包括计算机402、计算机404以及通过网络408互连的装置406。装置406可以是许多装置中的任一个,诸如打印机、传真机、存储装置、计算机或其它装置。网络408可以是局域网、广域网或因特网。虽然把分布式系统400示为仅包括两个计算机和一个装置,但本领域内的技术人员应理解,分布式系统400可包括附加的计算机或装置。
图5更详细地示出计算机402,以示出分布式系统400的许多软件成分。本领域内的技术人员将理解,可类似地构成计算机404或装置406。计算机402包括存储器502、辅助存储装置504、中央处理单元(CPU)506、输入装置508和视频显示器510。存储器502包括查找服务512、发现服务器514和JavaTM运行时间系统516。Java运行时间系统516包括JavaTM远程方法调用系统(RMI)518和JavaTM虚拟机520。辅助存储装置504包括JavaTM空间522。
如上所述,分布式系统400基于Java编程环境继而利用Java运行时间系统516。Java运行时间系统516包括JavaTM API,允许程序在Java允许时间系统的顶部运行,从而可以独立于平台的方式访问这种系统功能,包括主操作系统的视窗能力和网络技术能力。由于Java API为跨移值了Java运行时间系统516的所有操作系统提供了单个公共API,所以在Java运行时间系统项部运行的程序以独立于平台的方式运行,而不管主平台的操作系统或硬件结构。Java运行时间系统516,作为可从加里福尼亚州Mountain View的Sun Microsystems获得的JavaTM软件开发工具包的一部分而提供。
JVM 520也有利于平台独立性。JVM 520起到类似于抽象计算机器的作用,它接收字节码形式的程序中的指令,并通过把这些字节码动态地转换成诸如对象码等用于执行的形式来解释它们,并执行它们。RMI 518通过允许在一个计算机或装置上执行的对象启用另一计算机或装置上的对象的方法,从而有利于远程方法调用。也提供了RMI和Java虚拟机作为Java软件开发工具包的一部分。
查找服务512定义了特定Djinn可获得的的服务。即,在分布式系统400内可存在不止一个Djinn继而不止一个查找服务。查找服务512包含该Djinn内的每个服务的一个对象,每个对象包含有助于对相应的系统进行访问的各种方法。在名为“有助于对查找服务的访问的法和系统”的美国专利申请中更详细地描述了查找服务512及其服务,该申请先前已通过参考而引入。
发现服务514在公知为引导和加入(发现)的进程中检测何时把一新的装置加到分布式系统400上,以及在检测到此新的装置时,发现服务器把查找服务512的一个引用(reference)传送给新的装置,从而此新装置可把其服务向查找服务登记,并可成为此Djinn的一员。在登记后,新装置变为Djinn的一个成员,结果,它可访问包含在查找服务512中的所有服务。在名为“提供在与分布式系统中的装置通信时所使用的可下载代码的设备和方法”的美国专利申请中更详细地描述了引导和加入的进程,该申请先前已通过参考而引入。
Java空间522是由分布式系统400内的程序用来存储对象的对象资源库。程序使用Java空间522来永久性地存储对象并使得它们可被示例的分布式系统内的其它装置访问。在1997年11月17日提交的名为“利用多形态入口和入口匹配的数据库系统”的08/971,529号未决美国专利申请中更详细地描述了Java空间,该申请已转让给共同的受让人,在这里通过参考而引入。本领域内的技术人员应理解,分布式系统400可包含许多查找服务、发现服务和Java空间。
分布式处理系统中的数据流
图6是面向对象的分布式网络600的方框图,它连接了诸如计算机或在一个或多个计算机上执行的虚拟机或参考图3、4和5所描述的机器等机器601和606。网络600包括包含RMI 602和相关代码603的客户机601。服务器606包括RMI 605和远程对象608。在操作中,RMI 602把一调用或请求609发送到RMI 605,以请求启用远程对象608的方法。RMI 602使用通用代理604来发送调用609。通用代理604提供的的一个优点是无需特定类型,从而它可启用各种类型的远程对象的方法。表1包含以Netscape Communications Corp.的用于通用代理类的Java编程语言编写的类定义,它被扩展到允许通用代理支持一组界面之间的方法启用。
表1
package java.lang.reflect; public class Proxy { protected native Proxy(Class[]implementsInterface); protected abstract Object invoke(Method method,Object[] args);
替代用于一远程对象的特定类型的承接程序,可使用通用代理,以指示可在此代理上启用的所有方法的这组界面对该通用代理进行初始化。在对此代理进行调用时,对此代理的“启用”方法传送一包括有关被启用的方法的信息的“方法对象”,而且还传送被捆绑成一对象数组的所需自变量。
RMI 605使用通用码607来返回响应610。使用此通用码来进行以下操作:根据方法标识符来查找方法;根据该方法对象中所指示的类型对参数进行解编组;在一远程对象实现上启用该方法;以及对至客户的返回结果进行编组(根据类型)。响应可包括所发送的对象类型的标识、构成对象状态的数据以及与此对象有关的代码的URL形式的网络可寻址位置。可把该响应作为流发送。
Java编程语言中所使用的流包括输入和输出流,它在本领域内是公知的,例如,其说明见Mary Campione和Kathy Walrath,Addison-Wesley在1996的名为“Java指南:用于因特网的面向对象的编程”的一文中第325-53页,在这里通过参考而引入。例如,在Sun Microsystems,Inc.可获得的对象串行化规范中说明了对象流。URL在本领域内是公知的,例如,其说明见Mary Campione和KathyWalrath,Addison-Wesley在1996的名为“Java指导:用于因特网的面向对象的编程”的一文中第494-507页,在这里通过参考而引入。
图7是RMI的进程700的流程图,它使用通用码而非专用于在其上启用该方法的任何特定类型的远程对象。客户机601中的应用程序在一承接程序(它是通用代理类的一个实例)上启用一方法(步骤701)。以捆绑成对象数组的方法对象和参数列表来调用通用代理实例的“启用”方法(步骤702)。通用代理发送一标识符,它可包括对象标识符、方法散列并对至服务器的参数进行编组(步骤703)。
在先前通过参考引入的名为“识别远程方法的确定性散列方法和系统”的美国专利申请中揭示了使用方法散列的进一步细节。编组涉及从包括代码或对用于构成的代码的引用的字节流构成一对象。在1997年10月15日提交的名为“分布式系统中对象的延迟重构及远程加载”的08/950,756号美国专利申请中说明了编组和解编组,在这里通过参考而引入。
服务器606读取此对象标识符和方法散列(步骤704),并使用此方法散列查找该调用的方法对象(步骤705)。在被给出此方法对象中所指定的参数类型时,服务器606对该操作的参数进行解编组(步骤706)。步骤706可涉及建立一方法表,它对特定方法的值进行编译并在创建和输出一远程对象时被初始化。通用码在一方法散列和一特定方法对象之间建立对应关系。因而,通过使用方法表中的散列,方法启用不需要分类到不同对象类型的不同框架来使方法散列与方法对象相关。
服务器606在此远程对象实现上启用该方法(步骤707),它使用此方法对象中的返回类型信息对至调用者的返回结果进行编组(步骤708)。通用代理使用此方法对象中的返回类型信息对此返回结果进行解编组(步骤709)并把结果返回调用者即客户机601(步骤710)。
实现图7中所示步骤的机器可包括用于执行如图3、4、5和6所示功能的计算机处理器。它们可包括构成使处理器执行以上功能的模块或程序。它们还可包括存储在存储器中的计算机程序产品。计算机程序产品可包括其中有被具体化为计算机可读代码的一个或多个计算机可读媒体,以使这些机器执行上述功能。这些媒体可包括具体化为载波的计算机数据信号,在被处理器执行时,它们代表使处理器通过执行本说明书中所述的方法对一绝对地址处的外围设备进行安全寻址的指令序列。这些媒体还可包括用于执行本说明书中所述方法的数据结构。
虽然参考在JVM上实现Java编程语言的计算机系统来描述依据本发明的系统的实例实施例,但本发明还可等效地应用于处理不同编程语言的代码的其它计算机系统。具体来说,本发明可以面向对象及非面向对象的编程系统来实现。此外,虽然把符合本发明的一个实施例描述为在Java编程环境中进行操作,但本领域内的技术人员应理解,本发明可在其它编程环境中使用。
虽然结合实例实施例描述了本发明,但应理解,许多修改对本领域内技术人员是明显的,本申请试图覆盖其任何改变或变化。例如,可使用各种类型的通用码而不背离本发明的范围。本发明应仅限于权利要求书及其等价物。
Claims (21)
1.一种用于分布式系统中的远程方法启用的方法,该分布式系统包括多个机器,所述方法包括:
接收启用一对象的一个方法的请求;
使用通用码确定待启用的方法;
根据此确定来启用该方法;以及
提供被启用方法的指示。
2.如权利要求1所述的方法,其特征在于接收包括
提供与此方法有关的标识符。
3.一种用于分布式面向对象的系统中的远程方法启用的方法,所述系统具有多个机器并定义了多个类,所述方法包括:
接收启用一特定类的对象的一个方法的请求;
使用所有类的一公共进程来确定此方法;
根据此确定来启用该方法;以及
提供被启用方法的指示。
4.如权利要求3所述的方法,其特征在于接收包括
提供与此方法有关的标识符。
5.一种用于分布式系统中的远程方法启用的方法,该分布式系统包括多个机器,所述方法包括:
接收启用第一对象的第一方法及与第一对象不同类型的第二对象的第二方法的请求;
使用一公共进程来确定待启用的第一和第二方法;
根据此确定来启用第一和第二方法;以及
提供第一被启用方法和第二被启用方法的指示。
6.一种用于分布式系统中的远程方法启用的设备,该分布式系统包括多个机器,所述设备包括:
一模块,构成为接收启用一对象的一个方法的请求;
一模块,构成为使用通用码确定待启用的方法;
一模块,构成为根据此确定来启用该方法;以及
一模块,构成为提供被启用方法的指示。
7.如权利要求6所述的设备,其特征在于接收模块包括
一模块,构成为接收包括提供与此方法有关的标识符。
8.一种用于分布式面向对象的系统中的远程方法启用的设备,所述系统具有多个机器,所述方法包括:
一模块,构成为接收启用一特定类的对象的一个方法的请求;
一模块,构成为使用所有类的一公共进程来确定此方法;
一模块,构成为根据此确定来启用该方法;以及
一模块,构成为提供被启用方法的指示。
9.如权利要求8所述的设备,其特征在于接收模块包括
一模块,构成为提供与此方法有关的标识符。
10.一种用于分布式系统中的远程方法启用的设备,该分布式系统包括多个机器,所述设备包括:
一模块,构成为接收启用第一对象的第一方法及与第一对象不同类型的第二对象的第二方法的请求;
一模块,构成为使用一公共进程来确定待启用的第一和第二方法;
一模块,构成为根据此确定来启用第一和第二方法;以及
一模块,构成为提供第一被启用方法和第二被启用方法的指示。
11.一种用于在包括多个机器的分布式系统中发送对象的系统,包括:
第一机器;
第二机器;
连接第一机器与第二机器的网络;以及
用于发送对象的设备,该设备包括:
一模块,构成为接收启用一对象的一个方法的请求;
一模块,构成为使用通用码确定待启用的方法;
一模块,构成为根据此确定来启用该方法;以及
一模块,构成为提供被启用方法的指示。
12.如权利要求11所述的系统,其特征在于接收模块包括
一模块,构成为接收包括提供与此方法有关的标识符。
13.一种用于在包括多个机器的分布式系统中发送对象的系统,包括:
第一机器;
第二机器;
连接第一机器与第二机器的网络;以及
用于发送对象的设备,该设备包括:
一模块,构成为接收启用一特定类的对象的一个方法的请求;
一模块,构成为使用所有类的一公共进程来确定此方法;
一模块,构成为根据此确定来启用该方法;以及
一模块,构成为提供被启用方法的指示。
14.如权利要求13所述的系统,其特征在于接收模块包括
一模块,构成为提供与此方法有关的标识符。
15.一种用于在包括多个机器的分布式系统中发送对象的系统,包括:
第一机器;
第二机器;
连接第一机器与第二机器的网络;以及
用于发送对象的设备,该设备包括:
一模块,构成为接收启用第一对象的第一方法及与第一对象不同类型的第二对象的第二方法的请求;
一模块,构成为使用一公共进程来确定待启用的第一和第二方法;
一模块,构成为根据此确定来启用第一和第二方法;以及
一模块,构成为提供第一被启用方法和第二被启用方法的指示。
16.一种计算机程序产品,包括:
包含用于控制计算机系统执行一方法的指令的计算机可读媒体,该方法包括:
接收启用一对象的一个方法的请求;
使用通用码确定待启用的方法;
根据此确定来启用该方法;以及
提供被启用方法的指示。
17.如权利要求16所述的计算机程序产品,其特征在于接收包括
提供与此方法有关的标识符。
18.一种计算机程序产品,包括:
包含用于控制计算机系统执行一方法的指令的计算机可读媒体,该方法包括:
接收启用一特定类的对象的一个方法的请求;
使用所有类的一公共进程来确定此方法;
根据此确定来启用该方法;以及
提供被启用方法的指示。
19.如权利要求18所述的计算机程序产品,其特征在于接收包括
提供与此方法有关的标识符。
20.一种计算机程序产品,包括:
包含用于控制计算机系统执行一方法的指令的计算机可读媒体,该方法包括:
接收启用第一对象的第一方法及与第一对象不同类型的第二对象的第二方法的请求;
使用一公共进程来确定待启用的第一和第二方法;
根据此确定来启用第一和第二方法;以及
提供第一被启用方法和第二被启用方法的指示。
21.一种用于包括多个机器的分布式系统中的远程方法启用的设备,包括:
用于接收启用一对象的一个方法的请求的装置;
用于使用通用码确定待启用的方法的装置;
用于根据此确定来启用该方法的装置;以及
用于提供被启用方法的指示的装置。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US7604898P | 1998-02-26 | 1998-02-26 | |
US60/076,048 | 1998-02-26 | ||
US09/044,938 | 1998-03-20 | ||
US09/044,938 US6487607B1 (en) | 1998-02-26 | 1998-03-20 | Methods and apparatus for remote method invocation |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1298513A true CN1298513A (zh) | 2001-06-06 |
Family
ID=26722184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN99805490A Pending CN1298513A (zh) | 1998-02-26 | 1999-02-17 | 用于远程方法启用的方法和设备 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6487607B1 (zh) |
EP (1) | EP1058881A2 (zh) |
JP (1) | JP2002505466A (zh) |
KR (1) | KR20010041293A (zh) |
CN (1) | CN1298513A (zh) |
AU (1) | AU2770299A (zh) |
WO (1) | WO1999044126A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104965864A (zh) * | 2015-06-04 | 2015-10-07 | 深圳市腾讯计算机系统有限公司 | 一种远程对象的标识方法及远程对象的标识系统 |
CN108306844A (zh) * | 2016-10-09 | 2018-07-20 | 上海思立微电子科技有限公司 | 通过应用编程接口的远程通信和远程编程 |
Families Citing this family (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7539628B2 (en) * | 2000-03-21 | 2009-05-26 | Bennett James D | Online purchasing system supporting buyer affordability screening |
JP2000322288A (ja) * | 1999-05-06 | 2000-11-24 | Fujitsu Ltd | 分散オブジェクト開発システム、および、分散オブジェクト開発をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US6581094B1 (en) * | 1999-11-02 | 2003-06-17 | Sun Microsystems, Inc. | Apparatus and method for identifying a digital device based on the device's uniform device descriptor file that specifies the attributes of the device in a XML document in a networked environment |
WO2001040939A1 (en) * | 1999-11-30 | 2001-06-07 | Sun Microsystems, Inc. | Apparatus and methods for communicating between resource domains |
US6728788B1 (en) * | 1999-12-16 | 2004-04-27 | International Business Machines Corporation | Method and system for converting a remote procedure call to a local procedure call when the service is on the same device as the calling client |
US7743149B1 (en) * | 1999-12-22 | 2010-06-22 | Nortel Networks Limited | SIP messages carrying executable computer software code |
GB0015454D0 (en) * | 2000-06-26 | 2000-08-16 | Koninkl Philips Electronics Nv | Data delivery through beacons |
US6766356B1 (en) | 2000-09-14 | 2004-07-20 | Genesys Conferencing, Ltd. | Method and system for remotely modifying presentations in a multimedia conference |
JP2002132739A (ja) * | 2000-10-23 | 2002-05-10 | Nec Corp | スタブ検索ローディングシステム及び方法、サーバ装置、クライアント装置並びにコンピュータ可読記録媒体 |
US6842786B1 (en) * | 2001-02-09 | 2005-01-11 | Adobe Systems Incorporated | Method and apparatus for remote communication of data associated with dynamically generated type object at runtime to describe the data type |
US7043714B2 (en) * | 2001-06-28 | 2006-05-09 | International Business Machines Corporation | Method, system, and program for using objects in data stores during execution of a workflow |
US7069536B2 (en) * | 2001-06-28 | 2006-06-27 | International Business Machines Corporation | Method, system, and program for executing a workflow |
US7100147B2 (en) * | 2001-06-28 | 2006-08-29 | International Business Machines Corporation | Method, system, and program for generating a workflow |
US7698427B2 (en) | 2001-07-30 | 2010-04-13 | International Business Machines Corporation | Method, system, and program for transferring data from an application engine |
US7047535B2 (en) | 2001-07-30 | 2006-05-16 | International Business Machines Corporation | Method, system, and program for performing workflow related operations using an application programming interface |
US7228547B2 (en) * | 2001-07-30 | 2007-06-05 | International Business Machines Corporation | Method, system, and program for enabling access to a plurality of services |
US7296056B2 (en) * | 2001-07-30 | 2007-11-13 | International Business Machines Corporation | Method, system, and program for selecting one user to assign a work item in a workflow |
US8473922B2 (en) * | 2001-09-19 | 2013-06-25 | Hewlett-Packard Development Company, L.P. | Runtime monitoring in component-based systems |
US7000238B2 (en) * | 2001-10-10 | 2006-02-14 | Borland Software Corporation | Development system providing extensible remoting architecture |
US20030093496A1 (en) * | 2001-10-22 | 2003-05-15 | O'connor James M. | Resource service and method for location-independent resource delivery |
US7257613B2 (en) * | 2001-11-20 | 2007-08-14 | Sun Microsystems, Inc. | Methods to develop remote applications with built in feedback ability for use in a distributed test framework |
US7051341B2 (en) * | 2001-12-14 | 2006-05-23 | International Business Machines Corporation | Method, system, and program for implementing a remote method call |
US7290267B2 (en) * | 2002-01-23 | 2007-10-30 | International Business Machines Corporation | Multi-protocol object distribution |
US7130881B2 (en) * | 2002-05-01 | 2006-10-31 | Sun Microsystems, Inc. | Remote execution model for distributed application launch and control |
US7458061B2 (en) * | 2002-06-14 | 2008-11-25 | Sun Microsystems, Inc. | Protecting object identity in a language with built-in synchronization objects |
WO2004001585A1 (en) * | 2002-06-24 | 2003-12-31 | Docomo Communications Laboratories Usa, Inc. | Mobile application environment |
US7454458B2 (en) * | 2002-06-24 | 2008-11-18 | Ntt Docomo, Inc. | Method and system for application load balancing |
US20040001476A1 (en) * | 2002-06-24 | 2004-01-01 | Nayeem Islam | Mobile application environment |
US20030236826A1 (en) * | 2002-06-24 | 2003-12-25 | Nayeem Islam | System and method for making mobile applications fault tolerant |
US20040054809A1 (en) * | 2002-08-26 | 2004-03-18 | Goff Max K. | Synchronous object unification protocol |
SE0203297D0 (sv) * | 2002-11-05 | 2002-11-05 | Ericsson Telefon Ab L M | Remote service execution in an heterogenous network |
US20040111706A1 (en) * | 2002-12-07 | 2004-06-10 | Mogul Jeffrey Clifford | Analysis of latencies in a multi-node system |
US7506273B2 (en) * | 2003-03-19 | 2009-03-17 | International Business Machines Corporation | Method and system for modifying properties of graphical user interface components |
US7478399B2 (en) * | 2003-04-21 | 2009-01-13 | International Business Machines Corporation | Method, system and program product for transferring program code between computer processes |
US20040226022A1 (en) * | 2003-05-09 | 2004-11-11 | Prabhu Sameer D. | Method and apparatus for providing a client-side local proxy object for a distributed object-oriented system |
US7424722B2 (en) * | 2003-08-29 | 2008-09-09 | International Business Machines Corporation | Method and system for creating a dynamic OGSI service proxy framework using runtime introspection of an OGSI service |
KR100550477B1 (ko) * | 2003-12-13 | 2006-02-10 | 한국전자통신연구원 | 임베디드 시스템에서의 원격 디바이스 드라이버 개발환경을 지원하기 위한 드라이버 에이전트 장치 및 그 운용방법 |
US7490168B2 (en) * | 2003-12-17 | 2009-02-10 | International Business Machines Corporation | Service oriented integration server architecture |
US7496932B2 (en) * | 2004-01-12 | 2009-02-24 | International Business Machines Corporation | Communicating with remote objects in a data processing network |
US8312473B2 (en) * | 2004-04-26 | 2012-11-13 | Sony Computer Entertainment Inc. | Specifying parameters for selective return to an invoker |
US7386865B2 (en) * | 2004-06-24 | 2008-06-10 | Sap Ag | System and method for processing remote function calls |
IL164577A (en) * | 2004-10-14 | 2011-12-29 | Tadiran Telecom Ltd | Communication in a distributed system |
US7543300B2 (en) * | 2004-11-16 | 2009-06-02 | International Business Machines Corporation | Interface for application components |
US7539150B2 (en) * | 2004-11-16 | 2009-05-26 | International Business Machines Corporation | Node discovery and communications in a network |
IL166085A (en) * | 2004-12-30 | 2011-08-31 | Tadiran Telecom Ltd | Method and apparatus for use of identical data objects representing a user in a distributed communications network |
US7549151B2 (en) * | 2005-02-14 | 2009-06-16 | Qnx Software Systems | Fast and memory protected asynchronous message scheme in a multi-process and multi-thread environment |
US7453865B2 (en) * | 2005-02-16 | 2008-11-18 | International Business Machines Corporation | Communication channels in a storage network |
KR100674838B1 (ko) * | 2005-02-28 | 2007-01-26 | 삼성전기주식회사 | 적층형 카메라 모듈 |
US7840682B2 (en) | 2005-06-03 | 2010-11-23 | QNX Software Systems, GmbH & Co. KG | Distributed kernel operating system |
US8667184B2 (en) | 2005-06-03 | 2014-03-04 | Qnx Software Systems Limited | Distributed kernel operating system |
US8032657B2 (en) * | 2005-09-12 | 2011-10-04 | Microsoft Corporation | Preservation of type information between a client and a server |
US7680096B2 (en) * | 2005-10-28 | 2010-03-16 | Qnx Software Systems Gmbh & Co. Kg | System for configuring switches in a network |
KR100978083B1 (ko) * | 2006-01-31 | 2010-08-26 | 후지쯔 가부시끼가이샤 | 공유 메모리형 멀티 프로세서에 있어서의 절차 호출 방법 및 절차 호출 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 |
US7917913B2 (en) * | 2006-09-15 | 2011-03-29 | Telefonaktiebolaget L M Ericsson (Publ) | Injecting proxy components using blueprints |
US8332866B2 (en) | 2006-11-29 | 2012-12-11 | Qualcomm Incorporated | Methods, systems, and apparatus for object invocation across protection domain boundaries |
JP2008225625A (ja) * | 2007-03-09 | 2008-09-25 | Nec Corp | 分散処理システム連携システム、分散処理システム連携方法および分散処理システム連携プログラム |
US8117601B2 (en) * | 2007-11-14 | 2012-02-14 | Microsoft Corporation | Internal test and manipulation of an application |
US20100174575A1 (en) * | 2009-01-02 | 2010-07-08 | International Business Machines Corporation | Meeting management system with failover and failback capabilities for meeting moderators |
US20100306177A1 (en) * | 2009-05-29 | 2010-12-02 | Khosravi Hormuzd M | Host operating system independent storage-related remote access and operations |
US8214902B2 (en) * | 2009-06-19 | 2012-07-03 | Intel Corporation | Determination by circuitry of presence of authorized and/or malicious data |
US8307175B2 (en) * | 2009-06-26 | 2012-11-06 | Intel Corporation | Data recovery and overwrite independent of operating system |
US9934079B2 (en) | 2010-05-27 | 2018-04-03 | International Business Machines Corporation | Fast remote communication and computation between processors using store and load operations on direct core-to-core memory |
US9378073B2 (en) | 2012-08-14 | 2016-06-28 | International Business Machines Corporation | Remote procedure call for a distributed system |
US9092281B2 (en) | 2012-10-02 | 2015-07-28 | Qualcomm Incorporated | Fast remote procedure call |
US11734054B2 (en) | 2019-09-03 | 2023-08-22 | Netflix, Inc. | Techniques for interfacing between media processing workflows and serverless functions |
KR102187063B1 (ko) * | 2020-07-13 | 2020-12-04 | 김인헌 | 서브 로터가 구비되는 드론 |
CN113110947B (zh) * | 2021-04-16 | 2024-04-02 | 中国工商银行股份有限公司 | 一种程序调用链生成方法、系统、电子设备及介质 |
Family Cites Families (182)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2476349A1 (fr) | 1980-02-15 | 1981-08-21 | Philips Ind Commerciale | Systeme de traitement de donnees reparti |
US4491946A (en) | 1981-03-09 | 1985-01-01 | Gould Inc. | Multi-station token pass communication system |
AU556499B2 (en) | 1981-05-22 | 1986-11-06 | Data General Corporation | Data processing system |
US4558413A (en) | 1983-11-21 | 1985-12-10 | Xerox Corporation | Software version management system |
JPH0640302B2 (ja) | 1984-01-30 | 1994-05-25 | 株式会社日立製作所 | 図式・ソ−スプログラム自動生成方法 |
US4823122A (en) | 1984-06-01 | 1989-04-18 | Digital Equipment Corporation | Local area network for digital data processing system |
US4809160A (en) | 1985-10-28 | 1989-02-28 | Hewlett-Packard Company | Privilege level checking instruction for implementing a secure hierarchical computer system |
US4713806A (en) | 1986-03-14 | 1987-12-15 | American Telephone And Telegraph Company, At&T Bell Laboratories | Communication system control arrangement |
US4939638A (en) | 1988-02-23 | 1990-07-03 | Stellar Computer Inc. | Time sliced vector processing |
US5287511A (en) | 1988-07-11 | 1994-02-15 | Star Semiconductor Corporation | Architectures and methods for dividing processing tasks into tasks for a programmable real time signal processor and tasks for a decision making microprocessor interfacing therewith |
US4979105A (en) | 1988-07-19 | 1990-12-18 | International Business Machines | Method and apparatus for automatic recovery from excessive spin loops in an N-way multiprocessing system |
US5133075A (en) | 1988-12-19 | 1992-07-21 | Hewlett-Packard Company | Method of monitoring changes in attribute values of object in an object-oriented database |
US5109486A (en) | 1989-01-06 | 1992-04-28 | Motorola, Inc. | Distributed computer system with network and resource status monitoring |
US5088036A (en) | 1989-01-17 | 1992-02-11 | Digital Equipment Corporation | Real time, concurrent garbage collection system and method |
DE69030340T2 (de) | 1989-02-24 | 1997-11-20 | Digital Equipment Corp | Makler für die Auswahl von Rechnernetzwerkservern |
US5297283A (en) | 1989-06-29 | 1994-03-22 | Digital Equipment Corporation | Object transferring system and method in an object based computer operating system |
US5187787B1 (en) | 1989-07-27 | 1996-05-07 | Teknekron Software Systems Inc | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5257369A (en) | 1990-10-22 | 1993-10-26 | Skeen Marion D | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5557798A (en) | 1989-07-27 | 1996-09-17 | Tibco, Inc. | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5218699A (en) | 1989-08-24 | 1993-06-08 | International Business Machines Corporation | Remote procedure calls in heterogeneous systems |
JPH04505977A (ja) | 1989-12-26 | 1992-10-15 | 富士通株式会社 | オブジェクト指向分散処理システム |
GB2242293A (en) | 1990-01-05 | 1991-09-25 | Apple Computer | Apparatus and method for dynamic linking of computer software components |
AU639802B2 (en) | 1990-08-14 | 1993-08-05 | Oracle International Corporation | Methods and apparatus for providing dynamic invocation of applications in a distributed heterogeneous environment |
AU628753B2 (en) | 1990-08-14 | 1992-09-17 | Digital Equipment Corporation | Method and apparatus for implementing server functions in a distributed heterogeneous environment |
US5446897A (en) | 1990-08-31 | 1995-08-29 | International Business Machines Corporation | Automated address discovery method and apparatus for local area networks |
WO1992005485A2 (en) | 1990-09-17 | 1992-04-02 | Cabletron Systems, Inc. | Network management system using model-based intelligence |
JPH0799497B2 (ja) | 1990-12-14 | 1995-10-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ソフトウェアの使用を管理するための装置及び方法 |
IE910553A1 (en) | 1991-02-19 | 1992-08-26 | Tolsys Ltd | Improvements in and relating to stable memory circuits |
EP0501610B1 (en) | 1991-02-25 | 1999-03-17 | Hewlett-Packard Company | Object oriented distributed computing system |
EP0501613A3 (en) | 1991-02-28 | 1993-09-01 | Hewlett-Packard Company | Heterogeneous software configuration management apparatus |
US5293614A (en) | 1991-04-08 | 1994-03-08 | Texas Instruments Incorporated | System and method for hard real-time garbage collection requiring a write barrier but no read barrier |
US5481721A (en) | 1991-07-17 | 1996-01-02 | Next Computer, Inc. | Method for providing automatic and dynamic translation of object oriented programming language-based message passing into operation system message passing using proxy objects |
DE4131380A1 (de) | 1991-09-20 | 1993-03-25 | Siemens Ag | Verfahren zur adaption einer objektorientierten applikation |
US5826017A (en) | 1992-02-10 | 1998-10-20 | Lucent Technologies | Apparatus and method for communicating data between elements of a distributed system using a general protocol |
US5390328A (en) | 1992-03-30 | 1995-02-14 | International Business Machines Corporation | Data processing system and method for providing notification in a central processor of state changes for shared data structure on external storage |
US5553305A (en) | 1992-04-14 | 1996-09-03 | International Business Machines Corporation | System for synchronizing execution by a processing element of threads within a process using a state indicator |
US5353343A (en) | 1992-04-30 | 1994-10-04 | Rockwell International Corporation | Telephonic switching system with a user controlled data memory access system and method |
US5412717A (en) | 1992-05-15 | 1995-05-02 | Fischer; Addison M. | Computer system security method and apparatus having program authorization information data structures |
US5581760A (en) * | 1992-07-06 | 1996-12-03 | Microsoft Corporation | Method and system for referring to and binding to objects using identifier objects |
US5307490A (en) | 1992-08-28 | 1994-04-26 | Tandem Computers, Inc. | Method and system for implementing remote procedure calls in a distributed computer system |
JP2524472B2 (ja) | 1992-09-21 | 1996-08-14 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 電話回線利用の音声認識システムを訓練する方法 |
US5423042A (en) | 1992-10-23 | 1995-06-06 | International Business Machines Corporation | Remote procedure execution |
US5561785A (en) | 1992-10-29 | 1996-10-01 | International Business Machines Corporation | System for allocating and returning storage and collecting garbage using subpool of available blocks |
DE69309485T2 (de) | 1992-11-13 | 1997-07-10 | Microsoft Corp | Verfahren zur verteilung von schnittstellenzeigern fur fernprozeduranrufe |
US5515536A (en) | 1992-11-13 | 1996-05-07 | Microsoft Corporation | Method and system for invoking methods of an object through a dispatching interface |
US5386568A (en) | 1992-12-01 | 1995-01-31 | Yamaha Corporation | Apparatus and method for linking software modules |
EP0602263A1 (en) | 1992-12-15 | 1994-06-22 | International Business Machines Corporation | User interface program generator |
US5560003A (en) | 1992-12-21 | 1996-09-24 | Iowa State University Research Foundation, Inc. | System and hardware module for incremental real time garbage collection and memory management |
US5452459A (en) | 1993-01-08 | 1995-09-19 | Digital Equipment Corporation | Method and apparatus for allocating server access in a distributed computing environment |
EP0613083B1 (en) | 1993-02-25 | 2002-01-23 | Sun Microsystems, Inc. | Transaction management in object oriented systems |
US5832593A (en) | 1993-04-14 | 1998-11-10 | Minnesota Mining And Manufacturing Company | Splice head for insulated telecommunication wires |
CA2121612A1 (en) | 1993-05-21 | 1994-11-22 | Chung-Hwa Herman Rao | Methods and apparatus for making and using distributed applications |
US5603031A (en) | 1993-07-08 | 1997-02-11 | General Magic, Inc. | System and method for distributed computation based upon the movement, execution, and interaction of processes in a network |
DE59410317D1 (de) | 1993-07-16 | 2003-10-02 | Siemens Ag | Verfahren zur Koordination von parallelen Zugriffen mehrerer Prozessoren auf Resourcenkonfigurationen |
US5844553A (en) | 1993-08-30 | 1998-12-01 | Hewlett-Packard Company | Mechanism to control and use window events among applications in concurrent computing |
US5617537A (en) | 1993-10-05 | 1997-04-01 | Nippon Telegraph And Telephone Corporation | Message passing system for distributed shared memory multiprocessor system and message passing method using the same |
CA2118169A1 (en) | 1993-10-27 | 1995-04-28 | Michael R.C. Seaman | Event architecture for system management in an operating system |
US5455952A (en) | 1993-11-03 | 1995-10-03 | Cardinal Vision, Inc. | Method of computing based on networks of dependent objects |
US5742848A (en) | 1993-11-16 | 1998-04-21 | Microsoft Corp. | System for passing messages between source object and target object utilizing generic code in source object to invoke any member function of target object by executing the same instructions |
US5581704A (en) | 1993-12-06 | 1996-12-03 | Panasonic Technologies, Inc. | System for maintaining data coherency in cache memory by periodically broadcasting invalidation reports from server to client |
US5485617A (en) | 1993-12-13 | 1996-01-16 | Microsoft Corporation | Method and system for dynamically generating object connections |
US5594921A (en) | 1993-12-17 | 1997-01-14 | Object Technology Licensing Corp. | Authentication of users with dynamically configurable protocol stack |
US5548726A (en) | 1993-12-17 | 1996-08-20 | Taligeni, Inc. | System for activating new service in client server network by reconfiguring the multilayer network protocol stack dynamically within the server node |
AU6702594A (en) | 1993-12-17 | 1995-07-03 | Taligent, Inc. | Object-oriented distributed communications directory service |
WO1995019008A1 (en) | 1994-01-05 | 1995-07-13 | Covey Peter J | Dynamic-state, multi-dimensional, multi-media database |
US5832219A (en) | 1994-02-08 | 1998-11-03 | Object Technology Licensing Corp. | Distributed object networking service |
US5845090A (en) | 1994-02-14 | 1998-12-01 | Platinium Technology, Inc. | System for software distribution in a digital computer network |
US5392280A (en) | 1994-04-07 | 1995-02-21 | Mitsubishi Electric Research Laboratories, Inc. | Data transmission system and scheduling protocol for connection-oriented packet or cell switching networks |
US5675796A (en) | 1994-04-08 | 1997-10-07 | Microsoft Corporation | Concurrency management component for use by a computer program during the transfer of a message |
US6216138B1 (en) | 1994-04-22 | 2001-04-10 | Brooks Automation Inc. | Computer interface system for automatically generating graphical representations of computer operations linked together according to functional relationships |
US5680617A (en) | 1994-05-16 | 1997-10-21 | Apple Computer, Inc. | Computer-human interface which provides for user customization of object behavior |
US5675797A (en) | 1994-05-24 | 1997-10-07 | International Business Machines Corporation | Goal-oriented resource allocation manager and performance index technique for servers |
DE69533148T2 (de) | 1994-05-26 | 2005-08-25 | Sun Microsystems, Inc., Santa Clara | Verfahren und Gerät zur Erzeugung und Verwendung kurzer Operationsidentifizierer in objektorientierten Systemen |
US5655148A (en) | 1994-05-27 | 1997-08-05 | Microsoft Corporation | Method for automatically configuring devices including a network adapter without manual intervention and without prior configuration information |
US5680573A (en) | 1994-07-12 | 1997-10-21 | Sybase, Inc. | Method of buffering data objects in a database |
US5778228A (en) | 1994-08-16 | 1998-07-07 | International Business Machines Corporation | Method and system for transferring remote procedure calls and responses over a network |
US5922054A (en) | 1994-08-19 | 1999-07-13 | Canon Kabushiki Kaisha | System for managing external applications and files |
US5555367A (en) | 1994-09-30 | 1996-09-10 | General Electric Company | Method and system for generating computer programs for queries formed by manipulating object-oriented diagrams |
JP4058118B2 (ja) | 1994-11-15 | 2008-03-05 | 株式会社日立製作所 | プログラム生成システム及び方法 |
US5577231A (en) | 1994-12-06 | 1996-11-19 | International Business Machines Corporation | Storage access authorization controls in a computer system using dynamic translation of large addresses |
US5553282A (en) | 1994-12-09 | 1996-09-03 | Taligent, Inc. | Software project history database and method of operation |
US5644768A (en) | 1994-12-09 | 1997-07-01 | Borland International, Inc. | Systems and methods for sharing resources in a multi-user environment |
DE69521977T2 (de) | 1994-12-13 | 2002-04-04 | Ibm | Verfahren und System zur gesicherten Programmenverteilung |
US5608903A (en) | 1994-12-15 | 1997-03-04 | Novell, Inc. | Method and apparatus for moving subtrees in a distributed network directory |
US5677851A (en) | 1994-12-15 | 1997-10-14 | Novell, Inc. | Method and apparatus to secure digital directory object changes |
US5630066A (en) | 1994-12-20 | 1997-05-13 | Sun Microsystems, Inc. | System and method for locating object view and platform independent object |
US5872928A (en) | 1995-02-24 | 1999-02-16 | Cabletron Systems, Inc. | Method and apparatus for defining and enforcing policies for configuration management in communications networks |
EP0735472A3 (en) | 1995-03-31 | 2000-01-19 | Sun Microsystems, Inc. | Method and apparatus for conspiracy among objects |
US5727203A (en) | 1995-03-31 | 1998-03-10 | Sun Microsystems, Inc. | Methods and apparatus for managing a database in a distributed object operating environment using persistent and transient cache |
US5812819A (en) | 1995-06-05 | 1998-09-22 | Shiva Corporation | Remote access apparatus and method which allow dynamic internet protocol (IP) address management |
US5628005A (en) | 1995-06-07 | 1997-05-06 | Microsoft Corporation | System and method for providing opportunistic file access in a network environment |
US5903731A (en) | 1995-06-14 | 1999-05-11 | Us West Technologies, Inc. | System and associated method for re-engineering a telecommunications network support system with object-oriented translators |
US5761656A (en) | 1995-06-26 | 1998-06-02 | Netdynamics, Inc. | Interaction between databases and graphical user interfaces |
US5802367A (en) | 1995-07-07 | 1998-09-01 | Microsoft Corporation | Method and system for transparently executing code using a surrogate process |
US5745703A (en) | 1995-07-18 | 1998-04-28 | Nec Research Institute, Inc. | Transmission of higher-order objects across a network of heterogeneous machines |
US5774551A (en) | 1995-08-07 | 1998-06-30 | Sun Microsystems, Inc. | Pluggable account management interface with unified login and logout and multiple user authentication services |
US5956509A (en) | 1995-08-18 | 1999-09-21 | Microsoft Corporation | System and method for performing remote requests with an on-line service network |
JPH0962526A (ja) | 1995-08-28 | 1997-03-07 | Fujitsu Ltd | 耐故障型rpcシステムおよび方法 |
JP2964926B2 (ja) | 1995-08-29 | 1999-10-18 | 富士ゼロックス株式会社 | データベース管理装置及び方法 |
US5671225A (en) | 1995-09-01 | 1997-09-23 | Digital Equipment Corporation | Distributed interactive multimedia service system |
US5737607A (en) | 1995-09-28 | 1998-04-07 | Sun Microsystems, Inc. | Method and apparatus for allowing generic stubs to marshal and unmarshal data in object reference specific data formats |
US5765174A (en) | 1995-10-06 | 1998-06-09 | Sun Microsystems, Inc. | System amd method for distributed object resource management |
US5864862A (en) | 1996-09-30 | 1999-01-26 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for creating reusable components in an object-oriented programming environment |
US5872973A (en) | 1995-10-26 | 1999-02-16 | Viewsoft, Inc. | Method for managing dynamic relations between objects in dynamic object-oriented languages |
US5860153A (en) | 1995-11-22 | 1999-01-12 | Sun Microsystems, Inc. | Memory efficient directory coherency maintenance |
US5692047A (en) | 1995-12-08 | 1997-11-25 | Sun Microsystems, Inc. | System and method for executing verifiable programs with facility for using non-verifiable programs from trusted sources |
US6067575A (en) | 1995-12-08 | 2000-05-23 | Sun Microsystems, Inc. | System and method for generating trusted, architecture specific, compiled versions of architecture neutral programs |
US6003763A (en) | 1995-12-29 | 1999-12-21 | Visa International Service | Method and apparatus for recording magnetic information on traveler's checks |
US5745695A (en) | 1996-01-16 | 1998-04-28 | Motorola Inc. | Radio system with suspension of packet data service during non-data service connection |
US5754849A (en) | 1996-01-30 | 1998-05-19 | Wayfarer Communications, Inc. | Self-describing object providing dynamic manipulation of heterogeneous data values and semantic identity between memory and transmission representations |
US5946485A (en) | 1996-02-09 | 1999-08-31 | Intervoice Limited Partnership | Enhanced graphical development environment for controlling program flow |
CA2199108C (en) | 1996-03-05 | 2002-04-23 | Hirotoshi Maegawa | Parallel distributed processing system and method of same |
US6049673A (en) | 1996-03-08 | 2000-04-11 | Organicnet, Inc. | Organicware applications for computer systems |
US5845129A (en) | 1996-03-22 | 1998-12-01 | Philips Electronics North America Corporation | Protection domains in a single address space |
US5706502A (en) | 1996-03-25 | 1998-01-06 | Sun Microsystems, Inc. | Internet-enabled portfolio manager system and method |
US5790548A (en) | 1996-04-18 | 1998-08-04 | Bell Atlantic Network Services, Inc. | Universal access multimedia data network |
US5815709A (en) | 1996-04-23 | 1998-09-29 | San Microsystems, Inc. | System and method for generating identifiers for uniquely identifying object types for objects used in processing of object-oriented programs and the like |
US6134603A (en) | 1998-03-20 | 2000-10-17 | Sun Microsystems, Inc. | Method and system for deterministic hashes to identify remote methods |
US6182083B1 (en) | 1997-11-17 | 2001-01-30 | Sun Microsystems, Inc. | Method and system for multi-entry and multi-template matching in a database |
US6185611B1 (en) | 1998-03-20 | 2001-02-06 | Sun Microsystem, Inc. | Dynamic lookup service in a distributed system |
US6226746B1 (en) | 1998-03-20 | 2001-05-01 | Sun Microsystems, Inc. | Stack-based system and method to combine security requirements of methods |
US6938263B2 (en) | 1996-04-23 | 2005-08-30 | Sun Microsystems, Inc. | System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space |
US5978484A (en) | 1996-04-25 | 1999-11-02 | Microsoft Corporation | System and method for safety distributing executable objects |
EP0805393B1 (en) | 1996-04-30 | 2011-11-09 | International Business Machines Corporation | Method and apparatus for managing membership of a group of processors in a distributed computing environment |
US5778368A (en) | 1996-05-03 | 1998-07-07 | Telogy Networks, Inc. | Real-time embedded software respository with attribute searching apparatus and method |
US5778187A (en) | 1996-05-09 | 1998-07-07 | Netcast Communications Corp. | Multicasting method and apparatus |
US5835737A (en) | 1996-05-10 | 1998-11-10 | Apple Computer, Inc. | Method and apparatus for arbitrating access to selected computer system devices |
US5889951A (en) | 1996-05-13 | 1999-03-30 | Viewpoint Corporation | Systems, methods, and computer program products for accessing, leasing, relocating, constructing and modifying internet sites within a multi-dimensional virtual reality environment |
US5928323A (en) | 1996-05-30 | 1999-07-27 | Sun Microsystems, Inc. | Apparatus and method for dynamically generating information with server-side software objects |
US5813013A (en) | 1996-06-06 | 1998-09-22 | Microsoft Corporation | Representing recurring events |
JP3488019B2 (ja) | 1996-06-17 | 2004-01-19 | 株式会社山武 | 制御設計用コンフィギュレーション・ツールの部品再利用方法 |
US5768532A (en) | 1996-06-17 | 1998-06-16 | International Business Machines Corporation | Method and distributed database file system for implementing self-describing distributed file objects |
US5991823A (en) | 1996-06-26 | 1999-11-23 | Sun Microsystems, Inc. | Low overhead object adaptor |
US6044409A (en) | 1996-06-26 | 2000-03-28 | Sun Microsystems, Inc. | Framework for marshaling and unmarshaling argument object references |
US5727145A (en) | 1996-06-26 | 1998-03-10 | Sun Microsystems, Inc. | Mechanism for locating objects in a secure fashion |
SG67354A1 (en) | 1996-06-27 | 1999-09-21 | Inst Of Systems Science Nation | Computationally efficient method for trusted and dynamic digital objects dissemination |
US5809507A (en) | 1996-07-01 | 1998-09-15 | Sun Microsystems, Inc. | Method and apparatus for storing persistent objects on a distributed object network using a marshaling framework |
US6360256B1 (en) | 1996-07-01 | 2002-03-19 | Sun Microsystems, Inc. | Name service for a redundant array of internet servers |
US5748897A (en) | 1996-07-02 | 1998-05-05 | Sun Microsystems, Inc. | Apparatus and method for operating an aggregation of server computers using a dual-role proxy server computer |
US5818448A (en) | 1996-07-02 | 1998-10-06 | Sun Microsystems, Inc. | Apparatus and method for identifying server computer aggregation topologies |
US5949998A (en) | 1996-07-03 | 1999-09-07 | Sun Microsystems, Inc. | Filtering an object interface definition to determine services needed and provided |
US5860004A (en) | 1996-07-03 | 1999-01-12 | Sun Microsystems, Inc. | Code generator for applications in distributed object systems |
US5757925A (en) | 1996-07-23 | 1998-05-26 | Faybishenko; Yaroslav | Secure platform independent cross-platform remote execution computer system and method |
US6016516A (en) | 1996-08-07 | 2000-01-18 | Fuji Xerox Co. Ltd. | Remote procedure processing device used by at least two linked computer systems |
US5875335A (en) | 1996-09-30 | 1999-02-23 | Apple Computer, Inc. | Parameter marshaling techniques for dynamic object-oriented programming languages |
US5974201A (en) | 1996-10-01 | 1999-10-26 | Siemens Corporate Research, Inc. | Smart image system |
US5787425A (en) | 1996-10-01 | 1998-07-28 | International Business Machines Corporation | Object-oriented data mining framework mechanism |
US5832529A (en) | 1996-10-11 | 1998-11-03 | Sun Microsystems, Inc. | Methods, apparatus, and product for distributed garbage collection |
US6044381A (en) | 1997-09-11 | 2000-03-28 | Puma Technology, Inc. | Using distributed history files in synchronizing databases |
US5944793A (en) | 1996-11-21 | 1999-08-31 | International Business Machines Corporation | Computerized resource name resolution mechanism |
US5987506A (en) | 1996-11-22 | 1999-11-16 | Mangosoft Corporation | Remote access and geographically distributed computers in a globally addressable storage environment |
US5892904A (en) | 1996-12-06 | 1999-04-06 | Microsoft Corporation | Code certification for network transmission |
US5884024A (en) | 1996-12-09 | 1999-03-16 | Sun Microsystems, Inc. | Secure DHCP server |
JPH10171701A (ja) | 1996-12-10 | 1998-06-26 | Fuji Xerox Co Ltd | 手続実行装置及び方法 |
US5787431A (en) | 1996-12-16 | 1998-07-28 | Borland International, Inc. | Database development system with methods for java-string reference lookups of column names |
US5933647A (en) | 1997-01-24 | 1999-08-03 | Cognet Corporation | System and method for software distribution and desktop management in a computer network environment |
US6052761A (en) | 1997-01-31 | 2000-04-18 | Hewlett-Packard Company | Increment update in an SCI based system |
US5913029A (en) | 1997-02-07 | 1999-06-15 | Portera Systems | Distributed database system and method |
US5815149A (en) | 1997-02-19 | 1998-09-29 | Unisys Corp. | Method for generating code for modifying existing event routines for controls on a form |
US5935249A (en) | 1997-02-26 | 1999-08-10 | Sun Microsystems, Inc. | Mechanism for embedding network based control systems in a local network interface device |
US6061713A (en) | 1997-03-12 | 2000-05-09 | Fujitsu Limited | Communications system for client-server data processing systems |
US5864866A (en) | 1997-03-26 | 1999-01-26 | International Business Machines Corporation | Apparatus and method for providing externalization in an object-oriented environment |
US5999988A (en) | 1997-03-31 | 1999-12-07 | Sun Microsystems, Inc. | Method and apparatus for generating and employing a run-time generated stub to reference an object in object oriented systems |
US5890158A (en) | 1997-03-31 | 1999-03-30 | International Business Machines Corporation | Method, apparatus, and program storage device for sharing objects with a network server and a database server using a common object model |
US6247091B1 (en) | 1997-04-28 | 2001-06-12 | International Business Machines Corporation | Method and system for communicating interrupts between nodes of a multinode computer system |
US6282295B1 (en) | 1997-10-28 | 2001-08-28 | Adam Lucas Young | Auto-recoverable and auto-certifiable cryptostem using zero-knowledge proofs for key escrow in general exponential ciphers |
US5808911A (en) | 1997-06-19 | 1998-09-15 | Sun Microsystems, Inc. | System and method for remote object resource management |
US5878411A (en) | 1997-06-27 | 1999-03-02 | International Business Machines Corporation | Dependent object class and subclass mapping to relational data store |
US5887134A (en) | 1997-06-30 | 1999-03-23 | Sun Microsystems | System and method for preserving message order while employing both programmed I/O and DMA operations |
US5946694A (en) | 1997-09-29 | 1999-08-31 | International Business Machines Corporation | Apparatus and method for transparent application of service to business objects |
US5951652A (en) | 1997-10-06 | 1999-09-14 | Ncr Corporation | Dependable data element synchronization mechanism |
US6061699A (en) | 1997-11-03 | 2000-05-09 | International Business Machines Corporation | Method and computer program product for extracting translatable material from browser program function codes using variables for displaying MRI |
US5999179A (en) | 1997-11-17 | 1999-12-07 | Fujitsu Limited | Platform independent computer network management client |
US6032151A (en) | 1997-11-17 | 2000-02-29 | Sun Microsystems, Inc. | Database system employing polymorphic entry and entry matching |
US6016496A (en) | 1997-11-20 | 2000-01-18 | International Business Machines Corporation | Method and apparatus for an object-oriented object for retrieving information from local and remote databases |
US6009103A (en) | 1997-12-23 | 1999-12-28 | Mediaone Group, Inc. | Method and system for automatic allocation of resources in a network |
US5963947A (en) | 1998-01-27 | 1999-10-05 | International Business Machines Corporation | Technique of dynamically adding functionality from a client to manipulated data at a server |
US6023586A (en) | 1998-02-10 | 2000-02-08 | Novell, Inc. | Integrity verifying and correcting software |
US6026414A (en) | 1998-03-05 | 2000-02-15 | International Business Machines Corporation | System including a proxy client to backup files in a distributed computing environment |
US6185602B1 (en) | 1998-06-29 | 2001-02-06 | Sony Corporation | Multi-user interaction of multimedia communication |
US6108346A (en) | 1998-08-27 | 2000-08-22 | Xiox Corporation | Combined synchronous and asynchronous message transmission |
US6282568B1 (en) | 1998-12-04 | 2001-08-28 | Sun Microsystems, Inc. | Platform independent distributed management system for manipulating managed objects in a network |
-
1998
- 1998-03-20 US US09/044,938 patent/US6487607B1/en not_active Expired - Lifetime
-
1999
- 1999-02-17 EP EP99908212A patent/EP1058881A2/en not_active Withdrawn
- 1999-02-17 KR KR1020007009393A patent/KR20010041293A/ko not_active Application Discontinuation
- 1999-02-17 WO PCT/US1999/003395 patent/WO1999044126A2/en not_active Application Discontinuation
- 1999-02-17 CN CN99805490A patent/CN1298513A/zh active Pending
- 1999-02-17 AU AU27702/99A patent/AU2770299A/en not_active Abandoned
- 1999-02-17 JP JP2000533810A patent/JP2002505466A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104965864A (zh) * | 2015-06-04 | 2015-10-07 | 深圳市腾讯计算机系统有限公司 | 一种远程对象的标识方法及远程对象的标识系统 |
CN104965864B (zh) * | 2015-06-04 | 2018-05-08 | 深圳市腾讯计算机系统有限公司 | 一种远程对象的标识方法及远程对象的标识系统 |
CN108306844A (zh) * | 2016-10-09 | 2018-07-20 | 上海思立微电子科技有限公司 | 通过应用编程接口的远程通信和远程编程 |
CN108306844B (zh) * | 2016-10-09 | 2020-07-24 | 上海思立微电子科技有限公司 | 用于服务器与客户端之间的api通信的方法 |
Also Published As
Publication number | Publication date |
---|---|
WO1999044126A2 (en) | 1999-09-02 |
US6487607B1 (en) | 2002-11-26 |
KR20010041293A (ko) | 2001-05-15 |
WO1999044126A3 (en) | 1999-10-21 |
EP1058881A2 (en) | 2000-12-13 |
JP2002505466A (ja) | 2002-02-19 |
AU2770299A (en) | 1999-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1298513A (zh) | 用于远程方法启用的方法和设备 | |
US6272559B1 (en) | Deferred reconstruction of objects and remote loading for event notification in a distributed system | |
US6393497B1 (en) | Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system | |
US6253256B1 (en) | Deferred reconstruction of objects and remote loading in a distributed system | |
US6466947B2 (en) | Apparatus and method for dynamically verifying information in a distributed system | |
CN1298505A (zh) | 提供可下载码用于与分布式系统中的装置进行通信的装置和方法 | |
US6636900B2 (en) | Method and apparatus for executing distributed objects over a network | |
CN1292117A (zh) | 基于事件的分布式系统中传送行为的方法和装置 | |
EP1194846A1 (en) | Network proxy for devices with limited resources | |
EP1058883A2 (en) | Method and system for deterministic hashes to identify remote methods | |
US7089263B2 (en) | Apparatus and method for dynamically verifying information in a distributed system | |
CN1298508A (zh) | 执行与分布式系统中的远程过程调用相关的处理的可下载智能代理 | |
CN1553332A (zh) | 基于插件技术的设备集中管理方法 | |
EP1058884A1 (en) | Method and system for facilitating access to a lookup service | |
EP1057113B1 (en) | Deferred reconstruction of objects and remote loading for event notification in a distributed system | |
CN1298511A (zh) | 基于堆栈的安全性要求 | |
CN1298507A (zh) | 分布式系统中用于确定远程对象状态的方法和装置 | |
EP1235149A2 (en) | Deferred reconstruction of objects and remote loading for event notification in a distributed system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C01 | Deemed withdrawal of patent application (patent law 1993) | ||
WD01 | Invention patent application deemed withdrawn after publication |