会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 按使用付费 / 计算机使用的精密计量

计算机使用的精密计量

申请号 CN200580038771.9 申请日 2005-11-12 公开(公告)号 CN101069215A 公开(公告)日 2007-11-07
申请人 微软公司; 发明人 A·法兰克; T·G·菲力普斯; G·V·赖利;
摘要 按使用付费或计量使用计算机利用余额管理器来监视使用,并在该计算机处于活动使用时根据第一使用调度表来更新值余额。当该计算机的活动水平降低到低于一阈值时,余额管理器可以根据第二使用调度表来更新值余额。通过监视该计算机的一个或多个组件的活动水平来确定计算机的活动水平,这些组件包括输入设备、通信控制器和处理单元。可应用规则来判定何时在诸使用调度表之间切换,以及是否应该扣除值余额。
权利要求

1.一种计量计算机中的使用的方法,包括:

根据第一使用调度表测量所述计算机的使用;

监视所述计算机的活动水平;以及

当所述计算机的活动水平到达一阈值时,根据第二使用调度表测量所述计算 机的使用。

2.如权利要求1所述的方法,其特征在于,所述第二使用调度表以比所述第 一使用调度表低的费率来测量使用。

3.如权利要求1所述的方法,其特征在于,所述监视计算机的活动水平还包 括监视所述计算机的多个组件的活动水平,其中所述阈值对应于所述多个组件中的 至少其中之一的活动水平。

4.如权利要求1所述的方法,其特征在于,还包括根据所述第一和第二使用 调度表的其中之一来记录所述计算机的使用。

5.如权利要求1所述的方法,其特征在于,在所述计算机的活动水平至少维 持一预定水平一段时间后,所述计算机的活动水平到达所述活动水平阈值。

6.如权利要求5所述的方法,其特征在于,还包括调整对应于在所述计算机 的活动水平至少维持所述预定水平之后的时间段的使用值。

7.如权利要求1所述的方法,其特征在于,所述计算机的活动水平对应于输 入设备、打印机、网络摄像头、硬盘驱动器、通信设备和处理单元的其中之一的活 动水平。

8.如权利要求1所述的方法,其特征在于,所述计算机的活动水平到达对应 于运行在所述计算机上的应用程序的阈值。

9.如权利要求8所述的方法,其特征在于,除了在所述应用程序是屏幕保护 程序、病毒检查程序、实用程序和更新程序的其中之一时,所述计算机的活动水平 到达对应于运行在所述计算机上的应用程序的阈值。

10.一种适用于计量使用的计算机,包括:

用于存储数据和程序代码的存储器;以及

耦合到所述存储器的处理器,其中所述处理器执行一计量程序,所述计量程 序用于感知所述计算机的活动水平,并用于根据所述计算机的活动水平来计量使 用。

11.如权利要求10所述的计算机,其特征在于,所述计量程序确定输入设备、 打印机、网络摄像头、硬盘驱动器、通信设备、显示驱动器和处理器的至少其中之 一的活动水平。

12.如权利要求10所述的计算机,其特征在于,所述计量程序评估对应于所 述处理器活动水平的计量使用,所述处理器活动水平是以下之一:低于一空闲阈值, 和归因于实用程序、屏幕保护程序、病毒检查程序、更新程序和所述计量程序的其 中之一。

13.如权利要求10所述的计算机,其特征在于,所述计量程序暂停计量对应 于所述计算机活动水平低于一阈值的计算机使用。

14.如权利要求10所述的计算机,其特征在于,所述存储器存储与计算机使 用相关联的计量数据,且所述程序根据所述活动数据的曲线来调整所述使用数据。

15.一种存储供在计算机中使用的计算机可执行指令的计算机可读的介质, 所述计算机可执行指令用于执行一种计量方法,包括:评定一计算机的组件的活动水平;

响应于所述计算机的所述组件的活动水平,判定计算机使用的计量何时活动。

16.如权利要求15所述的计算机可读介质,其特征在于,所述计算机使用的 计量测量使用时间,并且响应于所述计算机的所述组件的活动水平是开和关的其中 之一。

17.如权利要求15所述的计算机可读介质,其特征在于,所述评定计算机的 组件的活动水平还包括用于评定输入设备、打印机、网络摄像头、存储设备、通信 设备和处理器的至少其中之一的活动水平的计算机可执行指令。

