CN1225182A - 无缝应用接口管理器 - Google Patents

无缝应用接口管理器 Download PDF

Info

Publication number
CN1225182A
CN1225182A CN97196190A CN97196190A CN1225182A CN 1225182 A CN1225182 A CN 1225182A CN 97196190 A CN97196190 A CN 97196190A CN 97196190 A CN97196190 A CN 97196190A CN 1225182 A CN1225182 A CN 1225182A
Authority
CN
China
Prior art keywords
application
user
resource
shell
incident
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.)
Granted
Application number
CN97196190A
Other languages
English (en)
Other versions
CN1132095C (zh
Inventor
安东尼·C·皮齐
保尔·堪伏斯基
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.)
Merrill Lynch Pierce Fenner and Smith Inc
Original Assignee
Merrill Lynch Pierce Fenner and Smith Inc
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 Merrill Lynch Pierce Fenner and Smith Inc filed Critical Merrill Lynch Pierce Fenner and Smith Inc
Publication of CN1225182A publication Critical patent/CN1225182A/zh
Application granted granted Critical
Publication of CN1132095C publication Critical patent/CN1132095C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Abstract

一种新型计算机工作站(10)接口程序(100)提供了操作系统(340)和应用命令。系统允许与公共的上下文控制器(410)无缝集成。通过对系统资源(330)的管理确保了严格的操作优先权。工作站(10)通过创建围绕任务的工作环境和功能而不是特定的应用和文件结构提高了用户的生产率。

Description

