Method and apparatus for extending traditional operating systems file systems
    1.
    发明授权
    Method and apparatus for extending traditional operating systems file systems 失效
    扩展传统操作系统文件系统的方法和装置

    公开(公告)号:US06298390B1

    公开(公告)日:2001-10-02

    申请号:US08621536

    申请日:1996-03-26

    IPC分类号: G06F900

    摘要: In a computer system having a kernel supporting an interface definition language, a file system composed of an object framework. The object framework includes a set of proxy vnodes, a set of memcache vnodes, and a set of storage vnodes. The set of proxy vnodes and the set of memcache vnodes are linked to the set of storage vnodes through the use of the interface definition language, and the set of proxy vnodes are linked to the set of memcache vnodes through the use of a set of pointers. Each proxy vnode of said set of proxy vnodes is typed so as to differentiate between a set of file system objects such as files, directories and devices. The set of memcache vnodes forms an interface to a virtual memory system while the set of storage vnodes forms an interface to an underlying file system. The file system also uses a set of file paging interfaces that support extensions to the file system while providing full coherence of data.

    摘要翻译: 在具有支持接口定义语言的内核的计算机系统中,由对象框架组成的文件系统。 对象框架包括一组代理vnodes,一组memcache vnodes和一组存储vnodes。 通过使用接口定义语言将该组代理vnodes和一组memcache vnodes链接到该组存储vnodes,并且该代理vnode集合通过使用一组指针链接到该memcache vnodes集合 。 所述代理vnode集合的每个代理vnode被输入以区分一组文件系统对象,例如文件,目录和设备。 该组memcache vnodes构成了虚拟内存系统的接口,而该组存储vnodes构成了一个基础文件系统的接口。 文件系统还使用一组支持文件系统扩展的文件分页界面,同时提供完全一致的数据。

    Method and apparatus for dynamic distributed packet tracing and analysis
    2.
    发明授权
    Method and apparatus for dynamic distributed packet tracing and analysis 失效
    用于动态分布式数据包跟踪和分析的方法和装置

    公开(公告)号:US5648965A

    公开(公告)日:1997-07-15

    申请号:US499275

    申请日:1995-07-07

    IPC分类号: H04L12/26 H04J3/14

    摘要: A packet filter can be programmed by a remote controller to detect packets meeting a particular criterion and to report detection of these packets to the controller. The reports from the packet filter are collected and analyzed by the remote controller. A streams module that incorporates the packet filter is used within a Solaris operating system environment that has been enhanced to support an object framework. The streams module exports a programming interface to the packet filter defined in an interface definition language (IDL). The streams module can be pushed onto a network device in a similar fashion to other streams modules. The streams module responds to requests from one remote controller or to requests from more than one remote controller. These remote controller requests arrive as remote procedure call (RPC) requests on the IDL object references exported by the module. The packet filter within the streams module is fully programmable, and it collects and returns information to the controller through a call back object on the controller. The particular traces collected can be configured dynamically by the controller, by issuing RPC requests to the packet filters through the IDL interfaces. Alternately, a standard Solaris environment can be used. In such a case, a standard (i.e., non-object oriented) RPC approach is employed. Furthermore, the above approach will work with other UNIX systems that support stream modules. Moreover, because other operating systems have streams-like input/output capabilities, the approach can be extended to non-UNIX systems such as DOS, Windows NT, OS/2 Warp or the Macintosh operating system.

    摘要翻译: 分组过滤器可以由遥控器编程,以检测符合特定标准的数据包,并将这些数据包的检测报告给控制器。 来自包过滤器的报告由遥控器收集和分析。 集成了数据包过滤器的流模块在已被增强以支持对象框架的Solaris操作系统环境中使用。 流模块将编程接口导出到以接口定义语言(IDL)定义的包过滤器。 流模块可以以与其他流模块类似的方式被推送到网络设备上。 流模块响应来自一个遥控器的请求或来自多个遥控器的请求。 这些远程控制器请求作为远程过程调用(RPC)请求到达由模块导出的IDL对象引用。 流模块内的数据包过滤器是完全可编程的,它通过控制器上的回调对象收集和返回信息给控制器。 收集的特定踪迹可以由控制器动态配置,通过IDL接口向包过滤器发出RPC请求。 或者,可以使用标准的Solaris环境。 在这种情况下,采用标准(即非面向对象)RPC方法。 此外,上述方法将适用于支持流模块的其他UNIX系统。 此外,由于其他操作系统具有类似流的输入/输出功能,因此该方法可以扩展到非UNIX系统,如DOS,Windows NT,OS / 2 Warp或Macintosh操作系统。

    Memory efficient directory coherency maintenance
    3.
    发明授权
    Memory efficient directory coherency maintenance 失效
    内存高效的目录一致性维护

    公开(公告)号:US5860153A

    公开(公告)日:1999-01-12

    申请号:US562177

    申请日:1995-11-22

    摘要: A bit map is maintained by a provider object of a name server to keep track of names cached by a cache object of the client. The bit map is indexed by performing a hash of the name. When a name is looked up by the server on behalf of a client, the server hashes the name, and sets the bit in the bit map indexed by the result of the hash modulo the size of the bit map. The result of the hash is returned to the client and is stored with the entry in the cache. A bit "set" in the bit map indicates that the client caches at least one name that hashes into the bit. When the server invalidates a name, a hash of the name to be invalidated is used to find the corresponding bit in the bit mask. If the bit is set, the server sends an invalidation request to the client. The invalidation request includes the result of the hash, and the size of the provider's bit map. The client invalidates all entries that hash into the specified bit in the bitmap on the server. Alternatively, the invalidation request also includes the name to be invalidated and the client invalidates only the entry that matches the name.

    摘要翻译: 位图由名称服务器的提供程序对象维护,以跟踪由客户机的缓存对象缓存的名称。 通过执行名称的哈希来对位图进行索引。 当代表客户端查询服务器的名称时,服务器将哈希名称,并将由映射结果索引的位图中的位设置为模数位图的大小。 哈希的结果返回到客户端,并将该条目存储在缓存中。 位图中的位“位”表示客户端将至少一个散列的名称缓存到该位中。 当服务器使名称失效时,将使用要使无效名称的散列来查找位掩码中的相应位。 如果该位置位,则服务器向客户端发送无效请求。 无效请求包括哈希的结果和提供者的位图的大小。 客户端会将所有散列到服务器位图中指定位的条目无效。 或者,无效请求还包括要被无效的名称,并且客户端仅使与匹配该名称的条目无效。

    Single-system image network subsystem in a clustered system
    4.
    发明授权
    Single-system image network subsystem in a clustered system 失效
    集群系统中的单系统映像网络子系统

    公开(公告)号:US5805572A

    公开(公告)日:1998-09-08

    申请号:US561791

    申请日:1995-11-22

    IPC分类号: H04L29/06 H04L29/08 H04L12/66

    CPC分类号: H04L29/06 H04L69/32

    摘要: Transparent routing within the cluster is achieved (without changing the networking code on each node of the cluster) by using a pair of modules interposed appropriately on the networking stack. In a "clustered" system built out of several computers, using the present invention, the networking subsystem appears to applications as if the applications are running on a single computer. In addition, no modifications to the networking code is needed. The present invention is extensible to a variety of networking protocols, not just TCP/IP as the packet filter allows the routing within the cluster to be done dynamically. No modifications to the applications is needed (same binaries will work). A packet filter and remote communication between the modules through IDL enable the modules to do their job. A name server that maintains the port name space is used.

    摘要翻译: 通过在网络堆栈中适当插入一对模块,实现集群内的透明路由(不改变集群各节点上的网络代码)。 在使用本发明的由几台计算机构建的“集群”系统中,网络子系统似乎应用程序似乎应用程序在单个计算机上运行。 另外,不需要修改网络代码。 本发明可扩展到各种网络协议,不仅仅是TCP / IP,因为分组过滤器允许动态地完成集群内的路由。 不需要对应用程序进行修改(相同的二进制文件将工作)。 数据包过滤器和通过IDL的模块之间的远程通信使模块能够完成任务。 使用维护端口名称空间的名称服务器。

    Method and apparatus for transparent server failover for highly available objects
    5.
    发明授权
    Method and apparatus for transparent server failover for highly available objects 失效
    用于高可用性对象的透明服务器故障切换的方法和设备

    公开(公告)号:US06185695B2

    公开(公告)日:2001-02-06

    申请号:US09058406

    申请日:1998-04-09

    IPC分类号: G06F1107

    摘要: One embodiment of the present invention provides a method and an apparatus that facilitates transparent failovers from a primary copy of an object on a first server to a secondary copy of the object on a second server when the first server fails, or otherwise becomes unresponsive. The method includes detecting the failure of the first server; selecting the second server; and reconfiguring the second server to act as a new primary server for the object. Additionally, the method includes transparently retrying uncompleted invocations to the object to the second server, without requiring explicit retry commands from a client application program. A variation on this embodiment further includes winding up active invocations to the object before reconfiguring the second server to act as the new primary server. This winding up process may include causing invocations to unresponsive nodes to unblock and complete. Another variation includes blocking new invocations to the object after detecting the failure of the first server, and unblocking these new invocations after reconfiguring the second server to act as the new primary server. Hence, the present invention can greatly simplify programming of client application programs for highly available systems. It also makes it possible to use a client application program written for a nonhighly available system in a highly available system.

    摘要翻译: 本发明的一个实施例提供了一种方法和装置,其在第一服务器发生故障时促进从第一服务器上的对象的主副本到第二服务器上的对象的副本的透明故障转移,或者否则变得不响应。 该方法包括检测第一服务器的故障; 选择第二台服务器; 并重新配置第二个服务器以充当该对象的新的主服务器。 此外,该方法包括将未完成的对该对象的调用透明地重试到第二个服务器,而不需要客户端应用程序的显式重试命令。 该实施例的变体还包括在重新配置第二服务器以充当新的主服务器之前将主动调用卷绕到对象。 这个清理过程可能包括导致对无响应节点的调用以解锁和完成。 另一个变体包括在检测到第一个服务器的故障之后阻止对对象的新的调用,并且在重新配置第二个服务器以充当新的主服务器之后解除这些新的调用。 因此,本发明可以极大地简化用于高可用性系统的客户端应用程序的编程。 它还可以在高可用性系统中使用为非高可用系统编写的客户端应用程序。

    Method and apparatus for partitioning of managed state for a Java based application
    6.
    发明授权
    Method and apparatus for partitioning of managed state for a Java based application 有权
    用于为基于Java的应用程序分配管理状态的方法和装置

    公开(公告)号:US07246345B1

    公开(公告)日:2007-07-17

    申请号:US09825249

    申请日:2001-04-02

    IPC分类号: G06F9/44 G06F17/30

    CPC分类号: G06F9/465 G06F9/4493

    摘要: A method is disclosed for partitioning a managed state for a Java based application. The application developer is allowed to associate individual entity beans with a particular state management type. Then, during execution, a plurality of state objects are provided, where each state object stores a state of a corresponding entity bean object within the memory address space of a Java server process. Further, each state object is associated with the state management type of the corresponding entity bean object. In this manner, state management is provided for each entity bean object based on the associated state management type using a corresponding state object. The state management type can be a memory replicated state management type, a disk replicated state management type, a non-replicated state manage type.

    摘要翻译: 公开了一种用于为基于Java的应用程序划分管理状态的方法。 允许应用程序开发人员将各实体bean与特定的状态管理类型相关联。 然后,在执行期间,提供多个状态对象,其中每个状态对象将对应的实体bean对象的状态存储在Java服务器进程的存储器地址空间内。 此外,每个状态对象与相应的实体bean对象的状态管理类型相关联。 以这种方式,使用相应的状态对象,基于相关联的状态管理类型为每个实体bean对象提供状态管理。 状态管理类型可以是内存复制状态管理类型,磁盘复制状态管理类型,非复制状态管理类型。

    Method and mechanism for guaranteeing timeliness of programs
    8.
    发明授权
    Method and mechanism for guaranteeing timeliness of programs 失效
    保证方案及时性的方法和机制

    公开(公告)号:US5737515A

    公开(公告)日:1998-04-07

    申请号:US669722

    申请日:1996-06-27

    申请人: Vladimir Matena

    发明人: Vladimir Matena

    IPC分类号: G06F11/00

    CPC分类号: G06F11/0757

    摘要: In order to prevent data corruption and inconsistency caused by incorrect assumption regarding a presumably failed node and/or program, a fail-fast timer mechanism enforces deadlines, i.e. enforces timeliness in programs. For example, given a program which needs to ensure a given code segment is executed within a specified deadline, the program arms a fail-fast timer before executing the code segment. After completing the execution of the code segment, the program disarms the fail-fast timer. If the program executes too slowly and the fail-fast timer expires before the fail-fast timer has been disarmed, the entire node is forced to stop very quickly (i.e. the node fails fast). The fail-fast timer of the present invention also triggers if the program exits before disarming a previously armed timeout.

    摘要翻译: 为了防止由于对可能失败的节点和/或程序的错误假设引起的数据损坏和不一致,故障快速定时器机制强制执行截止日期,即强制程序中的及时性。 例如,给定一个程序需要确保给定的代码段在规定的期限内执行,程序在执行代码段之前会阻止故障快速定时器。 完成代码段的执行后,程序将取消故障快速定时器。 如果程序执行得太慢,并且故障快速定时器在故障快速定时器被撤防之前到期,则整个节点被迫非常快速地停止(即节点快速停机)。 本发明的故障切换定时器,如果在撤防以前的布防超时之前程序退出,则也触发。

    Method and apparatus for performing online application upgrades in a java platform
    9.
    发明授权
    Method and apparatus for performing online application upgrades in a java platform 有权
    用于在Java平台上执行在线应用程序升级的方法和装置

    公开(公告)号:US07370322B1

    公开(公告)日:2008-05-06

    申请号:US09833845

    申请日:2001-04-11

    IPC分类号: G06F9/44 G06F15/16

    CPC分类号: G06F8/65

    摘要: An invention is disclosed for performing online upgrades using a control module, executed as part of an application, that includes application-specific strategies for the application, yet can be coded using the JAVA programming language. An application is executed that includes an original service module and an original control module. The original control module includes application-specific policies for the application. To upgrade the application, an upgraded control module is generated. Then, the upgraded control module is used to create an upgraded service module. Both the upgraded control module and the upgraded service module can be generated using class files for the original modules, which are loaded from a system repository. In this manner, the original control module and the original service module are upgraded.

    摘要翻译: 公开了一种用于使用作为应用的一部分执行的控制模块执行在线升级的发明,其包括针对应用的应用特定策略,但是可以使用JAVA编程语言进行编码。 执行包括原始服务模块和原始控制模块的应用程序。 原始控制模块包括应用程序特定的策略。 要升级应用程序,生成升级后的控制模块。 然后,升级的控制模块用于创建升级后的服务模块。 可以使用从系统存储库加载的原始模块的类文件来生成升级的控制模块和升级的服务模块。 以这种方式,原始控制模块和原始服务模块升级。

    Method and apparatus for upgrading managed application state for a java based application
    10.
    发明授权
    Method and apparatus for upgrading managed application state for a java based application 有权
    用于升级基于Java的应用程序的托管应用程序状态的方法和装置

    公开(公告)号:US07266816B1

    公开(公告)日:2007-09-04

    申请号:US09846067

    申请日:2001-04-30

    IPC分类号: G06F9/44

    摘要: An invention is disclosed for performing online upgrades of applications, including the managed application state, without disrupting the functionality of the application during the upgrade process. A Java module is executed on a server, where the Java module includes at least one original entity bean and at least one original state object in communication with the original entity bean. The original state object stores a state of the original entity bean. Then, an upgraded state object is generated and the state stored in the original state object is transferred to the upgraded state object. In this manner, state management for the original entity bean can be provided using the upgraded state object.

    摘要翻译: 公开了一种用于在不升级过程中中断应用程序的功能的情况下执行包括被管理应用程序状态的应用程序在线升级的发明。 Java模块在服务器上执行,其中Java模块至少包含一个原始实体bean和至少一个与原始实体bean通信的原始状态对象。 原始状态对象存储原始实体bean的状态。 然后,生成升级的状态对象,将存储在原始状态对象中的状态转移到升级状态对象。 以这种方式,可以使用升级的状态对象来提供原始实体bean的状态管理。