18.如权利要求17所述的计算机可读介质,其特征在于,评定所述处理器的 活动水平还包括评定屏幕保护程序、病毒检查程序、实用程序和更新程序的至少其 中之一的执行的计算机可执行指令。

19.如权利要求15所述的计算机可读介质,其特征在于,当所述活动水平至 少维持一阈值一段时间时,响应于所述计算机的所述组件的活动水平来判定所述计 算机使用的计量。

20.如权利要求19所述的计算机可读介质,其特征在于,对应于所述时间段 来调整所述计算机使用的计量。

说明书全文

背景

即用即付(pay-as-you-go)或按使用付费(pay-per-use)商业模型已经被用于 从蜂窝电话到商业自助洗衣店的许多商业领域。在开发即用即付商务时,供应商, 例如蜂窝电话供应商以比市场低的成本提供硬件(蜂窝电话)的使用,以换取将订 户保留在他们的网络的合同。在这个特定的例子中,顾客花很少钱或不花钱接收一 个蜂窝电话,作为交换,签署在给定时间段内成为订户的合同。在合同的过程中, 服务供应商通过向消费者收取使用蜂窝电话的费用来收回硬件的成本。

即用即付商业模型建立在计量使用上。在所提供的蜂窝电话的情况中,所计 量的使用是分钟数或传送的数据的兆字节数。在其中服务供应商或承销商补贴硬件 成本从而期望将来收益的用于计算机的即用即付商业模型中,存在能够被监视或计 量的使用的许多方面。然而,并不能统一地依靠计量数据的所有来源。当数据表明 计算机是在被使用中但实际上不是时,订户可能无法从他或她的订阅中获得全部价 值。相反,当计算机正在被使用但没有被计量时,服务供应商没有接收到公平的补 偿。

概述

准确地跟踪使用,尤其是与计量合同有关的使用的能力,是允许订户以比市 场更低的价格购买并使用计算机来换取订阅付费的商业模型中的重要部分。然而, 跟踪计算机使用会导致其中存在关于计量条件是否存在的模糊性的某些情形。例 如,以分钟计数来出售处理器使用时间的服务供应商可能需要周期性的病毒扫描, 这被编程为在星期日午夜运行。假定的扫描需要1.5小时。当执行所需要的任务而 对订户没有直接利益时,该订户是否应该为CPU使用付费并不清楚。类似地,订 户可能正在以几乎没有的处理器活动查看一个长文档。此处订户有直接利益,但是 根据严格的处理器活动,计算机看上去是非活动的。所谓的“精密计量”使用各种 输入和商业规则来达成关于是否计量计算机的决定。计量程序可以评定显示器状 态、通信、硬盘活动以及甚至是由处理器执行的程序,以判定是否应该累计使用。 某些活动本身可能足以激活计量,例如鼠标移动。如磁盘存取等其他活动可能需要 根据诸如正在运行的病毒检查程序等在判定是否计量计算机之前的其他条件来评 估。

附图简述

图1是计算机网络的简化和代表性框图;

图2是以被连接到图1的网络的计算机的框图;

图3是图2的计算机的许可证供应模块的框图;

图4是描述计量图2的计算机的使用的方法的流程图;以及

图5是描述图2的计算机的使用曲线的图表。

各实施例的详细描述

尽管以下文本陈述了众多不同实施例的详细描述,但是应该理解,该描述的 法律范围由在本专利所附的权利要求书来定义。该详细描述应被解释为只是示例性 的,并且不描述每一可能的实施例,因为描述每一可能实施例即使不是不可能的也 是不切实际的。使用现有技术或在本专利提交日之后开发的技术可以实现许多其他 替换实施例,这仍然落入权利要求书的范围之内。

应该理解,除非在本专利中明确地使用句子“如此处所使用的,术语‘___’ 在此被定义为意指……”或类似的句子来定义一个术语,否则没有意图明确地或含 蓄地限制该术语的意义超出其普通或平常的意义,并且这一术语不应该被解释为被 限制在基于在本专利的任何部分(除了权利要求书的语言之外)所做的任何陈述的 范围之内。就本专利所附的权利要求书中所陈述的任何术语在本专利中以符合单数 意义的方式来提及而言,这是为了清楚起见而不使读者困惑,且并不意味着这样的 权利要求项被含蓄地或以其他方式限制于该单数意义。最后,除非权利要求要素通 过陈述词语“装置”和功能而没有任何结构的陈述来定义,否则并不意味着任何权 利要求要素基于35 U.S.C.§112第六段的应用来解释。