无缝应用接口管理器
发明领域
本发明涉及用于计算机工作站上与执行所选任务的各个驻留应用程序接口的新型接口管理系统。特别是本发明涉及计算机接口管理器,它通过启用对特定应用模块和下层操作系统部分的控制向多个独立和分离的应用程序提供无缝访问。
背景技术
从70年代末出现个人计算机以来,其在系统设计和操作结构上经历了翻天覆地的变化。这些变化来自于许多动因,包括处理器能力的增强,存储器和数据存储设备的价格下降以及销售量的上升。就多方面而言,下层操作系统及其与计算机上应用程序或“应用”的交互作用(它构成用户接口)一直是系统设计中变化最大的领域。在本文中,应用指的是完成用户定义的任务和操作的单个程序或程序组。
80年代占据主导地位的操作系统是微软公司制造的“MS-DOS”。实际上,到80年代末,几乎所有售出的个人计算机都带有这种控制个人计算机上的系统设备和I/O操作的操作系统。因此应用设计的很大一部分精力花在与操纵特定用户接口的MS-DOS的接口上。用户接口被定义为应用命令、输入和输出结构的外表,其最典型的特征就是显示屏幕上提供的信息和数据键入或在各种应用子系统之间移动的模式。长期以来人们就认识到,用户接口是提供计算机使用效率和操作易用性的关键。
专用于MS-DOS操作系统的早期用户接口采用所谓的命令行操作器。它与操作系统的交互主要涉及显示提示符下的命令键入,这些命令具有特定并且常常是特殊的结构。命令一旦键入,系统就根据程序控制逻辑进行处理并显示/打印所生成的输出。虽然这种接口开始时在技术天才们中间非常流行,但却由于广大潜在用户使用起来困难重重而受到奚落。实际上,在1984年,苹果计算机公司发布了用于其MacIntosh型计算机的32位操作系统,它去除了命令行接口并采用在显示屏幕上填满有含义的图标的图形用户接口(GUI)代之。这些图标与应用链接,由此避免出现MS-DOS系统中典型的特殊命令结构。苹果系统代表了接口设计中革命性的突破并且成为所有其它操作系统或多或少模仿的一种风格标准。
实际上,在80年代末期,新的接口以Windows作为商标加入MS-DOS,它从用户接口中基本上去除了命令行并用完全由应用图标和命令专用图标构成的图形用户接口代替。系统允许同时访问多个应用并在应用之间进行交互,包括数据交换和台后处理的切换。Windows接口很快就成为工业标准。
但是由于早期的迭代,所以在用户看来Windows和其它GUI应用还需要大大优化。特别是包括Windows在内的当前所有GUI都与其命令行前辈一样,处理的是基于应用的接口。具体而言,由于接口根据用户旨意向用户提供命令管道(conduit),所以应用是协调用户活动的支配元素。
在当前的接口设计中,这是一种巧妙而严格的限制。几乎所有用户都希望在任务、功能和信息层次(它们独立于系统可提供的各个应用而完成任务或提供信息的单独应用)上与计算机系统交互。实际上,当用户希望获取福特汽车公司的当前市场数据和工业报告时,他/她对使用何种网络应用或字处理器并不十分感兴趣。用户感兴趣的是如何能够独立于提供信息所需的应用环境,快速访问以清楚明了的形式提供的所需信息。
此外,现今的计算机系统以恒定的结构来同时运行一个或多个应用,一种称为系统多任务的处理。多任务使得数据操作和数据提供同时进行并由此极大提高了工作站的效率。多任务能力在许多方面需要上述外壳程序来管理对于应用程序和操作系统的用户接口。但是当前的外壳程序局限于其极小的命令范围,用户常常无法监控同时运行的三个以上的应用,特别是无法以有效的方式使多个应用高效运行。简而言之,当前外壳程序的设计由于能力上的制约作为应用程序启动器有许多不相适应的地方。随着系统需求的日益复杂,强大而方便易用的壳管理器正成为工作站设计中的主要瓶颈。
发明内容
因此本发明的目标是提供一种计算机工作站,它包括多个由一个或一个以上的外壳接口管理器控制的独立应用,外壳接口管理器允许在项目或任务层次上对功能和数据进行无缝访问。
本发明的另一目标是提供一种使工作站协调运行多个应用的系统,它能够以统一的方式同时对几个应用进行直接控制。
本发明的另一目标是提供一种处理系统,它根据用户定义的涉及一个或多个下层应用的任务来创建用户配置的接口并管理信息和系统运行,下层应用以其它方式对用户透明。
本发明进一步的目标是提供一种数据处理系统,它以用户透明的方式组织多个应用并可由用户选择表意一个或多个应用的任务来完成操作,对每个操作和应用都提供上下文。
本发明的另一目标是提供一种将多个管理子系统整合在一起的外壳,子系统包括上下文管理器、资源管理器和事件管理器。
本发明的另一目标是提供一种包括用户接口的系统,该用户接口包含应用工作区、信息中心、设备区域和扩大的书本型象征应用入口。
上述各种目标实现于包含外壳程序的数据处理系统和工作站,该外壳程序对操作系统和多个单独应用的命令和控制功能具有控制权。外壳应用是操作系统的扩展并且包括对应用进行访问和控制的预定义用户接口结构。外壳程序借助OLE(目标链接和嵌入)自动传送机制与应用通信。在这种方式下,当启动应用时,外壳程序可以(并且如果是这样定义的)与其链接以向如此定义启动配置的应用提供上下文。此外,外壳程序从结构和配置上向多个选定应用提供无缝接口,这多个应用由外壳程序定义的上下文管理,由此使得信息处理与检索对应用是无缝的而对用户是透明的。
根据本发明的改进方面,系统定义了特别适用于财务管理应用的工作站环境。具体而言,系统包括四个预定义的上下文分类-客户、产品、用户和商务管理。这四组应用进一步划分为更细微层次的配置信息,从而在启动该应用时根据这四个域的上下文协调处理该应用的上下文。例如,当前的上下文由某一持有大量IBM股票的客户定义,则提供实时报价跟踪的应用自动配置为如外壳程序中客户上下文所描述的那样,对IBM股票进行跟踪。配置数据存储在可以由外壳程序访问的主配置数据库内。
对运行和应用资源的需求将降低性能并可能导致系统故障和崩溃。为了防止或避免这类问题并将系统资源正确分配给主要的应用,外壳程序进一步包括资源管理器。该子系统对应用资源需求进行监控并根据预定义的级别协调系统资源的分配,预定义级别的存在排除了资源衰竭和瓦解的可能。
附图的简要说明
通过以下结合附图对本发明的描述可以进一步理解本发明的上述特征。
图1为用于本发明的工作站的示意图;
图2为描述工作站外壳中所用操作域位置和视窗的屏幕显示;
图3为按照本发明的另一屏幕显示;
图4为书本型象征链接所描述的多个应用的关系示意图;
图5为描述平铺四个应用显示的操作域位置的另一屏幕显示;
图6为用于本发明工作站的物理网络结构框图;
图7为管理根据本发明的工作站环境的系统软件关系框图;
图8为外壳资源管理器子系统的关系框图;
图9为事件管理器子系统的示意图;
图10为与系统I/O链接的事件管理器子系统的示意图;
图11为与系统输出链接的应用的示意图;
图12为与配置数据库链接的应用的示意图;
图13为描述资源管理器操作流程的框图;
图14为启动本发明处理的逻辑流程图;
图15为本发明的资源管理器访问过程的逻辑流程图;
图16为本发明的资源管理器释放过程的逻辑流程图;以及
图17为本发明的系统关闭过程的逻辑流程图。
实施发明的较佳方式
简而言之,本发明为具有选择配置外壳环境的工作站系统,它加强了用户与多个应用的交互作用。外壳环境拥有操作系统参数和应用功能的选择控制权而无需对操作系统或应用从它们的启动状态进行修改。外壳包括专用数据库,它存储着系统管理内所列应用被选定的上下文创建参数。当用户访问应用时,系统协调上下文控制配置数据库所描述的应用结构,从而根据应用所需的特定功能和数据配置应用并提供给用户。向用户所提供的是预先安排的专用信息数据显示,它使应用接口隐藏到外壳环境之后。
上述外壳应用程序包括五个独立的系统对象-外壳对象、应用对象、设备对象、寻访器对象和监视对象,它们一起协同工作。每个对象包括定义了对象与系统和运行在系统上的一个或多个应用程序交互作用的预引擎(pre-engineered)方法组。对象特征进一步用配置数据库所描述的系统内“事件”细化。如上所述,配置数据库包括独立应用的详细配置数据。该数据库DB(1)包括对尚存新应用的设定,它提供了与外壳的无缝交互作用。
事件管理器管理协调系统对实时系统环境变化的访问,这些变化包括上下文变化和新用户等。每个用户以预先定义的方式与事件管理器交互作用,对于系统处理有三类事件。(1)强制事件,(2)订购事件,和(3)隐含事件。根据预先定义的判据,每个应用按照三类事件之一与事件管理器发生交互作用。
图1为用于本发明典型工作站的泛义示意图。系统包括带CPU10和输入设备(即键盘40和鼠标(位置传感器)30)的显示监视器20。较佳的配置是个人工作站采用基于奔腾的处理器,系统内存为16Mb,并且硬盘容量为1.2Gb。较佳的操作系统为Windows NT,完全支持OLE。系统采用构成外壳接口编程框架的模块预先编程。当前系统比较好的用诸如Visual Basic或C/C++之类的编程语言实现。
图2示出了系统显示屏幕100。在本实例中,用户接口以单个应用工作区110的使用为特征组织成特定的结构,显示了工作站使用的激活应用A1。该应用被完整地加载入系统内存,从而能够完成与特定应用相关的几乎所有功能的操作。例如,图中工作区顶部的标签120为用户提供了选项,使其能在各种子程序和/或其它与工作区A1内当前A1链接的应用之间切换,特别是由配置DB(I)上下文赋予应用的结构。此外,每个应用标签包含一个或多个从属标签,例如涉及资产净值的标签可以包括涉及如下子任务的从属标签,例如家庭成员对某笔资产的意见、外界对其的意见、该资产的图表和其它图形表示、有关该资产的新闻和交易情况以及用户对该笔资产所作记录的数据库。每个应用(A1)都可以被视为在某一时间阅读的一本书,虽然所有这些书的当前上下文可以在同一时刻翻阅并且用户可以在各种书之间切换。书本的象征表示由屏幕左边部分填满的一本本书连续构成,每本书130代表工作区内可以使用的独立应用。在本实例中,财务管理专用的几种其它应用驻留在系统内部并且呈现在显示屏幕的右边。它们包括市场提示符-作为实时馈送的有价证券价格的股票报价140。此外,市场提示有价证券列表150实时提供一批选定浏览的证券。诸如打印机、传真机和计算器之类的工具170呈现在屏幕左下方以供启动。在屏幕左下方还有一组预设按钮图标160,已被预编程以供工作站用户使用。如何使用这类按钮图标的实例包括启动按钮,从字处理器(例如旅行报告或销售调用备忘录)中调取报告表格。
如上所述,用户上下文为特定用户ID和/或角色提供了初始值,这些数据随后被用于访问预设的按钮代码并根据用户的角色配置按钮(按钮图标)160。当用户登录系统时,用户被查问用户识别代码(诸如用户名之类的字母和/或识别编号之类的数字)。如果对角色没有缺省的设定,用户也可能被查问其角色(例如财务经理、财务总监)。系统对用户和用户角色进行处理以创建用于用户应用的用户上下文敏感链接。
图2的显示组织是多种可能排列中的一种。每种特定的配置由存储在配置数据库内的配置表值描述。在启动期间,对数据库的配置数据进行轮询,这些数据随后被用来构筑初始的屏幕显示-例如图3中的屏幕,它示出了四个工作区窗口,在屏幕右边有六本书。
如图4所示,书本1-4触发具有相同功能或用途的四个独立应用或应用组的启动。在这种方式下,所书本选项将一个或多个相关应用移动至前台,先前激活的应用留在了后台。在图4中,A1与书本1相关联,A2链接至书本2,依此类推。
根据存储在配置表内的数据,显示可以包含多个工作区窗口110,对应应用A1-A4的多个进发的显示;例如如图5所示,在显示的四个象限内呈现四个工作区区域。如图5所示,平铺四个框显示专用于作为配置数据库DB(I)部分的显示控制表内的系统存储值-包括每个窗口显示的不动产数量和每个窗口的其它系统资源(例如网络带宽、db入口速度、CPU优先权、存储器用法等)。当初始化外壳程序时,初始显示的配置值从表中下拉出来并驱动显示配置。这样,不同的用户在相同的桌面环境下可以希望有不同的应用排列,而同一用户在不同的机器(膝上型或桌面型)上可以希望有不同的排列。
按照这种方式,用户(I)和角色(I)在启动期间读取,并进行初始化外壳程序配置。这样可以定义启动时可用的应用;例如在膝上型“角色”中,由于访问信息中心需要与提供输入的网络应用实现硬链接,所以无法对其进行访问。这种自动初始配置的优点在于对信息中心所作的资源分配现在可以用来提高该“角色”所允许其余应用的性能。
系统工作站比较好的是在网络内部链接;如上所述,本发明适用于膝上型设备,并且比较好的是膝上型设备能远程访问网络。图6示出了典型的网络布局,多个独立的工作站CPU10通过众所周知的网络管理软件与局域网210链接。广域网240可以作为选项采用。图3示出了用于向工作站上驻留程序实时直接输送数据的远程链路230。这为市场成员和其它财务信息应用程序提供了实时报价或其它财经新闻订购服务。
上述有关硬件的讨论示出了一种提供金字塔形用户应用和环境的系统。以下的附图示出了控制这些环境形成与管理的系统布局,显而易见可以利用多种可能的程序代码段来实现这种环境。图7提供了图1工作站的关系框图。用户框300代表典型用户与外壳程序320之间的交互作用。
外壳程序位于用户300与块340代表的操作系统之间。系统资源(存储器、CPU等)都由资源管理器330通过操作系统访问,外壳程序由此根据其下运行的各种应用的授权与操作系统通信(并控制操作系统)。特别是外壳使多个应用在用户接口管理器(UIM)310的控制下进发地运行。
图8示出了在外壳程序下运行的各种应用的上下文内的资源管理器的操作。资源管理器330特别是与每个应用通信,轮流查询配置数据库DB(I)内特定输入所分配的每个应用的需要;这包括监视器335,它跟踪系统资源使用层次,尤其是跟踪选定应用的资源释放和其它应用(以及相关程序)初始化时对资源的调用。当资源被调用和释放时,相关信息被存储在资源数据库345内。资源管理器代表外壳程序(包括利用外壳接口启动其它应用的应用)一般负责启动、监视、基准计数、重新启动和停止应用。以下对此作详细描述。
传递资源释放或需求的过程由事件管理器处理,事件管理器控制着应用与外壳之间的传信和通信,比较好的是以OLE对象实现。图9对此作了图示,图中事件管理器与应用链接并不断对每个应用和操作系统轮流查询其在系统内的“事件”。如上所述,事件具有三种形式:
1.订购事件
2.隐含事件;以及
3.强制事件
订购事件最为常见,对其所作的讨论进一步揭示了图9中块410上下文管理器的作用。具体而言,上下文管理器接收有关当前系统环境的信息,涉及选择的预定义唯一上下文类型(例如客户、产品、用户和商务管理),并随后将配置数据提供给每个向上下文管理器订购的应用。例如,如果生成了新的客户上下文,则将由此更新向上下文管理器订购的每个应用(它被给出与新客户上下文相关的配置)在该域上的内容。应用(或者当前系统的其它部分)可以存储属于每种上下文类型的全部或某些相关信息;例如,“产品”上下文可包含诸如订单符号之类的信息,用来识别产品、产品类别代码(例如净资产、债券等)、产品描述、内部数据库参考等。比较好的是每个上下文具有一定数量的属性(亚上下文层次),它们可以被划分为不同的属性类别:例如客户上下文包括各种帐目、名称、地址、电话号码和特定客户的持有量(常见图12,以下将作讨论)。上下文的变化是一种由事件管理器400触发的“事件”,它经寻访器应用420与上下文管理器430通信。
在这种方式下,上下文管理器可以被视为对前面内部通信协议(例如DDE、共享存储器、命名管道等)的替代。上下文管理器提供了对多个应用之间通信进行分配和存储的机制。为了完成这些服务,上下文管理器依靠与发送和接收内部应用数据的OLE过程有关的协议。对于第三方应用并不支持OLE的程度,上下文管理器提供了打包功能,允许应用接收诸如上下文变化之类的事件数据。虽然这样的过程变得更为复杂,但是却在系统不出现严重问题的前提下保留继承了重要的应用。
如上所述,订购事件是这样一种类型的系统事件,即每个应用都必须按照配置数据库描述的格式明确订购的事件。隐含事件与订购事件非常相似,但是最大的不同之处是新应用自动订购该事件。实际上,由于事件声明是自动分发的,所以应用无需调用建立/通知方法就可接收事件。
最后一类是强制事件。强制事件是向外壳程序下所有对象发送的事件。强制事件的一个典型实例是系统关机,它对于所有激活的应用都有明显的影响。
下列表1示出了按照类型分类的事件实例:
                           表  1