许多独创性功能和许多独创性原理都最好借助于或使用软件程序或指令和如 专用IC等集成电路(IC)来实现。尽管需要可能的重大努力和由例如可用时间、 现有技术和经济考虑推动的许多设计选择,但可以预期普通技术人员在由此处揭示 的概念和原理指导时将能够容易地用最少的实验来生成这类软件指令和程序以及 IC。因此,为了简短起见并将模糊按照本发明的原理和概念的任何危险最小化,这 类软件和IC的进一步描述(如果有的话)将被限制在关于优选实施例的原理和概 念的本质上。

图1示出了可以用来实现按使用付费计算机系统的网络10。网络10可以是 因特网、虚拟专用网络(VPN)或允许一台或多台计算机、通信设备、数据库等通 信上相互连接的任何其他网络。网络10可以经由以太网16和路由器18以及陆上 通信线20连接到个人计算机12和计算机终端14。另一方面,网络10可以经由无 线通信站26和无线链路28无线地连接到膝上型计算机22和个人数字助理24。类 似地,服务器30可以使用通信链路32连接到网络10,而大型机34可以使用另一 个通信链路36连接到的网络10。

图2以示出了可以连接到网络10并用来实现动态软件供应系统的一个或多个 组件的计算机110形式的计算设备。计算机110的组件可以包括但不限于,处理单 元120、系统存储器130以及将包括系统存储器在内的各种系统组件耦合到处理单 元120的系统总线121。系统总线121可以是若干总线结构类型中的任一种,包括 存储器总线或存储器控制器、外围总线以及使用多种总线体系结构中的任一种的局 部总线。作为例子而非限制,此类体系结构包括工业标准体系结构(ISA)总线、 微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA) 局部总线以及也被称为Mezzanine总线的外围部件互连(PCI)总线。

计算机110也可以包括许可证供应模块(LPM)125。在图3中更详细地讨论 了LPM 125。简而言之,LPM 125为计算机110的即用即付或按使用付费操作提 供便利。LPM 125管理计量使用、当所计量的使用到期时进行制裁、并管理用于 为计算机110补充追加使用的数据的请求、接收以及处理。

计算机110通常包括各种计算机可读介质。计算机可读介质可以是能够被计 算机110访问的任何可用介质,并且包括易失性和非易失性介质以及可移动和不可 移动介质。作为例子而非限制,计算机可读介质可以包括计算机存储介质和通信介 质。计算机存储介质包括用存储如计算机可读指令、数据结构、程序模块或其他数 据等信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质。 计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或者其他存储器技术、 CD-ROM、数字通用盘(DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其 他磁存储设备、或者任何其他可以用于存储所需信息并可由计算机110访问的介 质。通信介质一般以如载波或者其他传输机制等已调制数据信号的形式具体化计算 机可读指令、数据结构、程序模块或其他数据,并包括任意信息传递介质。术语“已 调制数据信号”意指以在该信号中编码信息的方式来设置或改变其一个或多个特性 的信号。作为例子而非限制,通信介质包括有线介质,如有线网络或者直接有线连 接,以及无线介质,如声学、射频、红外和其他无线介质。上述任何一个的组合也 应当被包括在计算机可读介质的范围之内。

系统存储器130包括易失性和/或非易失性存储器形式的计算机存储介质,如 只读存储器(ROM)131和随机存取存储器(RAM)132。基本输入/输出系统133 (BIOS)通常被存储在ROM 131中,它包含例如在启动过程中帮助在计算机110 内的各个元件之间传输信息的基本例程。RAM 132通常包含处理单元120可立即 访问和/或目前正在操作的数据和/或程序模块。作为例子而非限制,图2示出了操 作系统134、应用程序135、其他程序模块136以及程序数据137。

计算机110也可以包括其他可移动/不可移动、易失性/非易失性计算机存储介 质。仅仅作为例子,图2示出从不可移动、非易失性磁介质读取或向其中写入的硬 盘驱动器140,从可移动、非易失性磁盘152读取或向其中写入的磁盘驱动器151 以,及从可移动、非易失性光盘156,如CD-ROM或其他光学介质读取或向其中 写入的光盘驱动器155。可以在该示例性操作环境中使用的其他可移动/不可移动、 易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字通用盘、 数字视频带、固态RAM、固态ROM等等。硬盘驱动器141通常通过不可移动存 储器接口,如接口140连接到系统总线121,而磁盘驱动器151和光盘驱动器155 通常通过可移动存储器接口,如接口150连接到系统总线121。

以上所讨论的和图2中所示的这些驱动器及其关联的计算机存储介质为计算 机110提供计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图 2中,硬盘驱动器141被示为存储操作系统144、应用程序145、其他程序模块146 和程序数据147。注意,这些组件可以等同于或不同于操作系统134、应用程序135、 其他程序模块136和程序数据137。这里对操作系统144、应用程序145、其他程 序模块146和程序数据147给予不同的标号以说明至少它们是不同的副本。用户可 以通过输入设备,如键盘162和定位设备161(通常指鼠标、跟踪球或触摸垫)向 计算机20输入命令和信息。另一输入设备可以是用于通过因特网传送图像的照相 机,即网络摄像头163。其他输入设备(未示出)可以包括麦克风、操纵杆、游戏 垫、圆盘式卫星天线、扫描仪等等。这些和其他输入设备往往通过耦合到系统总线 的用户输入接口160连接到处理单元120,但也可以通过其他接口和总线结构,如 并行端口、游戏端口或通用串行总线(USB)连接。监视器191或其他类型的显示 设备也通过接口,如视频接口190连接到系统总线121。除监视器外,计算机还可 包括其他外围输出设备,如扬声器197和打印机196,它们可通过输出外围接口190 连接。

计算机110可以使用到一台或多台远程计算机如,远程计算机180的逻辑连 接在网络化环境中操作。远程计算机180可以是个人计算机、服务器、路由器、网 络PC、对等设备或其他公共网络节点,并且一般包括与计算机110相关的许多或 所有上述元件,尽管图2中仅示出了存储器存储设备181。图2中所描绘的这些逻 辑连接包括局域网(LAN)171和广域网(WAN)173,但也可以包括其他网络。 这类网络环境常见于办公室、企业范围计算机网络、内联网和因特网。

当用于LAN网络环境时,计算机110通过网络接口或适配器170连接到局域 网171。当用于WAN网络环境时,计算机110通常包括调制解调器172或用于通 过WAN 173(例如,因特网)建立通信的其他装置。可以内置或者外置的调制解 调器172可以通过用户输入接口160或其他适当的装置连接到系统总线121。在网 络化环境中,相对于计算机110描述的程序模块或其部分可以被存储在远程存储设 备中。作为例子而非限制,图2示出远程应用程序185驻留在存储器设备181上。 应该明白,所示出的网络连接是示例性的,并且可以使用在计算机之间建立通信链 路的其他方式。

图3示出许可证供应模块(LPM)125的更详细的框图。具体而言,LPM 125 可以包括强制计算机110以特定状态操作的强制附加模块252、计量在计算机110 上所供应的资源的使用的计量模块254、处理从服务供应商(未描述)接收到的供 应包的事务引擎256、为供应包提供安全存储的安全存储管理器258、与服务供应 商通信的通信模块260以及与用户交互的用户体验模块262。

强制模块252可以被插入到计算机110的登录逻辑264中。当用户使用登录 逻辑264登录到计算机110上或请求使用可支付的所供应资源时,强制模块252 可以向计量模块254查询余额信息。如果强制模块252判定计算机110有足够的值 来进行所请求的活动,则它可以允许计算机110以其正常方式操作并且允许用户登 录到计算机110上,或使用所请求的资源。然而,如果强制模块252判定计算机 110没有足够的可用值,则它可以拒绝登录或访问所请求的资源,并且可以调用一 个用户界面来提示用户往可用余额添加值。

为执行强制任务,强制模块252能够禁用或制裁在计算机110的直接影响或 控制下的资源。与外置的外围设备有关的制裁可以通过在适当的控制器,例如输入 或输出控制器170、190、195上的动作来实施,但是在某些情况中,制裁可能需要 在外围设备本身上执行。

计量模块254可以包括用于读取和验证可用来使用所供应资源的当前余额以 及用于更新当前余额的余额管理器266。计量模块254还可以包括用于确定如授权 的(即可支付的)外围设备等有效系统配置信息的配置管理器268。计量模块254 还可以包括用于维护始终递增定时器的可靠时钟管理器270。计量模块254可以提 供用于监视计算机110或其组件每隔多久、多少次、在什么时段被使用的机制。当 使用由应用程序来计量时,计量模块254可以利用操作系统中的异常分支(hook) 来对应用程序起始点计数。或者,计量模块254可以监视处理单元120的周期或使 用,以确定计算机110或个别应用程序实际上已经操作了多少。在另一替换实施例 中,可以监视可靠时钟管理器270,以判定授权使用的给定时段,例如一个日历月 或30天何时期满。

可靠时钟管理器270可以使用可靠硬件时钟272来完成维护单调改变的定时 器的任务。可靠时钟管理器270可以用来提供系统时间,或者可以只用来为使用计 量提供时间服务。余额管理器266和可靠时钟管理器270对LPM 125的安全操作 非常敏感和重要,因此在LPM 125的操作期间他们很可能处于各种安全攻击之下。

强制附加模块252和计量模块254可以一起工作,以实现计算机110上所供 应资源的激活和停用。强制附加模块252可以起到基于某些事件来调用余额管理器 266的事件分派器的作用,而余额管理器266可以判定当它响应一个事件而被调用 时采取什么动作。可能导致强制附加模块252调用余额管理器266的各种事件的例 子是(1)登录事件,(2)系统解锁事件,(3)从休眠中恢复事件,(4)从待机 中唤醒事件,(5)用户触发事件,如使用外围设备的请求,(6)注销事件,(7) 包下载,(8)定时器报时,等等。余额管理器266可以接收事件作为输入,并将 结果动作返回给强制附加模块252。

事务引擎256可以处理供应包,以更新余额管理器266中的余额。事务引擎 256可以保证任何供应包都只被消费一次来更新余额。事务引擎256可以被设计成 使其执行原子更新和调和事务,由此余额和资源供应商账户都被更新,或者余额和 资源供应商账户都不被更新。

为处理供应包,事务引擎256可以包括数字签名验证电路267。数字签名验 证电路267可以拥有用于解密供应包的电路和/或软件,无论供应是通过因特网电 子地、从局域网本地、从可移动介质、手动输入还是其他传输方法接收到的。使用 传统公钥基础架构(PKI)时,如果已加密,消息就可以被解密,并可生成散列并 对照数字签名检查该散列以验证供应包的真实性和完整性。所用的特定加密算法如 RSATM或椭圆曲线并不重要。包括发件人验证和内容验证的数字签名技术广为人 知,且在此不详细讨论。

安全存储管理器258可以允许LPM 125以安全方式存储余额数据,以使其不 会被用户篡改并使其只可由LPM 125访问。在配置分组被LPM 125下载之后,它 可以被存储在安区存储管理器258中。类似地,余额计数器和包消费计数器也可以 被存储在安全存储管理器258中。安全存储管理器258还可以存储用于本地供应模 块125的设置和操作的数据。另外,用于确定活动水平的软件、与使用调度表相关 联的规则或算法以及其相应的阈值可以被存储在安全存储管理器258中。一般而 言,这些数据如果被泄漏则可以用于绕开对按使用付费或预付费操作的控制。这些 数据之一可以是唯一识别符,它可以是能够用来将计算机110彼此区别的数字或代 码。该唯一识别符可以用来准备只能以单台机器使用的数字签署的供应包。供应包 可以是所接收到的将值添加到余额管理器266的数据、新的或已更新的使用调度 表、或者用于活动评估的新的规则和阈值。

某些与供应包的认证相关联的数据可以被存储在安全存储管理器258中。例 如,事务序号可以用来阻碍或防止重放攻击。另外,“不早于”日期可以从供应包 中提取出来并存储起来以阻碍或防止时钟篡改攻击。在一个实施例中,“不早于” 日期可以是供应包被创建的日期/时间。因为供应包的使用不会在供应包被创建之 前发生,因此在考虑时区后,计算机110的时钟也不会被设置为早于最后一个供应 包的最新日期的日期或时间。

由安全存储器管理器258存储的状态数据可以用来指示计算机110是否处在 完全操作模式中,或者计算机110或应用程序是否处在某种限制或制裁之下。尽管 大多数软件可以被存储或从通用系统存储器130中提取,但其中可能存在一些理论 上能防止篡改的可执行代码,例如应用程序、例程或驱动程序。例如,设置可靠硬 件时钟72的例程本身可能需要被保护,以防止篡改和欺骗。

相对于由系统存储器130提供的计量或使用数据,由计量模块254创建或使 用的计量或使用数据可能需要更多的保护,并因此可被存储在安全存储管理器258 中。计量或使用数据可以包括例如剩余使用单元的数量、允许使用单元的最大数量、 被计量应用程序的列表或停止时间/日期。与计量或订阅数据紧密相关的可以是订 阅计划。为了提供灵活性,可允许用户从多种订阅计划中选择,如上所述。这些订 阅计划可以包括按期使用、若干小时的使用、利用激活或使用次数的由应用程序的 使用、由输入/输出(网络连接性)使用、以及包括以上的组合的其他方式。订阅 计划的保护很重要,因为不希望用户能够改变或创建可以导致欺骗使用的新计划。 当订阅计划要求按使用付费或计量使用时,适当的商业规则如果不存在,可以被安 全地下载并被存储在安全存储管理器258中。

证书撤销列表(CRL)可以用来判定当前根证书是否有效。当不从主机实时 检索时,CRL可以被安全地存储在本地以防止可通过提交由已泄密或非授权私钥 签署的供应包来允许欺骗使用的篡改。尽管根证书的公钥是在公用域中并且在技术 上并不需要保护,但为了供应包验证的完整性,根证书可以被存储在安全存储管理 器258中。在所示的实施例中,安全存储管理器258被实现为动态链接库(dll), 以使用户体验模块262能够访问安全存储管理器258。

为保证存储在安全存储管理器258中的数据是安全的,可使用数据加密密钥 来存储安全存储管理器258中的数据,而且只有拥有该数据加密密钥的模块才能够 从安全存储管理器258中读取数据。安全存储管理器258可以与本地安全授权机构 (LSA)子系统274通信以便与LSA数据库276通信,与存储驱动程序278通信 以便与安全硬件存储280通信,并与文件系统驱动程序282通信以便与计算机110 上的文件284通信。为有更多安全性,安全存储管理器258的一种替换实现也可以 使用存储在安全存储管理器258中的数据的多个副本以使每个副本可被交叉参考, 以保证不能用任何单个数据副本来进行篡改。尽管此处所讨论的LPM 125的实现 有以软件实现的安全存储管理器258,但在一个替换实现中,安全存储管理器258 能够以硬件来实现。

通信模块260可以包括请求供应包和/或证书或者从服务供应商购买另外的供 应包/证书的包/证书请求管理器286,以及允许LPM 125与网络10通信的web服 务通信管理器290。

包/证书请求管理器286可以接收下载包或证书的请求。包/证书请求管理器 286也可以负责在成功下载证书或供应包时向服务供应商(未描述)确认。包/证书 请求管理器286可以使用用于通信的供应协议。由包/证书请求管理器286下载的 包可以被存储在安全存储管理器258中。

通过从用户接收付款信息并将付款信息传送给服务供应商或资金账户(未描 述),购买管理器288可以允许计算机110的用户通过购买供应包来把值加到本地 余额中。例如,在本地商店购买刮刮卡可以用于把值加入资金账户,然后资金账户 被用来创建被下载、验证的供应包以及被用来更新余额。包/证书请求管理器286 和购买管理器288都可以使用wb服务通信管理器290与网络10通信。web服务 通信管理器可以使用web服务管理器292和网络接口卡(NIC)294与网络10通 信。注意,在一个实现中,web服务通信管理器290用来与网络10通信,在另一 个实现中,可以使用如文件传输协议(FTP)等其他通信工具与网络10通信。

用户体验模块262可以包括要求用户输入允许包/证书请求管理器286从服务 供应商(未描述)下载证书的InitKey(初始密钥)的激活用户界面(UI)296,以 及允许LPM 125与用户交互的通知UI 298。激活UI 296也可以调用购买管理器288 以允许用户购买用于余额再充值的另外的供应包。

通知UI 298可以包括允许用户查询当前余额信息、使用历史等等的各种用户 界面。通知UI 298可以由用户或登录逻辑264调用。在可用于使用所供应资源的 余额较低的情形中,登录逻辑264可以调用通知UI 298来告知用户必须进行另外 的购买。通知UI可以是恒定活动的,并且它可以经由任务栏图标、控制面板小程 序、弹出气球或通过使用任何其他公知的UI方法来向用户提供通知服务。

在操作中,计算机110通过若干机制中的任何一种,例如已经过的使用时间、 日历时间、应用程序起始点等等,来测量按量付费或其他已计量使用。至少在表面 上,也许最容易用来测量的是简单的操作时间。例如,可以购买10小时的预付费 使用并在余额管理器266中供应它。使用时间可以被测量并从总累积余额中减去。 当消费了10小时的使用时,强制模块252可以使计算机110停止操作,或执行如 上面所讨论的另一制裁。

在跟踪并记录用于确定按使用付费的任何度量时,测量的精度可能是客户满 意的重点。如果测量偏袒了服务供应商,则顾客会变得不满意并加入竞争提供者。 另一方面,如果测量偏袒了顾客,则服务供应商可能不能实现其财政目标。

如上面所讨论的,归因于所监视的条件的解释,使用最显而易见的技术,尤 其是用于测量时间的技术可能会发生错误。为帮助保证试图正确计量计算机使用, 尤其是时间的公平计量,可以分析多个准则来判定使用是否应该被测量。

图4是描述计量计算机110的使用的方法的流程图。计算机110,或更具体 地说是余额管理器266,可以根据第一使用调度表来测量计算机的使用(302)。 该使用调度表可以等同于直接使用,例如,每分钟已测量使用就扣除一分钟的付费 时间。或者,该使用调度表可以在货币和时间之间转换,如每分钟1分钱。第一使 用调度表可以表示多种费率和特定条款,例如,在另一实施例中该使用调度表可以 提供优惠,例如最初60分钟是每分钟1分钱,在最初60分钟后是每分钟0.5分钱。 显然,其他操作与测量使用(302)相关联。例如,在进行测量时,可以进行所允 许的使用的比较,并且可以与在此所概述的步骤同时执行与预付费使用的消费有关 的警告或制裁。此类活动在以上引用的相关申请11/006,837中详细讨论,且在此不 作讨论以便清楚描述本发明的概念。

可以记录使用以及相关信息(304),此类相关信息在服务的意外中断,例如 停电期间可能有助于恢复数据。此类相关信息可以包括测量之间的时间。也可以监 视活动水平(306)。如果活动水平在一阈值之上,则取“是”分支,且在框302 处继续使用测量。监视活动水平可以包括监视计算机110中一个以上组件的状态, 以试图得到计算机100的总体状态的更完整的描绘。计算机110的活动水平可以对 应于诸如输入设备161、162、打印机196、网络摄像头163、硬盘驱动器141、通 信设备170、172以及处理单元120等设备中的一个或其组合的活动水平。每个组 件可以具有单独的活动水平,或者对总体阈值水平起作用的单独阈值,供在最终计 量决策中使用。为例示起见,来自鼠标161的输入可以总是被解释为在使用阈值之 上的活动。当来自诸如输入设备161、162等的一组主要设备的活动被感知为低于 活动阈值时,取框306的“否”分支。可以进一步评估活动(308)以判定第二活 动是否指示总体活动是在阈值之下。在最简单的情况中,所有被监视的活动水平必 须低于他们各自的阈值,余额管理器266才会停止从使用余额中扣除。然而,用于 这一判定的规则可能会更复杂,如下面所示的。

当执行框308处的进一步评估时,如处理单元120等另一个组件的活动水平 可能高于典型阈值,但是如果其活动的主体被归因于已知后台进程,如屏幕保护程 序、病毒检查程序、软件更新进程、内务处理实用程序等等,那么诸规则可以致使 取框308处的“是”分支。于是,最后,余额管理器266可以根据第二使用调度表 进行计量。即,余额管理器266可以按第二费率,例如第一费率的10%从使用余 额中扣除,或者余额管理器266可以完全停止从使用余额中扣除。在任何给定时刻 所使用的实际使用调度表可以根据各种规则和/或合同条款来选择若干使用调度表 中的任何一个。

相反,在框306处观测到其他不活动指示符之后,另一组件(再例如,处理 单元120)的活动水平可能低于阈值,但在框308处对处理单元120的活动的分析 表明一个正在周期性地处理来自照相机的照片并且把它们张贴到网站上的图像捕 捉程序正在运行。操作网络摄像头可以是计算机的低活动使用的一个例子,该使用 可能根据合同被计算为活动使用,且因此可取框308的“否”分支,并且即使没有 用户在物理上使用计算机110,余额管理器266仍可以继续从使用余额中扣除。或 者,根据在本例中比第一使用调度表的费率低但比根本不扣除要高的第二或第三使 用调度表,诸规则可以允许计量网络摄像头。显而易见,基于诸规则和使用活动的 分析,可以开发多种使用调度表和相应计量费率。

简要地参考图5,一描述活动曲线的图表示出了对计算机110的活动水平的 分析。计算机110的总体活动水平对比时间的示例性曲线402示出活动水平下降到 阈值水平404以下一段时间,然后又上升到该活动阈值以上。在这个例子中,诸规 则要求在活动水平保持低于阈值一段时间“A”406之后,使用从使用第一使用调 度表进行计量(如图形线段408所描述的)切换,然后切换到第二使用调度表(如 图形线段410所描述的)。该延迟可允许判定用户已经离开计算机110而不是正在 场并阅读一页文本。在切换到第二使用调度表后,余额管理器266可以使用时段“A” 406的持续时间来调整使用余额。延迟时段“A”406可被记入用户的使用余额中。 因此,在切换到第二使用调度表之前,给予用户用来满足非活动需求的时间的金额。 在其他情况下,余额管理器266可以例如在从非计量到计量费率转变而发生滞后时 减去或扣除使用余额。如图形线段412所描述的,当活动水平返回到高于阈值404 时,余额管理器266可以返回到根据第一使用调度表进行计量。规则中可以内建一 些迟滞,以使得阈值水平可以依据活动水平的方向(多到少或少到多)进行变化。

图5的使用曲线可以表示计算机的总体活动水平。类似地,如上所述,图5 的使用曲线可以表示多种使用曲线之一。例如,可以为硬盘驱动器141、通信设备 170、172、或处理单元120等组件级设备维护使用曲线。为了进行更细粒度的评估, 可以在子组件级(例如,系统存储器132的一个区域或硬盘驱动器141存储的一个 扇区)制作使用曲线。使用曲线可以被单独地评估,如上所述,或者可以使用直接 或加权和来获得关于计量的总体决策。在另一个例子中,可以改变组件或资源必须 空闲的时间长度,例如,取决于组件,时段“A”406可以更短或更长。同时,使 用曲线的纵轴表示简单的二值开/关标度,或者可以拥有如每单位时间百分比变化 等离散测量值,例如诸如存储器132等存储器的一个区域的内容的百分比变化。

回到图4,如上所述,余额管理器266可以根据可由用于确定活动水平的规 则施加的任何延迟来调整余额(310)。当满足了所有的准则时,余额管理器266 然后可以根据第二使用调度表来测量使用(312),即,以不同的费率从余额中扣 除,或完全不扣除。当活动水平再次移动到阈值之上的事件发生时(314),测量 可以返回到框302处的根据第一使用调度表的费率。

上面所描述的是包括用于计算机使用的精密计量的硬件和软件实施例在内的 几个具体实施例。通过监视和评估计算机110的一个或多个组件的活动水平并应用 适当的商业规则,揭示了判定并测量有益使用的更公平和精确的方法。这有益于广 大范围的家庭、办公室和企业按使用付费或计量使用应用。然而,本领域的普通技 术员人明白,对这些实施例可以进行各种修改和改变,包括但不限于,使用用于活 动监视的硬件或软件的不同组合、多种费率表以及与确定适当使用调度表相关联的 更复杂或更简单的规则。因此,应该以示例性而非限制性的意义来看待本说明和附 图,并且所有此类修改都应被包括在本专利的范围之内。

本专利是于2004年12月8日提交的美国专利申请第11/006,837号的部分延 续,而美国专利申请第11/006,837号是于2004年11月15日提交的美国专利申请 第10/989,122号的部分延续。