订购事件类型
EV_FINDER-SELECT       -已经激活新的寻访器
EV_PAGE-SELECT         -已经选定新的页面
EV_APP_RESIZED         -重新设定新应用窗口的大小
EV_DEVICE-SELECT       -重新设定新设备窗口的大小
EV_COMTEXT CHANGE      -当前上下文发生变化
EV_TIMER               -定时器/报警器设定在特定时刻
EV_DROP_CONTEXT        -上下文被拖放
EV_DROP_PAGE           -页面信息被拖放
EV_DEVICE_STATUS       -特定设备的状态放生变化
隐含事件的实例:
EV_APP_ACTIVE          -激活新的应用
EV_APP_INACTIVE        -使应用处于非激活状态
EV_APP_TERMINATE       -关闭/暂时中止应用
强制事件类型
EV_CONFIG_CHANGE       -改变配置,例如字体、颜色、布局和安全功能等
EV_SHUTDOWN            -关闭应用
EV_FREE-RESOURCE       -释放特定资源
图10为上下文管理器的示意图,它示出了与外壳用户接口310和资源管理器(RM)330的交互方式。具体而言,用户的外壳命令由事件管理器400接收并传递到所作用的应用。同样,事件管理器接收来自资源管理器的信息(例如新近释放的资源)并根据配置数据库内描述的对该数据的订购情况向每个所作用的应用提供该信息。比较好的是,事件管理器立即通知所作用的应用事件已经发生;如果所作用的应用处于繁忙状态或者没有被激活,则比较好的是事件通知将被列入队列以便以后发送,否则事件管理器调用应用的通知方法来触发应用的事件。事件队列的服务比较好的是通过报文发布方式完成,或者对于每个应用根据随后所需的通知对事件队列分开轮询。最好的办法是,如果发生强制事件,则强制所有应用都立即得到通知,即使应用处于繁忙状态。同样,由于隐含事件代表某一应用订购,所以如果发生应用的隐含事件,则立即通知该应用。事件管理器属于并专用于外壳程序,并且比较好的是不要被其它应用“公”用。
如上所述,本系统控制着操作和应用命令。但是应用实际上未作修改并嵌入外壳而无需另外的代码。在这种方式下,应用控制着所设计的I/O(输入/输出)功能,除了上下文管理器设定的上下文附加输入以外。图11对此加以图示,图中应用A1-A3通过操作系统I/O控制选定的对电子邮件343、传真机344和/或打印机的输出。如果A3由现存的上下文设定为输出至打印机,则输出经操作系统被送至打印机346。在每个例子中,无需另外的应用代码将应用命令集成到外壳程序内。
图12示出了配置数据库与上下文管理器控制的每个应用之间的关系,图中配置数据库440存储在工作站硬盘上。在这种方式下,上下文设定事件的输入需要检查配置数据库440和更新订购的应用。
从图14开始是外壳启动过程的逻辑流程图,这些附图更有助于理解系统结构。在该过程中,初始化逻辑路径开始于块600并转入测试610,确定是否有另一外壳在运行。如果“是”,则终止当前序列,即块620。这防止了多个外壳程序进发运行,否则毫无疑问那样将引起系统资源的紧张。如果测试610的结果为否,则逻辑流程转入块630,对配置数据库的系统启动特性进行访问。首先,系统确定数据库是否可以使用,即测试640-如果否,则系统如同前面一样依次终止。
数据库的确认(测试640的“是”)使系统按照存储值初始化,即块650-680;特别是访问每个外壳单元,即块655,生成该单元的分发处理,即块660,并借助从数据库检索的值初始化单元,即块670,对单元进行检查,即测试680-该子程序对外壳内所有单元都迭代处理,即测试690。外壳单元包括上述事件管理器、上下文管理器、资源管理器和其它被外壳用来完成操作任务的对象。在每个单元中,基于编程接口的OLE允许用上下文特定数据和命令配置。特别是分发处理向对象提供了指针,使其在后续操作中具有特定上下文的性能。
所有的单元一旦全部初始化,则外壳框架即告完成并准备将特定的应用加载入初始序列。这些应用包括(ⅰ)驻留在外壳顶层的桌面应用,例如市场提示符(图1的140);(ⅱ)外壳可用的工作区应用,通过按钮或标签访问;以及(ⅲ)服务应用-不可见但可支持上述(ⅰ)和(ⅱ)的应用。
参见图14,系统接着寻址桌面应用的启动地址,即块700-750。在该迭代过程中,每个应用都被分配以合适级别的系统资源,即块710(图15中有详细图示)并更新设定应用环境的内部表,即块720-将列表信息放入合适的表格内,即块725。根据表值,随后激活选定的应用,即块730,并在屏幕上显示,即块740。在初始化启动过程期间对配置表定义的每个桌面应用重复该过程,即块750。完成之后,终止外壳启动子程序,即块760。
如上所述,资源分配是外壳应用管理的一个重要方面。图15示出了该过程的逻辑图,它用“获取资源”的OLE命令初始化,即块800。系统首先确定找到的资源是否可用,即测试810;如果可用,则测试资源是否已经启动,即测试820;如果先前已启动,则在块830调整资源的基准计数以支持新的应用资源需要。此外,系统确定资源的额外使用是否过载。
系统资源可以分为两类。许多资源实际上是其它应用,例如获取实时市场数据或提供对客户数据库访问的程序。另一类资源是前一种以外的资源,其被指定为“命名”资源。命名资源包括各种系统属性,有网络链接、CPU用法、存储器分配等。重要的是,每种资源可包含一个或多个附属程序-原始资源操作所需要的附加资源;这些附属程序可以是命名资源或应用资源。例如,如果对远程数据库的访问是原始资源,则它依赖于访问远程数据库的网络链接资源的用法。此外,这些附属程序可进一步包含访问所需的附属程序。因此基础资源的分配要求系统在附属资源最低的层次上启动并开始构建操作以支持基础资源、依次迭代激活附属资源、确认它们的可用程度和根据从配置数据库提取的数据对每一个进行配置。图13示出了该过程。
在上述分配过程中,许多资源变为由多个应用共享。系统必须精确跟踪每个资源的使用情况和扩展出来的附属程序树。为此,每个资源与一基准计数器相关联-其数值用来跟踪应用利用资源的次数。计数器确保了资源不会被滥用,其最大值是准任意性质的,或更好的是一个程序员定义的数值,设定了应用可访问资源的最多次数。基准计数器允许在应用释放期间依次“释放”资源,从而允许系统在基准计数器为零时终止关闭资源。作为附属程序和资源分配的实例,如果10000用户中的每一个都使用需要访问远程数据库的5个应用,则看上去需要50000个数据库访问端口可用并且每台工作站的远程访问需要5个通信端口。在本系统下,每个(本地)工作站环境可以只能有两个应用利用一个通信端口访问数据库,从而使远地数据库只需处理20000个端口的请求,从而减少了冗余度并释放了被其它应用占用的资源。
参见图15,如果资源还没有预先启动,则逻辑分支到块825-940,该逻辑涉及启动资源和附属程序的过程。在该逻辑序列中,附属程序列表从存储器上访问,即块825-它表示与资源相关的附属程序的级别。对于列表中的每个附属程序,系统返回块800-“获取资源”,并按照处理原始资源同样的方式处理其附属程序。在访问资源之后,即块850之后,进行检查,即测试860。对测试860的否定应答使逻辑序列转入测试870以确定资源是否为选项;如果“是”,则逻辑序列返回循环并返回列表上的下一附属程序,即块950。如果附属程序不是可选项,即测试870的结果为“否”,则逻辑序列转入附属程序出错的循环890-920,即块930;块900触发“释放资源”处理(图17-对于失败阶段被初始化的每个资源)并从监视列表中去除分配,即块910。
返回块950之后,启动资源(根据处理中的迭代级别确定基础资源或附属资源)并在测试960中予以确认。测试960的否定应答表示资源失败,根据这种失败结果,系统转入“释放资源”过程以恢复在这次迭代期间激活的现有和附属资源,即块1020。一旦释放先前调用的所有资源,根据释放资源处理,产生出错报文,表示所寻资源存在缺陷,即块1030。
假定测试960的应答是肯定的,则逻辑序列进入块970并在存储器地址下存储与本次迭代相关的资源数据,即块980。根据新资源的使用情况,基准计数增一,即块990,并且将使用情况加入监视列表中,即块1010。
图16示出了外壳关闭过程,开始于块1100。该过程对所有应用都是迭代的,即块1110,在块1120中释放资源并在块1130中清除内部表。在关闭所有应用之后,关闭外壳单元,即块1105。
在外壳操作和关闭期间,应用被关闭,附属程序被放弃,而其它系统事件释放系统资源。为依次完成该过程,系统提供图17所示的逻辑结构。释放资源子程序开始于块1200,并延续至减少特定资源基准计数的块1210。如果基准计数减至零,则测试1220表示外壳已经完全释放资源,逻辑序列转入块1225,关闭资源并终止与资源相关的运行。
但是,如果资源对其它应用而言仍然是激活的(例如本地工作站上的其它应用),即测试1220的结果为“是”,则逻辑序列延续至块1230,对存储器资源的附属列表进行访问。该列表标示出为该使用而被释放的该资源的所有附属程序,但该资源仍是系统其它部分所需的。与前面的“获取资源”子程序一样,所有的附属程序都被访问-但是现在次序相反。因此在块1240-1290的过程中,系统依次检查每个附属程序,减少基准计数,即块1250。如果计数值为零,则在块1270从监视列表中提取附属程序并在块1280关闭。对于每个附属程序,在块1290内继续迭代过程-一旦处理完所有的附属程序,则释放基础资源(顶层),即块1300。在块1320终止该过程。
虽然上面借助实施例对本发明作了描述,但是本发明的精神和范围由后面所附权利要求限定。

Claims (11)

1.一种用于工作站数据处理系统的组合系统,其特征在于将多个应用的控制与操作特性整合在一起,包含:
数据显示器,用来根据多个上下文确定参数控制显示与所述应用有关的信息;
用户输入设备,由所述用户操作输入与所述工作站操作和应用有关的命令和选择;
存储器装置,用来存储控制用户接口外壳的程序和存储有与所述外壳操作特性有关的数据的配置数据库;
外壳控制装置,用来将一组操作参数赋予所述应用,所述参数包括资源分配、上下文和显示特征,其中所述外壳控制装置进一步包括事件管理器、上下文管理器和资源管理器。
2.如权利要求1所述的系统,其特征在于所述事件管理器实现了多个事件类别,包括订购事件和强制事件。
3.如权利要求2所述的系统,其特征在于所述事件管理器进一步实现了隐含事件。
4.一种将同一工作站上多个应用的控制与操作整合在一起的系统,其特征在于包含:
通用计算机,能够同时运行所述多个应用,所述通用计算机包括用于与用户之间输入和输出以及可选的与设备之间的输入和/或输出的操作系统;
事件管理器,用来通知至少一个所述应用一个事件已发生;
上下文管理器,用来控制与所述用户之间的输入和输出并且所述应用响应(a)所述用户的识别以及(b)一个或多个所述应用所需的信息;以及
资源管理器,用来控制对一个或多个所述应用所需资源的访问。
5.如权利要求4所述的系统,其特征在于事件选自一个组,该组包括订购事件、隐含事件、强制事件以及它们的组合。
6.如权利要求4所述的系统,其特征在于进一步包括专门的应用。
7.如权利要求4所述的系统,其特征在于进一步包括与远程计算机的远程链接。
8.如权利要求7所述的系统,其特征在于所述远程计算机提供对所述链接的数据库信息。
9.如权利要求8所述的系统,其特征在于所述数据库信息可以实时利用。
10.如权利要求8所述的系统,其特征在于所述数据库信息可以延迟使用。
11.如权利要求4所述的系统,其特征在于所述通用计算机进一步包括图形用户接口。
CN97196190A 1996-05-06 1997-05-05 一种组合的工作站数据处理系统 Expired - Fee Related CN1132095C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/642,212 US5878258A (en) 1996-05-06 1996-05-06 Seamless application interface manager
US642,212 1996-05-06

Publications (2)

Publication Number Publication Date
CN1225182A true CN1225182A (zh) 1999-08-04
CN1132095C CN1132095C (zh) 2003-12-24

Family

ID=24575670

Family Applications (1)

Application Number Title Priority Date Filing Date
CN97196190A Expired - Fee Related CN1132095C (zh) 1996-05-06 1997-05-05 一种组合的工作站数据处理系统

Country Status (9)

Country Link
US (1) US5878258A (zh)
EP (1) EP0976033B1 (zh)
JP (1) JP3940171B2 (zh)
CN (1) CN1132095C (zh)
AT (1) ATE404915T1 (zh)
AU (1) AU709871B2 (zh)
CA (1) CA2253552C (zh)
DE (1) DE69738911D1 (zh)
WO (1) WO1997042568A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1245309B (zh) * 1998-08-13 2010-06-16 株式会社理光 用户接口装置
CN101288280B (zh) * 2005-09-28 2012-12-05 蒂蒙系统公司 用于显示账户或设备的特定特性的系统及方法
CN102150133B (zh) * 2008-06-25 2014-12-10 霍尼韦尔国际公司 用于向桌面应用程序提供公共时间操控服务的系统和方法

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1055269A (ja) * 1996-08-08 1998-02-24 Fuji Xerox Co Ltd 情報処理装置
US7058822B2 (en) 2000-03-30 2006-06-06 Finjan Software, Ltd. Malicious mobile code runtime monitoring system and methods
US8079086B1 (en) 1997-11-06 2011-12-13 Finjan, Inc. Malicious mobile code runtime monitoring system and methods
US9219755B2 (en) 1996-11-08 2015-12-22 Finjan, Inc. Malicious mobile code runtime monitoring system and methods
US6317742B1 (en) * 1997-01-09 2001-11-13 Sun Microsystems, Inc. Method and apparatus for controlling software access to system resources
US6061696A (en) * 1997-04-28 2000-05-09 Computer Associates Think, Inc. Generating multimedia documents
US6487578B2 (en) * 1997-09-29 2002-11-26 Intel Corporation Dynamic feedback costing to enable adaptive control of resource utilization
US6144975A (en) * 1998-05-05 2000-11-07 Fmr Corporation Computer system for intelligent document management
WO1999066383A2 (en) * 1998-06-15 1999-12-23 Dmw Worldwide, Inc. Method and apparatus for assessing the security of a computer system
US7668772B1 (en) 1998-10-21 2010-02-23 Island Intellectual Property Llc Systems and methods for money fund banking with flexible interest allocation
US7536350B1 (en) 1998-10-21 2009-05-19 Island Intellectual Property Llc Systems and methods for providing enhanced account management services for multiple banks
US7752129B2 (en) * 1998-10-21 2010-07-06 Island Intellectual Property Llc Systems and methods for managing client accounts
US7680734B1 (en) 1998-10-21 2010-03-16 Island Intellectual Property Llc Money fund banking system
US7519551B2 (en) * 1998-10-21 2009-04-14 Island Intellectual Property Llc Systems and methods for administering return sweep accounts
US6374231B1 (en) 1998-10-21 2002-04-16 Bruce Bent Money fund banking system
US7509286B1 (en) 1998-10-21 2009-03-24 Reserve Management Corporation Systems and methods for money fund banking with flexible interest allocation
US6670973B1 (en) * 1999-06-29 2003-12-30 Electronic Data Systems Corporation System and method for representing the information technology infrastructure of an organization
US7212993B1 (en) 1999-07-27 2007-05-01 Merrill Lynch & Co., Inc. Security receipts management system
US7542921B1 (en) 1999-09-30 2009-06-02 Jpmorgan Chase Bank, N.A. Network-based financial planning system and method
US6978457B1 (en) 2000-01-31 2005-12-20 Agilent Technologies, Inc. Method and system increasing performance substituting finite state machine control with hardware-implemented data structure manipulation
AUPQ654400A0 (en) 2000-03-28 2000-04-20 Optimiser Pty Ltd Authorising use of a computer program
US7212996B1 (en) 2000-04-20 2007-05-01 Jpmorgan Chase Bank, N.A. System and method for dynamic, multivariable comparison of financial products
US6880006B1 (en) 2000-04-21 2005-04-12 International Business Machines Corporation System and method for contextual passive rule-based navigation between applications supporting network-disconnected use
US20020087579A1 (en) * 2000-06-23 2002-07-04 Alan Chasanoff Object universe
US7031935B1 (en) * 2000-07-31 2006-04-18 J.P. Morgan Advisory Services Inc. Method and system for computing path dependent probabilities of attaining financial goals
EP1323155A2 (en) * 2000-08-21 2003-07-02 Bsquare Corporation Method and apparatus for producing functionality and user interfaces for devices having an embedded operating system
CA2431491C (en) * 2000-12-11 2012-03-20 Sentillion, Inc. Context management with audit capability
US7295999B1 (en) * 2000-12-20 2007-11-13 Jpmorgan Chase Bank, N.A. System and method for determining eligibility and enrolling members in various programs
US7895098B2 (en) 2001-03-01 2011-02-22 Jpmorgan Chase Bank, N.A. System and method for measuring and utilizing pooling analytics
US7162743B1 (en) * 2001-10-04 2007-01-09 Hewlett-Packard Development Company, L.P. System and method of limiting access to protected hardware addresses and processor instructions
US20030110111A1 (en) * 2001-12-07 2003-06-12 Nalebuff Barry J. Home equity insurance financial product
US20030110122A1 (en) * 2001-12-07 2003-06-12 Nalebuff Barry J. Home equity insurance financial product
US20030120660A1 (en) * 2001-12-07 2003-06-26 Maritzen L. Michael Consumer-centric context-aware switching model
US7756896B1 (en) 2002-03-11 2010-07-13 Jp Morgan Chase Bank System and method for multi-dimensional risk analysis
US8751391B2 (en) 2002-03-29 2014-06-10 Jpmorgan Chase Bank, N.A. System and process for performing purchase transactions using tokens
US7630989B2 (en) 2002-05-17 2009-12-08 Colonial First State Investments Ltd. Transaction management system
US7606756B2 (en) * 2002-08-02 2009-10-20 Jpmorgan Chase Bank, N.A. Synthetic funds having structured notes
US20040075675A1 (en) * 2002-10-17 2004-04-22 Tommi Raivisto Apparatus and method for accessing services via a mobile terminal
US20040148241A1 (en) * 2003-01-24 2004-07-29 Qi Thomas J. Method of evaluating a portfolio of leased items
US20040148566A1 (en) * 2003-01-24 2004-07-29 Jp Morgan Chase Bank Method to evaluate project viability
US8150766B1 (en) 2003-01-27 2012-04-03 Island Intellectual Property Llc System and method for investing public deposits
US7281217B2 (en) 2003-05-30 2007-10-09 International Business Machines Corporation System and method for user driven interactive application integration
US7624068B1 (en) 2003-08-18 2009-11-24 Jpmorgan Chase Bank, N.A. Method and system for dynamically adjusting discount rates for a card transaction
US20050060252A1 (en) * 2003-09-11 2005-03-17 Andrew Doddington Graphical software tool for modeling financial products
US20050262100A1 (en) * 2004-05-19 2005-11-24 Bea Systems, Inc. System and method for context propagation in application servers and transaction-based systems
US8429006B1 (en) 2004-06-18 2013-04-23 Jpmorgan Chase Bank, N.A. System and method for offer targeting
US7974895B1 (en) 2004-07-16 2011-07-05 Jp Morgan Chase Bank System and method for developing finance rate information
WO2006021129A1 (en) * 2004-08-25 2006-03-02 Intel Corporation Method and apparatus of resource access synchronization in a basic input and output system of a computer system
US7480631B1 (en) 2004-12-15 2009-01-20 Jpmorgan Chase Bank, N.A. System and method for detecting and processing fraud and credit abuse
US20110161958A1 (en) * 2005-01-03 2011-06-30 Jp Morgan Chase Bank Method and system for managing business calculations using multi-dimensional data
US7890343B1 (en) 2005-01-11 2011-02-15 Jp Morgan Chase Bank System and method for generating risk management curves
US7774332B2 (en) * 2005-04-12 2010-08-10 International Business Machines Corporation Enabling interactive integration of network-accessible applications in a content aggregation framework
JP4207050B2 (ja) * 2005-06-27 2009-01-14 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置
US7751801B2 (en) * 2005-12-28 2010-07-06 Nokia Corporation Service trial system and method for individuals and communities
US7962396B1 (en) 2006-02-03 2011-06-14 Jpmorgan Chase Bank, N.A. System and method for managing risk
US7707192B1 (en) 2006-05-23 2010-04-27 Jp Morgan Chase Bank, N.A. Confidence index for assets
US8380621B1 (en) 2007-02-28 2013-02-19 Island Intellectual Property Llc Systems, methods and program products for swap processing for uninsured accounts
US8260705B1 (en) 2007-02-28 2012-09-04 Island Intellectual Property Llc Systems, methods and program products for deposit and withdrawal processing
US8032456B1 (en) 2008-02-11 2011-10-04 Island Intellectual Property Llc System, methods and program products for processing for a self clearing broker dealer
US7752107B1 (en) 2007-02-28 2010-07-06 Island Intellectual Property Llc System and method for managing aggregated accounts
US8269780B2 (en) * 2007-06-07 2012-09-18 Apple Inc. Batching graphics operations with time stamp tracking
US8237723B2 (en) 2007-06-07 2012-08-07 Apple Inc. Deferred deletion and cleanup for graphics resources
US8478637B1 (en) 2008-04-08 2013-07-02 Jpmorgan Chase Bank, N.A. Index for assessing discount potential
SG173483A1 (en) * 2009-02-03 2011-09-29 Calgary Scient Inc Method and system for enabling interaction with a plurality of applications using a single user interface
US8781931B1 (en) 2009-05-26 2014-07-15 Island Intellectual Property Llc Method and system for allocating deposits over a plurality of depository institutions
US8352342B1 (en) 2009-06-19 2013-01-08 Island Intellectual Property Llc Method and system for determining fees for deposits allocated over a plurality of deposit institutions
US20100325536A1 (en) * 2009-06-19 2010-12-23 Microsoft Corporation Application orchestrator
US8370236B1 (en) 2009-11-24 2013-02-05 Island Intellectual Property Llc Method and system for allocating funds over a plurality of time deposit instruments in depository institutions
US8458089B1 (en) 2010-06-14 2013-06-04 Island Intellectual Property Llc System, method and program product for administering fund movements using depository institution groups
US8583545B1 (en) 2010-09-20 2013-11-12 Island Intellectual Property Llc Systems and methods for money fund banking with flexible interest allocation
WO2013025938A2 (en) 2011-08-16 2013-02-21 Sl-X Ip Sarl Systems and methods for electronically initiating and executing securities lending transactions
US8706610B2 (en) 2011-08-16 2014-04-22 Sl-X Technology Uk Ltd. Systems and methods for electronically initiating and executing securities lending transactions
US8452702B1 (en) 2011-09-08 2013-05-28 Island Intellectual Property Llc System, method and program product for minimizing fund movements
US8655689B1 (en) 2011-10-13 2014-02-18 Island Intellectual Property Llc System, method and program product for modeling fund movements
US9563626B1 (en) * 2011-12-08 2017-02-07 Amazon Technologies, Inc. Offline management of data center resource information
CN102662925B (zh) * 2012-03-16 2015-03-11 北京护航科技有限公司 一种将不同格式的配置语言转换成通用功能性描述语言的方法
US9313162B2 (en) 2012-12-13 2016-04-12 Microsoft Technology Licensing, Llc Task completion in email using third party app
US10528385B2 (en) 2012-12-13 2020-01-07 Microsoft Technology Licensing, Llc Task completion through inter-application communication
US9374370B1 (en) 2015-01-23 2016-06-21 Island Intellectual Property, Llc Invariant biohash security system and method
US11115211B2 (en) 2015-05-07 2021-09-07 Ba Insight, Llc Secure container platform for resource access and placement on unmanaged and unsecured devices
US10546299B1 (en) * 2015-06-18 2020-01-28 Wells Fargo Bank, N.A. Fraudulent activity shell
ITUB20159753A1 (it) * 2015-12-30 2017-06-30 Qayzen Srl Sistema per l?esecuzione integrata ed interoperativa di applicazioni diverse ed indipendenti
US20180129994A1 (en) 2016-11-06 2018-05-10 Microsoft Technology Licensing, Llc Efficiency enhancements in task management applications
US10656927B2 (en) * 2017-10-27 2020-05-19 Intuit Inc. Methods, systems, and computer program products for automating releases and deployment of a softawre application along the pipeline in continuous release and deployment of software application delivery models

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5214756A (en) * 1989-03-10 1993-05-25 International Business Machines Corporation Direct manipulation of icons via conversational linking
US5241625A (en) * 1990-11-27 1993-08-31 Farallon Computing, Inc. Screen image sharing among heterogeneous computers
DE69129298T2 (de) * 1991-02-05 1998-11-19 Ibm Leitwegsteuerung für transaktionsbefehle
US5430836A (en) * 1991-03-01 1995-07-04 Ast Research, Inc. Application control module for common user access interface
US5237684A (en) * 1991-08-12 1993-08-17 International Business Machines Corporation Customized and versatile event monitor within event management services of a computer system
US5305454A (en) * 1991-08-12 1994-04-19 International Business Machines Corporation Notification of event handlers in broadcast or propagation mode by event management services in a computer system
US5301326A (en) * 1991-09-24 1994-04-05 Microsoft Corporation Method and system for controlling the execution of an application program
US5414812A (en) * 1992-03-27 1995-05-09 International Business Machines Corporation System for using object-oriented hierarchical representation to implement a configuration database for a layered computer network communications subsystem
US5566337A (en) * 1994-05-13 1996-10-15 Apple Computer, Inc. Method and apparatus for distributing events in an operating system
US5764985A (en) * 1994-12-13 1998-06-09 Microsoft Corp Notification mechanism for coordinating software extensions

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1245309B (zh) * 1998-08-13 2010-06-16 株式会社理光 用户接口装置
CN101288280B (zh) * 2005-09-28 2012-12-05 蒂蒙系统公司 用于显示账户或设备的特定特性的系统及方法
CN102150133B (zh) * 2008-06-25 2014-12-10 霍尼韦尔国际公司 用于向桌面应用程序提供公共时间操控服务的系统和方法

Also Published As

Publication number Publication date
AU709871B2 (en) 1999-09-09
US5878258A (en) 1999-03-02
DE69738911D1 (de) 2008-09-25
EP0976033A1 (en) 2000-02-02
CN1132095C (zh) 2003-12-24
EP0976033B1 (en) 2008-08-13
CA2253552C (en) 2010-11-16
JP3940171B2 (ja) 2007-07-04
CA2253552A1 (en) 1997-11-13
AU2931597A (en) 1997-11-26
EP0976033A4 (en) 2001-09-26
JP2000512042A (ja) 2000-09-12
ATE404915T1 (de) 2008-08-15
WO1997042568A1 (en) 1997-11-13

Similar Documents

Publication Publication Date Title
CN1132095C (zh) 一种组合的工作站数据处理系统
CN102033743B (zh) 一种应用插件扩充模型驱动开发能力的系统及其方法
EP0647909B1 (en) Information catalog system with object-dependent functionality
CN1129068C (zh) 模型效果分析方法
US5051891A (en) Method to manage transfer of ownership of electronic documents stored in an interactive information handling system
US8219987B1 (en) Optimized virtual machine specification for provisioning application specific runtime environment
JP2583014B2 (ja) データ処理システムにより環境を管理する方法及びシステム
US9996593B1 (en) Parallel processing framework
US9268534B1 (en) Managing the release of electronic content using a template without version logic
CN1755683A (zh) 上下文动作的发布
CN102375731A (zh) 一种免编码集成应用软件平台系统
CN1723443A (zh) 用于带有共享资源的服务器的校正操作
WO1997042568A9 (en) Seamless application interface manager
JPH0944361A (ja) アプリケーション・プログラムのネットワーク導入のための導入計画オブジェクト
CN107329991B (zh) 一种列表页访问和展示方法及其系统
CN101960439A (zh) 客户端环境创建系统、客户端环境创建方法、客户端环境创建程序和存储介质
CN111651738B (zh) 基于前后端分离架构的细粒度角色权限统一管理方法及电子装置
US5813015A (en) Method and apparatus for increasing available storage space on a computer system by disposing of data with user defined characteristics
US8375324B1 (en) Computer-implemented document manager application enabler system and method
US7877386B2 (en) Business object search method process and presentation
CN102446094A (zh) 用于有效地实现系统和桌面配置增强的装置和方法
CN108549659B (zh) 一种数据仓库管理系统及管理方法
CN114327374A (zh) 业务流程的生成方法、装置及计算机设备
TWI267758B (en) Method, apparatus and recording medium for determining unreturned standby resource usage
CN112035555A (zh) 一种信息展示方法、装置及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20031224

Termination date: 20140505