专利名称:使用客户机系统使多媒体内容对准观众的设备及其方法
技术领域:
本发明涉及使多媒体内容经由客户机系统对准(target)观众。更具体而言,本发明涉及使用驻留在客户机系统上的观众配置文件数据从服务器取回被对准的多媒体内容。
背景技术:
在自动数据处理系统的设计中,典型的紧张状态存在于基于纯客户机-服务器的系统和纯分布式系统之间,其中基于纯客户机-服务器的系统例如计算机主帧系统或万维网等,纯分布式系统例如工作站网络(NOWS)等,用于解决复杂的计算机问题,例如对核爆炸建模或破解密钥等。客户机-服务器系统是普及的,因为它们依赖于服务器和客户机之间明确的责任划分。服务器常常是昂贵的,且被专门管理,因为它执行计算或存储大量客户机的数据。每个客户机都是廉价的,仅具有与系统用户交互所需要的本地资源。假定具有合理性能的网络连接服务器和客户机。这些系统的经济模型是降低采用客户机系统的增量成本的中央管理和控制的模型。然而,所述模型具有必须被考虑的相当大的成本。例如,添加新客户机系统的增量成本可能非常高。额外的网络容量必须可用,包括存储器、内存、和计算循环的充足计算资源必须可用于支持该客户机,且由于这些额外的资源,每个客户机都需要额外的操作开销。 随着中央服务器变得越来越大和越来越复杂,他们变得越来越不可靠。最终,服务器的系统故障导致所有客户机失去服务。分布式系统是普及的,因为该系统的资源被分配给每个客户机,这实现了客户机内的更复杂的功能性。因为程序或数据与客户机一起定位,所以对程序或数据的存取较快, 这减少了网络自身上的负载。因为节点故障仅影响节点本身,所以系统更可靠。很多计算任务容易被分解成能被独立计算的部分,且这些部分在有关系统之间被廉价地分配。这也降低了网络带宽要求,并限制了故障节点的影响。另一方面,分布式系统对管理者来说更复杂,且可能更难以诊断和解决硬件或软件故障。可将电视观看建模成客户机_服务器系统,但是其中,服务器_客户机网络路径是用于所有无限速度目的和意图,且客户机_服务器网络路径是不连贯和难管理的。这是电视广播性质的自然产物。添加另一观众的成本为零,且所传送的服务与传送给所有其他观众的服务相同。已经作出很多努力来通过例如互联网等计算机网络、或甚至通过作为网络工作的本地电缆电视设备传送电视节目安排,并且这种努力还在继续。计算机网络的点对点性质使得这些努力不实用且昂贵,因为对于每个添加的观众都需要额外的资源。已经证明其中观众通过客户机机顶盒装置完全控制视频流带宽的全交互电视系统更不经济,因为服务器资源专用于每个客户机迅速限制了能有利地建立和管理的系统的大小。然而,电视观众对选择和控制电视观看表现出很大的兴趣。适当的分布式数据库管理系统在下述同样由本申请人拥有的美国专利申请序列号09/422,139中被描述,并且如下文所述,该申请利用上述方法解决了很多问题。分布式数据库管理系统使得客户机能容易地保存数据在其本地数据库中,和使其本地数据库与主服务器数据库同步。它也提供了服务器及其客户机之间的安全的数据传输链路。典型的客户机-服务器系统使用观众信息来形成观众观看习惯配置文件。传统的对准机制(targeting mechanism),例如由 MatchLogic of Westminster, Co,禾口 DoubleClick of New York,NY采用的对准机制等,依赖于用中央服务器做出的对准决定对顾客的服务器端跟踪。该中央服务器方法的主要缺点之一是,观众的个人信息保留在中央服务器中。该中央服务器易受黑客和身份窃贼的攻击。有利的是提供一种用于提供观众的基于客户机的内容对准的客户端多媒体内容对准系统。进一步有利的是提供一种用于通过在观众客户机系统内保存个人信息而保护观众个人信息的客户端多媒体内容对准系统
发明内容
本发明提供了一种客户端多媒体内容对准系统。该系统提供了基于客户机的观众内容对准。此外,通过将个人信息保存在观众客户机系统内,本发明保护了观众的个人信肩、ο以本申请人拥有的美国专利序列号6,233,389为代表的客户机装置提供了通常与中央视频服务器相关的功能性,例如大量视频内容的存储、根据需要选择和播放此内容的能力、和如由本申请人拥有的以美国专利序列号6,327,418为代表的内容传送的完全 “ VCR-I ike” 控制。本发明的优选实施例安排(schedule)多媒体内容在客户机系统存储装置上的记录、存储、和删除。本发明把与节目导向对象数据库进行比较的节目观看喜好优先级表当作输入。节目导向对象表明何时实际广播感兴趣的内容。产生时间对可用存储空间的时间表,该时间表对观众的明确的或推出的优选内容为最优。观众可请求捕捉某些内容,这使得那些内容具有可能的最高优先级。观众也可使用通过观众界面提供的附件明确地表达喜好。另外,喜好可从观看模式推出。这些喜好对应于储存在复制型数据库中的对象。观众的客户机系统本地保存观众喜好和观众已经输入的其它个人信息。经由客户机系统将观众的信息秘密保存在其自己家中。客户机系统对如何对准用户作出决定。服务器发送有关节目导向对象的对准信息给客户机系统。使用观众喜好和个人信息,客户机系统创建观众配置文件。比较观众配置文件和对准信息,客户机系统记录位于观众配置文件内的内容。本发明的基于客户机的对准形式是无限灵活的。它可应用于几乎所有多媒体情形,包括但不限于TV节目、电影、广告、产品、和服务提供、音乐、无线电、音频等。根据以下结合附图给出的详细描述,本发明的其他方面和优点将变得更加明显,其中附图作为实例示出本发明的原理。
图1是根据本发明分布式电视观看管理系统的优选实施例的示意性框图;图2是根据本发明用于节目访问的计算机存储器中的观看对象的结构的示意性框图;图3是根据本发明的示意性框图,示出用于观看对象的模式是如何在用于节目访问的计算机存储器中结构化的;图4是根据本发明的示意性框图,示出描述关于节目的信息的观看对象之间的关系的实例图;图5是根据本发明的示意性框图,示出为了确定感兴趣的节目而处理观众喜好时产生的关系的实例图;图6是根据本发明的示意性框图,示出为做记录进行输入和存储空间安排;图7是根据本发明的流程图,示出使用图6中描述的机制安排记录所采用的步骤;图8是本发明的一个优选实施例的示意性框图,示出根据本发明的引导系统配置;图9a是根据本发明用于引导部件的决定流程图的示意性框图;图9b是根据本发明用于引导部件的决定流程图的示意性框图;图10是根据本发明用于软件安装过程的决定流程图的示意性框图;图11是本发明的一个优选实施例的示意性框图,根据本发明用于分配内容信息给基于本地观众信息记录来自广播信号的内容的多个客户机系统;以及图12是根据本发明的示意性框图,示出基于本地观众信息记录来自循环 (carouseled)广播信号的内容的多个客户机系统。
具体实施例方式本发明具体化为客户端多媒体内容对准系统。根据本发明的系统提供了基于客户机的观众内容对准。此外,本发明也提供了一种通过使个人信息保留在观众客户机系统中而保护观众个人信息的系统。本发明具体化为电视观看信息传输和收集系统,该系统提高了个体观众选择和自动录制电视节目过后观看的能力,同时提供机会给服务提供商来增强和指引观看经验。本发明描述了全分布式系统,其中,对于个体观众,在本地客户机装置内亲自执行关于该观众的计算,同时提供了关于观看习惯、喜好、或购买的信息的可靠聚集(aggregation)和传播 (dissemination) 0电视观看信息数据库图1给出本发明的示意性整体图。本发明的重点是一种方法及设备,用于维护在中心站点(central site) 100的计算机系统和非常多的客户机计算系统101中的电视观看信息的分布式数据库。提取数据库的中心拷贝的适当子集的过程称为“切片” 102,递送所形成的“切片”给客户机称为“传输” 103,将收集的关于或代表观众信息递送给中心站点称为“收集” 104,处理所收集的信息以产生新的电视观看对象或报告称为“分析” 107 ;就一切情况而言,将一个数据库的对象在另一数据库内再造的动作称为“复制” 105。把将传送或收集的数据项称为“对象” 106,中心数据库和包含在客户机装置中的中心数据库的每个复制的子集是“基于对象的”数据库。此数据库内的对象常常称为“电视观看对象”、“观看对象”、或简称为“对象”,强调其计划的用途。然而,本领域的技术人员将易于意识到,对象可以是任何类型的数据。
观看对象数据库为其包含的对象提供了相容的抽象软件存取模型,该模型独立于和平行于本文中描述的复制活动。通过使用此界面,无需考虑底层活动,应用程序就可创建、破坏、读、写、和以其它方式操纵数据库中的对象,同时确保一直保持数据库中的对象的相容且可靠的观看及它们之间的关系。基本电视观看对象原理参看图2,电视观看对象结构化为“属性” 200的集合。每个属性都具有例如整型、 字符串型、或逻辑型类型201以及值202。所有属性类型都是从由数据库支持的基本类型的固定池中取出的。对象属性分成两组“基本”属性,由观看对象的创建者或维护者提供;以及“导出”属性,由数据库内的机制自动创建和维护。基本类型描述了对象自身的特性;导出属性描述对象之间的关系。基本属性在数据库之间进行复制,而导出属性并非如此。参看图3,存在由本发明限定的一小组基础对象类型;每个对象类型都表示为相关属性300的特定集合,这里称为“模式”。模式限定用于每个属性类型模板301,其中每个属性类型模板都包括类型302和属性名303。通过为对象分配资源和分配值给由模式限定的属性,创建实际电视观看对象。例如,“节目”模式可包括例如节目中的制片人、导演、或演员、屏幕上的图标、节目内容的多线路描述、节目的编辑等级等属性。通过为物理节目对象分配存储量,并将相关数据填充在属性中,创建物理节目对象。存在一种为所有数据库预定的特定对象类型,称为模式类型。由数据库支持的每个模式用模式对象表示。这使得应用程序在数据库上执行“自我测量(introspection)”, 艮口,动态发现什么对象类型被支持及其模式。这大大简化了应用软件,且不再需要在改变、 添加、或删除模式时改变应用软件。与所有其它观看对象相同,模式对象是由本发明的方法处理的。再次参看图2,数据库中的每个对象被分配“对象ID”203,该“对象ID”在数据库内必须是唯一的。只要每个对象ID是唯一的,该对象ID可以采用许多形式。优选实施例将32位整型数用于对象ID,因为它在处理速度和所允许的唯一对象数量之间提供了有用的折衷。每个对象也包括“引用计数” 204,该“引用计数”是给予参看当前对象的数据库中的其它对象的数量的整型数。引用计数为零的对象将不存在于数据库中(参看下述)。观看对象的一个特定类型是“目录”对象。目录对象保持对象ID列表和该对象的相关简名。目录对象可包括作为列表部分的其它目录对象,且存在称为“根”目录的单个可分辨的对象。将在根目录开始继续直到发现感兴趣的对象遍历的目录对象顺序称为到对象的“路径”;这样,路径表示在数据库中出现的所有目录对象中创建的层次式名字空间内的特定位置。对象可由多条路径引用,这意味着一个对象可以有多个名字。对于引用其的每个目录,观看对象上的引用计数增加一。
顯佳牛户__浦禾口膝細去 本发明的优选实施例的特性之一,是确保每个数据库复制品一直保持内部相容, 且自动维护此相容性,而无需参考其它数据库,也不需要连接至中心站点。没有确保以适时的方式或以任何确定的周期发生传输或收集操作。例如,客户机系统可能关闭数月;当至系统的传输最终可能时,即使不可能传输使中心和客户机数据库完全同步所需要的所有对象,对象复制也必须总是形成服务器数据库的相容子集。甚至更严重的,在数据库处于使用中或正在被更新期间,没有保证稳定的操作环境。例如,供给装置的电力可能停止。本发明将所有数据更新作为“事务”处理,这意味着将完成全部的事务,或事务一点都没完成。所选择的特定技术称为“两阶段承诺”,其中检查并记录(log)事务的所有元素,之后执行实际的更新。本领域的技术人员将意识到,一种结合前滚技术的标准日志处理技术足以满足此目的,其中,在标准日志处理技术中,事务被分段 (stag)成分离的日志,在前滚技术中,在出现故障时将日志用于重复进行中的部分更新。每个对象的一个必需的导出属性是“版本”,其随着对象的每个变化而改变;该版本属性可以表示为单调增加的整数或创建版本的单调排序的其它表示。可被复制的每个对象的模式包括称为“源版本”的属性,表示该源版本从其复制的对象版本。观看对象的传输没有保证每个客户机都收到此对象。例如,当对象正在被广播时, 例如太阳黑子等外部因素可破坏传输序列(sequence)的部分。可连续地重新传输观看对象以解决这些问题,这意味着相同对象可多次显示以用于复制。每当收到待复制的对象时仅更新数据库对象是不适当的,因为尽管实际没有发生变化,但版本数将增加。另外,理想的是,在不必要时避免初始化事务来更新对象;在事务处理期间消耗相当大的系统资源。将两种方法结合起来解决此问题。首先,大多数对象将具有称为“截止时间”的基本属性。这是超过其对象不再有效且应被丢弃的日期和时间。当收到新对象时,检查截止时间,如果期满,则丢弃该对象。截止时间处理其传输以某种方式延迟的对象,但它不处理相同的未到期对象的多次接收。源版本属性处理此问题。在传输观看对象时,从源对象的当前版本属性复制此属性。在收到该观看对象时,将所收到的对象的源版本与当前对象的源版本进行比较。如果新对象具有较高的源版本属性,则将其复制到现有对象上,否则则丢弃它。假定将比感兴趣的观看对象数量更大的观看对象传输给任何特定客户机系统。例如,连接到其它电缆系统的客户机对描述特定电缆系统上的信道的“信道”观看对象不感兴趣。由于捕捉和添加新对象到数据库中的开销,有利的是,除了上述属性外,还根据其它属性过滤所收到的对象。通过使用基于对象类型和属性值的过滤程序,本发明实现了此点。在一个实施方式中,此过滤程序基于运行某种类型的可执行代码,或许作为命令序列,用各种对象类型的专门知识以及它们应如何被过滤写该命令序列。在本发明的优选实施例中,为每个对象类型限定“过滤器,,对象,该过滤器对象表示需要什么属性、什么属性不应存在、或使属性添加到数据库中可接受的属性值的范围。本领域的技术人员将易于意识到,此过滤器对象可包含某种形式的可执行代码(可能是可执行命令序列)。这些命令会检查和比较正在被过滤的对象的属性和属性值,形成对象是否应是进一步处理的目标的指示。观看对象很少独立于其它对象。例如,“放映”对象(描述特定频道上的特定时间)依赖于“节目”对象(描述特定TV节目)。维持相容性的一个重要方面是确保所有依赖对象或者一直存在于数据库中,或者在尝试添加新观看对象之前作为单个事务的部分被添加。这使用称为“依赖性”属性的新观看对象的基本属性实现,其中“依赖性”属性仅列出新对象所依赖的对象的对象ID和源版本。显然,在定义新版本的模式相同或具有原始模式的属性的严格超集的意义上,新的对象版本必须是兼容的。在收到新观看对象时,首先检查数据库,察看该对象的所有依赖性是否存在;如果是,则将对象添加到数据库中。否则,新对象被“分段”,将其保存在保存区中,直到所有依赖对象也被分段。明显地,为了将一个新的观看对象组添加到数据库中,依赖图必须基于两个对象ID和源版本在分段区中的对象和已经存在于数据库中的对象之间封闭(close)。一旦实现封闭(这意味着所有依赖对象都存在),则在单个原子事务中将新对象添加到数据库中。电视观看对象的侖名和寻找 前面已经描述了目录对象。参看图4,目录对象的集合、和在根路径400开始且列举到观看对象的所有可能路径所形成的有向图称为“名字空间”。为了在不知特定对象ID 的情况下找到对象,此名字空间内的一条或多条路径必须引用它。例如,应用软件几乎对对象ID不感兴趣,相反,该软件喜欢通过例如“/tvschedule/today”路径引用它。在此实例中,引用的实际对象可能每天都改变,而不要求系统的任何其它部分中的改变。一种可建立到对象的路径的方式是指定对象上的“路径名,,基本属性。将该对象添加到数据库中,且创建或更新描述路径组件的目录对象,以添加对象。这种命名通常仅用于调试复制机制。不赞成(discourage)设置明确路径,因为在每个客户机系统上复制的中心数据库的部分将是不同的,给在数据库的所有复制品中管理路径名造成很大困难。用于将对象添加到数据库名字空间中的优选方法称为“索引”。在本发明的一个优选实施例中,为每个对象类型定义一个“索引器”对象,表示在将其索引到数据库名字空间中时将使用什么属性。本领域的技术人员将易于意识到,此索引器对象可包含某种形式的可执行代码,可能是可执行命令序列。这些命令检查和比较正在被索引的对象的属性和属性值,形成对象应定位在名字空间中何处的指示。根据对象类型,索引器检查连接到对象的属性的特定集合。当发现这样的属性时,索引器基于属性值在用数据库中的目录图表示的层次式名字空间内为对象自动添加名字。再次参看图4,节目对象401可既具有值为“John Wayne”的“演员”属性,又具有值为 “JohnFord”的“导演”属性。根目录可表示两个子目录“byactor”402和“bydirector”403。 索引器接着添加路径“/byactor/John Wayne”和“/bydirector/John Ford”到数据库,这两条路径都引用相同对象401。为每个对象保存列出引用此对象的目录对象的导出属性404。当索引器添加路径到用于此对象的名字空间时,它添加路径中的最终目录ID到此列表。这确保了对象图的封闭-一旦发现对象,则也发现在此数据库内对该对象的所有引用,无论它们是路径还是依赖性。将对象添加到数据库中的独特的新方法与标准方法相比具有很多优点。在添加对象时索引器对进入数据库中的对象排序。这样,对与特定路径有关的对象的研究是从有序的列表中选择的序列,这可通过本领域的技术人员有效实现。
从数据库刪除对象尽管将对象添加到数据库的规则是重要的,在维护相容性和精度方面用于从数据库移走对象的规则也是重要的。例如,如果不存在用于移走对象的强健规则,则随着陈旧的对象聚集,数据库可能随着时间无限增长。用于从数据库删除对象的基本规则基于引用计数;概括地删除引用计数降至零的对象。例如,这意味着对象必须被目录或某一其它对象引用,以存在于数据库中。此规则基于正在删除的对象应用于封闭依赖图中的所有对象。因此,如果引用其它对象(例如目录) 的对象被删除,则引用的所有对象上的引用计数减少,且那些对象类似地删除到零计数上,等等。也存在从数据库删除对象的自动程序,称为“收割者(reaper)”。周期性地,收割者检查数据库中的所有对象,且根据对象类型,进一步检查各种属性和属性值,以确定对象是否应保留在数据库中。例如,期满属性可表示对象不再有效,且收割者将删除该对象。在此优选实施例中,使用与上述过滤索引法类似(或可能相同)的方法,收割者可改为存取与当前对象的对象类型相关的收割者对象,该收割者对象可包括各种类型的可执行代码,可能是可执行命令序列。这种代码检查当前对象的属性和属性值,并确定对象是否应被删除。单独删除引用计数已经减少为零的每个对象的开销可能是相当高的,因为每个这样的删除造成与数据库的事务处理。有利的是限制收割对象的性能影响,使得前台操作以最大速度进行。在一个优选实施例中,这使用基于普通无用单元收集方法的技术实现。例如,收割者没有执行其它动作,而不是删除引用计数已经减少为零的对象。周期性地,称为无用单元收集程序的后台任务检查数据库中的每个对象。如果该对象的引用计数为零,则将其添加到待删除的对象列表。在一个实施例中,一旦无用单元收集程序检查了整个数据库,则它将删除单个事务中的所有这样的对象。本领域的技术人员将意识到,这种方法也可造成很大的性能惩罚,因为在对象正在被删除期间对数据库的其它存取可被延迟。此外,如果所有对象都被正确删除,则在无用单元收集程序起作用期间,可能必须延迟对数据库的改变,这造成甚至更差的性能。在一个优选实施例中,在一系列轮回(pass)中,无用单元收集程序检查数据库。 一旦已经收集特定数量的对象,则它们在单个事务中被铲除。所述程序继续到所有对象都已经被检查为止。这种技术没有保证在检查过程期间所有无用对象都已被收集,因为平行活动可释放先前检查的对象。然而,在无用单元收集程序下次运行时,将发现这些对象。在每个轮回中铲除的对象数是可调整的,以获得其它数据库活动的可接受性能。在分布式电视观看对象数据库上的操作对维护分布式观看对象数据库的考虑在分布式数据库实例中的电视观看对象的复制必须要求在不可靠且不安全的分配信道上传输对象。例如,如果对象在广播机制上传输,例如在无线电或电视传输内传输,则不能确保数据被精确或完全传输。例如暴风雨等天气可造成传输中信号丢失。其它干扰源可以是其它广播信号、重型设备、家用电器等。本领域的技术人员将易于意识到,存在用于管理数据在不可靠的信道上传输的标准技术,包括反复传输、纠错码及可用于传输的其它技术,它们中的任一或全部可在任何特定情形下使用。为了提高效率,将待被复制的对象一起收集到分配包中,这里称为“切片”。切片是与具体领域(例如地理区)内的或在卫星发射机的覆盖区下的客户机相关的电 视观看对象数据库的子集。这些切片的安全性是非常重要的。切片用于添加对象到数据库,该数据库用于提供有用服务给数据库的用户,以及储存可能被认为是私人的或秘密的信息。由于切片传输的面向广播的性质,当切片被传输时它们可易于被第三方拷贝。对这些问题的实际解决方法是在传输期间将切片加密。本发明中采用的技术的理想参考文本是1995年Bruce Schneierλ John Wiley、禾口 Sons 所著的 “AppliedCryptography Protocols, Algorithms, and Source Code in C,,。在本发明的一个优选实施例中,使用类似于美国专利序列号4,405,829中描述的技术(常常描述为不对称密钥加密,或有时描述为公钥/私钥对加密),建立安全的加密信道。本领域的技术人员将认识到,基于不对称密钥加密的协议充当用于客户机装置的鉴别和信息的安全分发的可靠而有效的基础。一般而言,使用在客户机和中心系统之间的带符号的消息的交换提供鉴别。通过使用在鉴别阶段发送的短期对称密钥加密所有通信提供安全分发。成功的安全要求发送者和接收者事先就用于加密的不对称密钥对达成一致。这样的密钥分发是用于保护电子数据的任何密码系统中最弱的环节。本发明的申请人拥有的 1999 年 7 月 19 日的名称为 “Self-Test Electronic Assembly and Test System,,的美国专利序列号6,385,739描述了一种机制,通过该机制客户机装置产生自动作为制造过程中的最终步骤的不对称密钥对。这样产生的私钥储存在嵌在客户机装置内的安全的微处理器中,使得密钥永不会呈现给外部装置。这样产生的公钥传输到本地制造系统,该本地制造系统在安全的数据库中记录密钥以及客户机序列号。该数据库后来安全地传输给中心分配系统,在这里它用于执行与客户机的安全通信。所述密钥产生的独特的新应用解决了密钥分配问题,因为私钥从不呈现给客户机中的外部组件,在这里,使用例如逻辑分析器等专用工具识别该私钥。代之以,私钥可仅在安全微处理器自身内使用,以解密最初用公钥加密的消息,接着将其结果提供给外部组件。以下的描述假定了客户机和中心系统之间的所有通信如上所述被鉴别和加密。再次参看图1,在本发明的一个优选实施例中,以下步骤构成使用切片对来自中心数据库的电视观看对象的“传输”1.可存在很多用于传输切片给客户机观看装置的全体的机制。例如,可通过电话调制解调器或电缆调制解调器109直接下载切片,可将切片调制到标准电视广播108的垂直消隐区间(VBI)的线路中,或将切片添加到作为专用数据信道的数字电视多路复用信号。本领域的技术人员将易于意识到,能传输数字信息的任何机制可用于传输电视观看对象数据库的切片。准备用于传输的电视观看对象中的第一步骤正在识别将用于此特定实例的传输机制,并创建为该机制定制的数据库的子集的切片。例如,该数据库可包含与本国中的所有节目有关的电视观看对象。然而,如果将使用本地电视信号上的VBI调制发送电视观看对象,则仅与在正在用于执行它们的电视广播的覆盖区内可观看的节目有关的那些电视观看对象应包含在此相关切片内。可选地,如果电视观看对象的一些包含与特定地理区有关的宣传材料,则这些对象不应传输给其他地理区。在本发明的一个优选实施例中,穿过数据库和产生用于传输的切片的速度和周期可以任何方式进行调整,以允许形成有用的成本/性能折衷。例如,可能仅需要每隔一天或每小时创建用于特定传输方法的切片。准备每个切片的最终步骤是使用短期对称密钥加密切片。仅已经使用安全协议被鉴别的客户机装置将具有此对称密钥的拷贝,使它们能解密该切片,和存取该切片内的电视观看对象。 2. 一旦切片完成,则将其拷贝到传输机制能获取和发送数据的点110。对于电话连接,将切片放在电话服务器111上,其中当电话服务器调入时提供数据给每个客户机。如果使用电视广播,则将切片拷贝到与站电视发射机同时驻留的设备上,将其从这里调制到信号上。在这些和类似的面向广播的实例中,切片被“循环传送”,即,描述切片的数据继续重复,直到为传输提供了新切片。由于不能确保承载数据的信号可靠地到达每个客户机,所以需要切片的重复广播。客户机装置可断电,或可存在对信号接收的干扰。为了使被传输的切片在所有客户机装置处被正确接收具有很大的可能性,将它们连续重复广播,直到更新的切片可用于传输。本发明的一个优选实施例使用例如电视信号等广播机制来传输切片。然而,理想的是提供在例如调制解调器或互联网连接等基于连接的机制上的下载。使用基于连接的机制常常造成基于时间的使用费,使得理想的是使传输切片所花的时间最短。这使用两步骤程序来实现。当建立连接时,客户机系统发送先前接收的切片的清单(inventory)给电话服务器111。该服务器将此清单与应已被该客户机处理的切片的列表进行比较。未被处理的切片被传输给该客户机系统。3.通过将加密的切片分成一连串的短编号的数据包,传输该切片。这些包被客户机系统捕捉,且保持在分级区域中,直到序列中的所有包都存在。将包重新装配成切片,接着将切片解密。接着为了应用性过滤切片内的电视观看对象,其中该电视观看对象可能正在被添加到本地电视观看对象数据库中。此程序将电视观看对象中心数据库的部分可靠地复制到客户机中。本发明跟踪接收数据包的时间。从分级区域周期性地清除比所选择的时间段时间久的数据包;这避免了在等待切片的所有部分被传输期间消耗用于无限时期的空间。特别在通过广播介质传输对象时,被传输的数据中可能发生各种类型的错误。每个数据包都压印有检错码(例如,奇偶域或CRC代码)。当检测到错误时,仅丢弃该数据包。 循环广播将最终重新传输可能被正确接收的数据包。这样,能可靠地发送任何尺寸的切片; 这以在客户机上分级(stage)被接收的对象部分的代价实现,直到所有部分被正确接收。4.可能存在一个或多个被传输的“特定”切片,该切片传送服务相关数据给客户机系统,特别是服务授权信息。重要的是,如果观众没有付费或由于其它操作原因,则服务提供商能控制客户机系统对加值服务(premium service)的存取。—种特殊类型的特定切片包含“授权”对象。根据与特定客户机相关的公钥/私钥对,通常使用不对称密钥加密加密授权对象。如果安全微处理器使用嵌入的私钥成功地将切片解密,则该切片将包含一个对象,该对象表示收到另一授权对象之前所允许的时间延迟以及在短时间段内有效的一个或多个对称密钥。延迟值用于在数据库中设置表示客户机系统何时将停止提供服务的时间戳。对称密钥储存在本地电视观看对象数据库中,以用于解密可被接收的新切片。如果到设置在数据库中的时间为止客户机仍没有收到正确的授权对象,则它将开始拒绝给观众大多数服务(如服务提供商指定的)。一个或多个有限寿命的下载密钥 也包含在授权对象内,该密钥用来解密被传输的切片。明显地,如果客户机系统不能鉴别自身, 则它将不能解密任何对象。每个授权切片被单独产生和传输。如果将广播传输用于切片,则所有相关授权同所有其它切片一样被处理,且与所有其它数据一起循环传送。如果使用直接传输,例如经由电话连接等,则仅传输用于该客户机的授权切片。5. 一旦客户机装置已经收到完整的数据库切片,则它使用前面描述的方法将包含在其中的新对象添加到数据库中。从客户机系统收集信息再次参看图1,在本发明的一个优选实施例中,以下步骤构成对来自每个客户机数据库的电视观看对象的“收集”1.当观众导航其可用的电视频道时,客户机系统记录感兴趣的信息,例如调谐到的频道、调谐时间、停留时间、VCR类动作(例如,暂停、倒带)和其它感兴趣的信息。这些数据储存在本地电视观看对象中。另外,观众可表示对可用的出售或推销感兴趣,或者他可表示想要购买产品。此信息也记录到本地电视观看对象中。另外,客户机装置的操作可产生应被记录到电视观看对象中的重要数据。例如,在从客户机中的硬盘驱动器读取时可发生错误,或该装置的内部温度可超过工作参数。其它类似类型的信息可能不能正确下载对象、耗尽多个基于磁盘的操作的空间、或加速电能消
^^ ο2.在一定时间,可以是即刻的或周期性的,客户机系统经由直接连接104(通常经由电话和/或互联网连接)接触中心站点。客户机装置发送用其秘密密钥加密的识别自身的位组序列。服务器从数据库取出用于该客户机装置的匹配电视观看对象,并使用储存在数据库的密钥解密该位组序列。同时,同时,服务器发送由客户机的秘密密钥加密的位组序列到客户机,给客户机用于该会话的新的一次性密钥。为了进行通信,双方必须成功地解密其授权消息。这种双向的握手(handshake) 是重要的,因为它确保了对于客户机和服务器来说,另一方是有效的。为了避免可能发生在客户机系统上的各种攻击,这种授权是必要的。例如,如果没有以此方式鉴别通信,则有恶意的一方可能利用被破坏(corrupt)的电视观看对象数据库创建“别名”中心站点,且提供坏信息给客户机系统,造成不正确的操作。使用一次会话密钥加密所有进一步的通信。加密的通信是必要的,因为信息可通过网络,例如互联网等,在这里数据流通量易受其经过的所有设备的检查。正在被收集的观看对象可包含认为是私人的信息,从而此信息必须一直被完全保护。
假定授权阶段是成功的,则双方将全双工电话线路作为两个单向广播信道。将新切片传送到客户机,且发送回待收集的观看数据。当所有数据被传送时连接结束。本领域的技术人员将易于意识到,该连接可通过对该系统中的所有其它软件透明的网络产生,例如运行标准TCP/IP协议的互联网。3.上载的信息由服务器类似地处理;该上载的信息假定为表示将复制到中心数据库中的电视观看对象。然而,当存在许多服务的客户机时,可存在许多上载的观看对象。 因此,上载的对象被分配包含其资源信息的导航属性;接着当添加对象时将对象唯一索引到数据库名字空间中。上载的观看对象没有立即被添加到中心数据库中;代之以,它们排队等待以稍后插入数据库中。该步骤允许队列处理独立于客户机装置的连接图样。例如,许多装置可立刻连接,产生大量对象。如果这些对象被立即添加到中心数据库中,则所有连接的性能受损, 且连接时间将增加。根据持续期间对电话呼叫收费,从而其中连接时间作为加载函数增加的任何系统都是不能被接受的。这种分离的另一优点是易于容许机器或网络故障。此外,通过改变计算机系统及其配置以满足成本或性能目标,观看对象被处理和添加到中心数据库的速度可以由服务器提供商控制。这种分离的再一优点是,它提供了用于分离被收集以提高服务操作的数据和可能识别个体观众的数据的机制。重要的是,由于法律原因或为了提高个体对该服务的信任,这种鉴别数据被不公开保存。例如,分配给包含观众观看选择的记录的观看对象的导航属性可能仅包含观众的邮政区划,这意味着对这些对象的进一步处理不能构造返回个体身份的路径。在服务器上调用周期性的任务,以从数据库挑选这些对象并适当的将其除去。例如,表示观众行为的对象聚集成总的观众行为模型,并且丢弃可能识别个体观众的信息。包含操作信息的对象转送到分析任务,这可能使得客户服务人员警惕潜在问题。包含事务信息的对象被转送给事务或商业系统,以被完成。这些活动的任何一个都可造成新的电视观看对象被添加到中心数据库中,或造成现有对象被更新。这些对象将最终传输给客户机装置。因此,电视观看管理系统形成闭环, 创建自维护复制型数据库系统105,该系统能支持任何数量的客户机系统。客户机系统对电视观看对象的处理电视观看对象可能包含以下类型的信息电视节目描述和放映时间;电缆;卫星或广播信号始发站信息,例如信道数量和识别;观众喜好信息,例如演员、类型、放映时间等;软件,例如增强的数据库软件、应用软件、操作系统软件等;统计建模信息,例如喜好向量、人口分析等;以及可表示成数字数据的任何其他任意信息。应用于节目导向对象的方法节目导向对象包含在客户机系统中运行的用于调谐、接收、记录、和观看客户机系统的用户感兴趣的节目的软件所必需的所有信息,这些节目选自如由数据库中的对象所描述的所有可用节目和信道。该节目导向信息由服务提供商有规律地更新。这通过提供商以某种方式(例如, 从这种信息的商业供应者或其它广播安排信息源获得)获得节目导向信息被处理。接着使用被很好理解的软件技术处理此数据,以将该信息减少为相关的观看对象的集合。再次参看图4,示出节目导向对象之间的典型关系。电视“网络”对象407是安排和广播电视节目安排的任何实体,无论是通过空气、电缆、卫星、或其它适合的介质进行广播。 电视“节目”对象401用来描述电视广播信号的任何不同的片段,例如特定节目、商业广告、 电视台宣传、开场、尾片、或电视信号的任何其它有界部分。“放映”对象406是其上广播节目的网络的广播时间表的部分。“频道映射”对象将网络广播映射到正在使用的介质的特定广播信道上;例如,用于卫星广播服务的频道映射对象包括关于发送应答器的信息和包含广播的数据流。使用前述方法,将此节目导向数据从中心站点复制到客户机系统,在这里, 客户机系统中的应用软件使用该数据管理电视观看。服务提供商也可提供聚集观看对象,该聚集观看对象描述以某种形式相关的一组节目导向对象。例如,“Star-Trek”集合可包含对与此商标名称有关的所有节目导向对象的引用。明显地,任意节目组可以此形式聚集。聚集对象类似于目录。例如,Star-Trek集合可在层次式名字空间中的“/showcases/Star Trek”处找到。聚集对象也是节目导向对象,并且可以以类似形式被操纵,包括聚集聚集对象等。客户机系统可进一步重新定义节目对象的集合。在可将节目安排捕捉到内部存储器的系统中,每个被捕捉的节目用新的节目导向对象表示,变得可用于观看、聚集等。明确的观众行为也可导致节目导向对象的创建。例如,观众可选择几个节目,并且使得创建一个新聚集对象。对节目导向对象类型的描述并不意味着是限制性的;根据本发明的基本方法,可产生这里没有描述的节目导向对象的许多不同用途和方式。节目导向对象以五种方式被应用软件使用1.在最简单的情形下,观众可能希望浏览这些对象,以了解当前或不久可用的节目安排。该应用软件将由数据库描述的对象关系映射到某种形式的便于观众使用的视听界面。观众可表示对特定节目感兴趣,作出某一应用特定的动作,例如在节目被广播时记录该节目到本地存储器。2.应用软件也可直接处理节目导向对象,以选择观众可能感兴趣的节目。此程序通常基于与统计模型结合的先前观看的节目安排的分析,产生所有可用节目的优先级次序。最高优先级的节目可以应用特定方式被处理,例如在节目被广播时记录该节目到本地存储器。在情形1下,可将这样产生的优先级次序的部分呈现给观众,以作为另外的选择。本领域的技术人员将易于意识到,有大量现有技术集中于根据先前的观看历史和明确喜好为观众选择节目安排的方法,例如美国专利序列号5,758,257。在此申请中描述的方法相对于这些技术是独特而新颖的,因为他们建议捕捉节目安排的优先级,而不是节目安排的广播或传输,且对节目安排何时可被广播没有时间限制。后面将描述这些方法的进一步的细节。一般而言,观众对节目安排的明确选择具有最高的捕捉优先级,其次是使用这里描述的喜好技术选择节目安排。3.客户机系统将具有能通过例如内联网或互联网等网络接收电视广播或访问网页的少量输入。安排方法用于选择如何调谐每个输入,以及对所产生的被捕捉电视信号或网页如何处理。
参看图6,一般而言,如由节目导向对象所描述的,可在任何时间、在任何频道上广播观众感兴趣的节目。另外,感兴趣的节目可以是穿过例如内联网或互联网等网络的网页通用资源定位器(URL)。信道比喻也用于描述特定网址或网页的位置或URL。例如,通过指定网址URL作为信道,观众可“调谐”到网址中。无论何时选择该信道,都显示网址。也可将网页指定为感兴趣的节目,并在预定时间获得和记录网页快照。调度程序(schedule)将可能按照上述情形产生的节目观看喜好603的优先列表作为输入接受。调度方法601接着将此列表与节目导向对象604的数据库进行比较,该数据库表明何时实际广播感兴趣的节目。它接着产生时间607对可用存储空间606的时间表, 其中该时间表对观众的明确的或导出的优选节目是最优的。后面给出对这些方法的进一步的细节的描述。4.当观看被捕捉的节目时,将匹配的节目导向对象用于提供关于该节目的附加信息,其中使用任何适合的技术,优选地是某种形式的在屏显示(OSD),将该信息覆盖在显示屏上。这种信息可包括但不限于节目名称;时间,原始广播的信道或网络;截止时间;运行时间或其它信息。5.当观看实时节目安排时,应用软件使用当前时间、信道、和信道映射来找到匹配的节目导向对象。使用上述任何适合的技术显示来自此对象的信息。在观众改变信道时, 在新节目开始时,根据商业暂停后节目的恢复、根据观众需要、或根据其它条件自动显示该 fn息ο6.使用类似于情形2中描述的技术,应用软件也可捕捉观众可能感兴趣的宣传材料。该信息可根据观众需要呈现,或在某一适宜的点自动插入输出电视信号中。例如,广播节目中的广告可用具有较高喜好优先级的不同广告代替。使用时间异常设备,例如于1998 年7月30日提交的美国专利序列号6,233,389描述的名称为“Multimedia Time Warping System”的设备等,可能在任何点将任何储存的节目插入输出电视信号中。在插入储存的节目以进行这项工作期间,该时间异常设备允许延迟被覆盖的节目。用于产牛优诜节目列表的方法可以多种方式获得观众喜好。观众可请求捕捉一定的节目,这使那些节目具有可能最高的优先级。可选地,或许响应于特定节目的宣传插播广告,或甚至在观看节目期间, 观众可使用通过观众界面提供的附件明确地表达喜好。最终,可从观看图样(观看的节目, 观看或跳过的商业广告等)推出喜好。在每种情形下,这种喜好必须相应于储存在复制的数据库中的电视观看对象。节目对象包括关于每个特定节目的很多信息,例如标题、制片人、导演、演员、收视率等。这些元素作为与节目对象相连的属性储存。每个单独的属性可导致喜好对象的产生。这种对象储存以下信息1.喜好项目的类型,例如演员或导演喜好;2.观众所给的喜好权重(weight),可能用多个按钮或其它方式表达;3.喜好关于其它喜好的静态分配的重要性,例如,演员喜好比导演喜好更重要;4.喜好项目的实际值,例如导演姓名。参看图5,喜好对象作为层次(hierarchy)储存在数据库中,该层次类似于描述节目导向对象的层次,然而,随着喜好的表达递增的构造此层次500。这样构造的层次基于“直接”喜好,例如,从观众动作或推出的喜好推导出的喜好。根据指向相同喜好对象的“间接”喜好501发展类似层次。一般而言,间接喜好在产生用于聚集对象的喜好时产生,且用于进一步加权由聚集对象的集合暗示的直接喜好。 通过列举为聚集对象502的部分的可用节目对象,和产生或更新这样找到的每个属性的喜好对象,产生或更新通过间接喜好层次引用的喜好对象。特定喜好503的权重以零开始,然后基于表达的喜好度(或者通过多个按钮)加标准值,或如果表达不感兴趣,则减去标准值。如果基于聚集观看对象表达喜好,则类似地加权由从属于聚集的对象的所有观看对象产生的所有喜好。因此,从先前的加权产生相关喜好元素的新加权。此程序由允许被表达的喜好度限制,从而所有加权落在有界的范围内。在本发明的一个优选实施例中,非线性组合可用于加权喜好项目。例如,使用由中心站点提供的统计模型,客户机可推导出,关联的三个属性的权重很大的喜好表示第四个属性的权重也应很大。优选节目的列表如下产生1.构造列出每个可能的节目对象属性的表504,并将存在的用于该属性的任何喜好对象列在该条目中。2.如果喜好项目是字符串,例如演员名字等,则使用32位CRC算法计算用于该字符串的32位数字签名,并与表项目一起储存而不是储存字符串本身。因为避免了字符串比较,所以这允许对表的快得多的扫描,但存在两个不同的字符串产生相同的数字签名的微小风险。3.对于数据库中的每个节目对象,和对于该节目的每个属性,在表中查找该属性。 如果存在,则对于与当前节目对象的属性的匹配,检查用于该属性的喜好对象的列表。如果存在匹配,则将与该喜好对象相关的权重加到与该节目对象相关的加权上,以产生用于该节目的单个权重。4.最终,根据用于每个节目的总加权,对节目对象进行等级排序,形成最优选对最不优选节目的列表。给出此最终的优先级列表,使用上述方法产生记录时间表,形成观众最感兴趣的被记录节目的集合。应用于安排记录对可用存储空间的方法如前面已经描述的,一般而言,被记录的节目将具有截止日期,在此日期后从客户机存储器除去被记录的节目。观众可在任何时间表示一个节目应保存得更长,这通过观众选择的间隔延迟截止日期。本发明将用于记录节目的可用存储器看作“高速缓存”;根据这样的假定如果在记录后没有很快观看节目将假定不观看它,在一段时间后除去未观看的节目。在假定观看过的节目不再感兴趣时,观看过的节目变成用于删除的中间候选对象。适当安排老节目的记录和删除,可能使得较小的存储区看起来大得多,因为不断除掉老节目和添加新节目。另外,如果资源可用,则可根据观众的导出喜好安排节目的记录;这称为“模糊”记录。这形成节目存储区总是“充满”观众感兴趣的节目安排的系统;直到将另一节目记录在此节目的位置或观众明确删除该节目,才除去该节目。另夕卜,观众可在任何时间选择记录的节目,但记录窗可能与其它安排的记录冲突, 或在必须记录该节目时没有得到足够的空间。本发明包括解决这种冲突的独特而新颖的方法。可由于以下两个原因产生冲突缺少存储空间、或缺少输入资源。这里描述的电视观看系统包括用于记录视频的固定数量的输入资源和例如磁盘等具有用于储存被记录的视频的有限容量的存储介质。在任何相当大的时间段内记录所有电视节目广播是不可能的。因此,解决由于资源限制造成的冲突是使正确的节目可用于观看的关键。再次参看图6,本发明保存两种时间表空间时间表601和输入时间表602。空间时间表跟踪所有当前被记录的节目和那些已经被安排到将来记录的节目。通过产生所有被占用的空间(或此时将被占用的空间)的总和以及从可用于储存节目的总容量减去该总和, 可找到在任何给定时刻可用的空间量。在此计算中没有考虑基于导出喜好安排记录(“模糊”记录)的节目;这种节目自动失去所有冲突决定。如果在开始记录和节目期满之间的任何时候,有充分的空间可用于保持该节目, 则可记录该节目603。此外,对于节目的持续时间,必须存在可用于从其记录节目的输入。 输入时间表602跟踪每个输入资源的空闲的和被占用的时隙。在本发明的一个优选实施例中,输入资源没有用于相同服务,例如,一个输入可来自数字电视信号,另一输入可来自具有不同节目安排的模拟电视信号。在此情形下,在安排期间仅考虑从其可记录想要的节目的那些输入。参看图7,示出描述在优选实施例中安排记录所采取的步骤的流程图。首先,产生感兴趣的节目放映的有序列表701。尽管本发明的一个优选实施例根据时间对这些放映排序,以便尽可能快地进行记录,但也可选择任何特定的排序。接着检查此列表中的每个放映 702,查看输入703或空间704是否发生如上所述的冲突。如果发现放映没有冲突,则安排记录该节目705。否则,本发明的一个优选实施例仅选择那些没有输入冲突的节目的放映706。再次参看图6,可看到,在记录的使用期限内,可用空间量将随着其它节目被记录或期满而改变。接着优选通过候选记录使用期限内的最小可用空间量对放映列表排序。也可选择其它排序。再次参看图7,对于每个候选放映,呈现给观众缩短冲突节目上的截止日期的选择 708、709。这种排序造成以从对安排的节目的最小影响到最大影响的顺序将这些选择呈现给观众707 ;与任何其他排序相对的使用此排序不是本发明的要求。如果观众拒绝所有缩短截止时间的机会,则最终的步骤包括选择那些具有输入冲突的放映710,并象第一冲突解决方法阶段那样对这些放映排序711。接着呈现给观众支持想要的节目取消的每个先前安排的记录的选择712、713。当然,观众可最终决定将不记录任何新节目714。在本发明的一个优选实施例中,尽可能早地解决所有冲突,给观众对记录什么有更大控制权。当观众明确选择了要记录的节目时,图7中描述的算法用于立刻安排记录和管理产生的任何冲突。一旦已经做出明确的选择,且通知了观众记录将完成,则没有观众的明确同意,不会取消它。利用客户机装置上的背景任务周期性地安排模糊记录。给出前面描述的优选节目的优先级列表,背景调度程序试图依次安排每个优选节目,直到列表用完,或没有进一步的记录机会可用。当且仅当与其它安排的节目没有冲突时安排一个优选节目。在两种条件下可删除已经被安排的优选节目首先,如果它与明确的选择冲突,其次,如果观众喜好的改变确定了此时可被记录的具有较高优选级的节目。在处理要求记录的聚集观看对象时产生另一复杂情况。如果根据上述的用于所述对象的方法处理冲突解决,则可能产生潜在的大量冲突,造成在解决此冲突中观众的经验混乱和受挫。因此,当选择聚集对象进行记录时,利用(in favor of)现有时间表,自动解决冲突以支持现有时间表。在本发明的一个优选实施例中,将使用所涉及的节目的喜好加权解决由记录聚集对象造成的冲突;如果聚集对象中的特定节目造成多个冲突,仅当其喜好胜过所有冲突节目的喜好,才记录它。应用于软件对象的方法客户机系统要求复杂的软件环境用于正确操作。操作系统管理客户机中的硬件装置和操纵这些装置的软件应用之间的交互。电视观看对象数据库由不同的软件应用管理。 时间异常软件应用是另一应用。理想的是在客户机硬件装置上运行的这些和其它软件子系统中添加新特性或纠正缺陷。使用这里描述的方法,可能将包含更新的软件模块的观看对象复制到客户机系统数据库中。一旦存在于客户机系统数据库中,则以下独特而新颖的方法用于安装更新的软件和使得客户机系统开始执行新软件。以在首先将电力应用于该装置的步骤顺序例示该装置的软件环境,每个步骤都建立支持下一步骤的正确应用的状态信息。最后的步骤开始管理该装置并与观众交互的应用。这些步骤是1.该装置中的只读或电可编程存储器保持初始引导程序指令序列。这些指令初始化客户机装置的低级参数,初始化磁盘存储系统,并将引导装入程序从磁盘装载到存储器中,接着执行传递到该存储器。如果该初始引导程序驻留在电可编程存储器中,则可改变该初始引导程序。2. 二级引导装入程序接着定位磁盘驱动器上的操作系统,将操作系统装入存储器,并传递执行到操作系统。该装入程序必须存在于磁盘上的特定位置,以便易于被初始装入程序定位。操作系统执行必要的硬件和软件初始化。接着它从磁盘驱动器装载观看对象数据库软件,且开始执行该应用软件。也可装载和开始其它应用软件,例如时间异常软件和观众互动软件等。该软件常常位于磁盘上与对象数据库或被捕捉的电视节目分离的区域中。理想地,仅通过将新软件拷贝到磁盘驱动器上的适当位置并重新启动该装置,安装该新软件。这种操作充满危险,特别在家庭环境中更是如此。在拷贝该软件期间可发生电源故障,导致不一致的软件图像和潜在的操作问题。该新软件可具有阻碍正确操作的缺陷。磁盘驱动器上可出现故障,破坏(corrupt)软件图像。尽管本发明的方法已经参考了磁盘驱动器,但本领域的技术人员将易于意识到, 这里描述的方法一般应用于任何永久存储器系统。磁盘驱动器和其它永久存储器系统通常格式化成固定尺寸的块序列,称为扇区。“分区”是此序列的连续的不重叠子集,用于将存储器分成逻辑上独立的区域。
参看图8,本发明将信息扇区保持在磁盘驱动器803上的固定位置,称为“引导扇区”804。引导扇区804包含用于初始引导程序801的充分信息,以理解驱动器803的分区, 和定位二级引导装入程序806。磁盘被分成至少七(7)个分区。存在专用于保存二级引导装入程序806的拷贝的两(2)个小分区、保存操作系统内核807的拷贝的两(2)个分区、包含应用软件808的拷贝的两(2)个分区、以及用作暂时存储器809的一个分区。对于被复制的分区,在引导扇区 805中记录一指示,其中一个分区标记为“主”,第二分区标记为“备用”。本领域的技术人员将易于意识到,尽管对于冗余(redundancy),这里描述了两个分区,但通过创建更多个复制的分区可获得三倍、四倍、或更多倍的冗余度。参看图9a和%,在引导程序901上,初始引导程序代码读取引导扇区902、扫描分区表、和定位用于二级引导装入程序的“主”分区。它接着试图将此程序装入内存中903。 如果它失败904,例如,由于磁盘驱动器故障,则引导装入程序试图将“备用”分区中的程序装入内存中905。无论哪种尝试成功,弓丨导装入程序都接着传递控制以及从那个分区装载程序的指示到最新装载的程序906。类似地,二级引导装入程序读取分区表,并定位“主”操作系统内核907。如果不能装载内核908,则代之以装载“备用”内核909。无论如何,控制与资源分区的指示以及来自上述的被传递的资源分区一起传递到操作系统910。最终,操作系统定位包含应用软件的“主”分区,并试图装载初始应用911。如果失败912,则操作系统定位“备用”分区,并从它装载初始应用913。资源分区的指示与来自前一步骤的资源分区信息一起传递给初始应用。此时,应用软件取代(take over)客户机系统,且开始正常观看管理行为914。此操作顺序提供了防止磁盘存取错误的合理等级。也使得在这些等级的任一处的新软件被安装和可靠地开始运作。对象数据库中的“安装程序,,观看对象用于记录软件安装尝试的状态。它记录上述三个等级中的每个的分区状态,包括安装新软件的尝试在进行中的指示915。由于数据库的事务性质,此操作是可靠的。参看图10,在三个等级的任一处安装新软件图像的处理如下首先将新的软件图像拷贝到适当的备用分区中1001,然后在数据库中做出指示,软件安装在进行中1002。接着交换分区表中的主和备用分区指示1003,且重新启动系统1004。最终,将控制传递到初始应用。再次参看图%,该应用软件的第一任务是更新安装程序对象。对于每个等级921、 922,应用软件检查安装是否在进行中916、917,并核实是否从主分区卸载该等级918。如果是,则在此等级的安装是成功的,且更新安装程序对象,以表示该等级成功919。否则,应用软件将该等级的备用分区拷贝到主分区,且表示该等级的安装程序对象失败920。拷贝该分区确保了已知的用于一个等级的好软件的备用拷贝一直保持可用。在本发明的一个优选实施例中,可延迟安装软件的最高应用级的完成,直到已经成功装载和开始应用环境的所有部分。这提供了应用环境的所有部分在永久切换到新软件之前正确工作的另外的保证级。应用于操作状态对象的方法
操作状态对象是一类观看对象,其中记录关于使用的信息、客户机系统的性能和行为。只要建立与中心站点的通信,则这些对象由中心站点收集。为了以后收集,记录以下操作状态指示符(indicator)以及时间戳1.记录观众动作,主要是遥控装置上的按钮。每次按“按钮”与当前时间、以及例如当前观众上下文等任何其他上下文信息一起被记录。此对象在中心站点的后处理造成观众动作的完整追踪,包括进行每个动作的上下文。2.记录自动动作,例如节目记录的开始或结束,或根据观众喜好选择节目来记录。 此外,记录被捕捉的节目的删除。此对象在中心站点的后处理造成由客户机系统进行的节目捕捉动作的完整追踪,包括在及时的驻留在永久存储器的任何点的节目。3.记录软件安装动作,包括接收、安装、和重新启动后的结果。4.各种类型的硬件异常,包括但不限于电源故障/重新启动、装置的内部温度配置文件、永久存储器存取错误、存储器奇偶校验错误、和主分区故障。由于所有动作是与时间戳一起被记录的,所以可能使用基于线性时间的排序重新构造客户机系统的行为。这允许人工或自动方法在事件的有序表上工作,使动作和行为关联。例如,如果在用新软件重新启动后不久没有发生期望的自动动作,则可以推导出新软件有缺陷。中心站点系统对电视观看对象的处理电视观看对象资源客户机系统具有单个电视观看对象资源中心站点。中心站点对象数据库具有许多电视观看对象资源1.处理从外部资源获得的节目导向信息,以产生节目导向对象的相容集,表示“节目”、“放映”、“信道”、“网络”和其它相关对象。这组对象将具有依赖性(“信道”依赖于“网络”,“放映”依赖于“节目”)和其它相互关系。当对象的完整的相容组准备好时,将其作为原子操作添加到数据库中。2.首先将新软件封装到“软件”观看对象中,其中新软件包括现有软件的新应用或修订。如上,该软件可具有相互依赖性,例如应用依赖于动态装载库,该相互依赖性必须反映在涉及的软件对象的相互关系中。在另一实例中,有两种类型的客户机系统在使用中, 其中的每个都要求不同的软件对象;这些软件对象必须呈现表示它们对准的系统类型的属性。一旦对象的相容组可用,则将其作为原子操作添加到数据库中。3.每个客户机系统具有嵌在其中的唯一的秘密密钥。将匹配此秘密密钥的公钥以及关于客户机的其它感兴趣的信息(例如,客户机类型,系统中的存储量等)装载到“客户机”管理对象中。这些对象用于在必要时产生授权对象。4.以类似方式添加聚集节目导向对象。然而,在此情形下,该聚集节目导向对象一定是指已经存在于数据库中的原始节目导向对象。例如文本描述、基于屏幕的图标等其它对象和其它信息属性等也与该聚集对象关联。一旦该聚集对象的辅助对象的相容组可用, 则可将其作为原子操作添加到数据库中。5.从客户机系统收集的数据清楚的是,可存在任何数量的观看对象资源,且此列举仅示出可能的最基本的资源。
在电视观看对象上的操作在中心电视观看对象数据库上存在大量可能的操作。以下实例用于示出可能执行的处理类型,然而,潜在的操作不限于这些实例1.使用各种观看对象,可执行许多感兴趣的统计分析任务1. 1.通过检查大量上载的操作状态对象,可能执行硬件可靠性趋势和故障模式的外延分析。例如,可能使内部温度与期望的客户机装置的MTBF(平均无故障时间)关联。1.2.通过检查大量上载的观看信息,可能推导出关于客户机装置的各种群体 (population)的人口统计或心理图案信息。例如,可能使其中有客户机装置驻留的特定邮政区划内最频繁观看的TV节目相互关联。1.3.类似地,通过检查大量观看信息对象,可能利用完全自动的方法(不同于现有的节目收视率方法)产生用于特定节目的“收视率”和“共享”值。1. 4.可能存在其它可在观看对象数据库上执行的统计分析任务的实例;这些实例不是意味着限制本发明的应用性,而是以实例示出可能被执行的操作的范围。2.可根据所有可用观看对象的一个或多个属性自动产生特性(specialty)聚集对象。通常通过首先从每个观看对象提取感兴趣的信息(例如节目描述、演员、导演等),然后构造节目和属性简表执行这样的产生(特征聚集对象)。接着通过选择一个或多个属性,并将该聚集添加到所选择的属性以某种方式匹配的节目,产生聚集观看对象。接着,可能根据地理或其它信息,将这些对象包括在为了传输而产生的切片中。可能创建的一些实例聚集是2. 1.基于事件的聚集,例如大城市中的总联合会足球比赛。在此情形下,收集可由该城市中或该城市周围的客户机装置观看的所有节目,接着节目描述搜索团队的名字、教练名字、主要球员名字、球场名等。将匹配的节目对象添加到该聚集,然后将该聚集切片,仅传输到城市中或城市附近的区域中的客户机装置中。2. 2.基于大量观众普遍感兴趣的人的聚集。例如,聚集可由下周广播的所有“John Wayne"电影构成。2.3.可产生基于观看行为的聚集。在此情形下,为普遍感兴趣的元素(例如观看的节目类型、观看的实际节目等)扫描上载的观看对象。例如,可能产生上周在所有客户机装置上观看的节目的“前十列表”聚集,包括这些节目的下周放映。2.4.基于观众明确选择的聚集。在观看节目期间,可呈现给观众在当前节目上 “投票”的机会,这或许根据四个理解的(perceived)属性(故事情节,演技,导演,电影摄影术),该投票机会产生后来上载的观看对象。接着扫描这些投票,以确定节目的总收视率,其中节目的总收视率被传输给为其细读投票的人。2. 5.关于本发明的基本设备如何允许服务操作员提供预排序和预选择的相关节目组给客户机装置的用户进行细读和选择,存在很多其它实例。这些实例并不意味着限制了本发明的应用性,仅以实例示出可能执行的操作的范围。3.也可使用人工方法产生聚集对象,一种有时称为“编辑”的程序。在此情形下, 创建聚集的人选择节目来明确添加到该聚集。接着以与上述相同的方式传输该聚集。明显地,聚集节目对象也可允许喜好的表达或其它信息的记录。这些结果可上载到中心站点,以形成下一轮聚集产生或统计分析等的基础。这种反馈环封闭了服务提供商和使用客户机装置的观众全体之间的线路。通过为服务提供商提供独特而引人注目的方式来呈现和宣传人们感兴趣的电视节目的观看,同时保持服务的可靠而一致的操作,这种独特而新颖的方法提供了一种新的电视观看形式。经由客户端机制内容的对准随着例如本发明的客户机系统等“胖客户机”装置的出现,可能使内容更有效和有选择地对准用户。传统的内容对准机制依赖于利用中心服务器做出的对准决定对用户的服务器端跟踪·可扩缩性-随着用户数量的增长,或保存的关于每个用户的信息量的增长,中央服务器需要与增长成比例(scalewith)。这可能是非常昂贵的。 隐私-关于用户的信息保存在中心位置中。许多人不喜欢这种做法。一些人拒绝参与,降低了该机制的有效性。·有限的对准-由可扩缩性和隐私强加的限制意味着,可获得的目标类型受到限制。一些系统仅根据邮政区划对准。其它系统基于购买的类似产品。没有系统能跟踪任何事务,因为要么它占用太多空间,要么用户完全不支持它。本发明的客户机系统提供了一种不同的方法。经由客户机系统将用户的信息秘密保存在其自己家中,而不是在中央位置跟踪用户。客户机系统对如何对准用户作出决定。与中央服务器方法相反,本发明的方法具有许多优点·可扩缩性-当新客户出现时,他们自己仅购买客户机系统。中心服务器无需增长。由于客户机是“胖”的,所以他们可易于接受新的数据库模式和用于新属性跟踪的对象。·隐私-在家中本地储存用户的一切。客户机装置将可匿名的报告数据送回电话服务器,但是这不是要求。 无限的对准-由于客户机系统能接收元数据、新数据库模式、和/或软件升级,所以它们能易于用新的对准算法重新编程。通过发送新元数据到现有数据库模式或用新模式更新,可简单地修改客户机系统上的现有算法。对准方法的实例本发明的基于客户机的对准形式是无限灵活的。它可应用于几乎所有多媒体情形,包括但不限于TV节目、电影、广告、产品、和服务提供、音乐、无线电、音频等。这里有几个实例广告的对准-人口统计学方法参看图11和12,本发明的分布式服务器1101分配可用广告信息给客户机系统 1103、1104、1105。使用人口统计学方法使广告对准用户的发生如下·客户机系统1103、1104、1105仅跟踪客户机系统自身的邮政区划。 分布式服务器1101下载/广播从邮政区划到PRIZM代码的映射到所有客户机系统 1103、1104、1105(参看下述)。 客户机系统1103、1104、1105接着仅跟踪其的相关PRIZM代码。客户机系统随意丢弃其它代码。 分布式服务器1101下载/广播下述给所有客户机系统1103、1104、1105 关于可用广告的元数据,包括应用每个广告相关I3RIZM代码;广告的广播时间;呈现广告的适当的日期时间;与广告一起呈现的适当节目等。·客户机系统1103、1104、1105接着根据从服务器1101接收的元数据决定自己捕捉什么广告,并将它们呈现给用户。例如,服务器传输包含广告A、B、C、D、EjP F的循环信道1202。客户机系统11203根据其PRIZM代码可调入并捕捉循环信道1202上的广告B和 E,同时客户机系统21204捕捉广告D,且客户机系统η 1205捕捉广告B。·注意,尽管服务器1101可以是单向广播机制,但是用户获得完全对准的广告。PRIZM(Potential Rating Index for Zip Markets,邮政区划市场的潜力等级指数)系统为美国的每个邮政区划提供了具有标准特征组(称为“簇”)的市场部。在raiZM 中,根据该区域的共享的社会经济学特征,每个邮政区划被分配六十二个簇的一个或几个。TV节目安排的对准-仅节目数据的方法此实例示出使用来自观众的观看习惯的数据和即将到来的节目上的数据如何使电视节目安排对准特定观众。与上面描述的模糊节目一样,记录匹配观众的观看配置文件的即将到来的节目。 分布式服务器1101广播/下载元数据到所有客户机系统1103、1104、1105,描述
节目(演员、导演、类型等)。·客户机系统1103、1104、1105跟踪被记录和被观看的节目以及用户对这些节目
的喜好。·客户机系统构造给其所知的每个演员、导演、类型等一个权重或等级(rating) 的“喜好配置文件”。·客户机系统根据该配置文件选择满足用户的个人喜好的节目。·再次注意,服务器对用户个人喜好一无所知。客户机秘密地作出所有决定。TV节目安排的对准-协作方法本实例示出客户机系统如何使用协作信息(即,通过用户收集的信息)选择节目来记录或推荐给观众。 分布式服务器1101广播/下载元数据到所有客户机系统1103、1104、1105,该元数据描述根据匿名回程数据(baclchaul data) ( S卩,当从客户机系统收集观看对象时)或任何其它方法(或许甚至以编辑身份)产生的节目的成对或分组。例如,“Barney”与“Sesame Street”成对,因为观看/喜欢Barney的家庭往往观看/喜欢ksame Street。·客户机系统取得此“相关表”,并将此相关表与观众已经选择来记录或已经表达感兴趣的节目进行比较。接着推荐相关性很高的其它节目,或将其作为模糊记录来记录。·注意,这类似于Amazon. com.Netflix. com等使用的其它“协作过滤”技术,差别是,中心服务器不需要知道任何特定客户机的任何事情,且由客户机进行推荐。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
2权利要求
1.一种用于使用客户机系统使多媒体内容对准观众的方法,包括以下步骤在客户机系统上跟踪观众喜好,所述客户机系统是多个客户机系统之一;其中所述客户机系 统使用所述被跟踪的喜好作出现众的配置文件;在客户机系统上接收来自服务器的信息,所述信息描述广播内容的成对或广播内容的分组;以及使用所述观众配置文件从接收到的所述广播内容的成对和分组信息选择广播内容以便记录在客户机系统上。
2.根据权利要求1所述的方法,其中所述广播内容选择步骤通过将所述成对和分组信息与所述观众配置文件比较来选择内容,并且其中如果所述观众配置文件与所达成对和分组信息的任一高度相关,则所述广播内容选择步骤记录高度相关的所述内容。
3.根据权利要求1所述的方法,其中所述广播内容包括以下任一TV节目、电影、广告、 产品和服务提供、和音频内容。
4.根据权利要求1所述的方法,其中所述广播内容选择步骤在指定时间调谐到特定频道,以记录所选择的广播内容。
5.一种用于使用客户机系统使多媒体内容对准观众的设备,包括用于在客户机系统上跟踪观众喜好的模块,所述客户机系统是多个客户机系统之一;其中所述客户机系统使用所述被跟踪的喜好作出观众的配置文件;用于在客户机系统上接收来自服务器的信息的模块,所述信息描述广播内容的成对或广播内容的分组;以及客户机系统上的内容记录装置,用于使用所述观众配置文件从接收到的所述广播内容的成对和分组信息选择广播内容以便记录在客户机系统上。
6.根据权利要求5所述的设备,其中所述内容记录装置通过将所述成对或分组信息与所述观众配置文件比较来选择内容,并且其中如果所述观众配置文件与所达成对和分组信息的任一高度相关,则所述内容记录装置记录高度相关的所述广播内容。
7.根据权利要求5所述的设备,其中所述广播内容包括以下任一TV节目、电影、广告、 产品和服务提供、和音频内容。
8.根据权利要求5所述的设备,其中所述内容记录装置在指定时间调谐到特定频道, 以记录所选择的内容。
全文摘要
一种使用客户机系统使多媒体内容对准观众的设备及其方法,该方法包括在客户机系统上跟踪观众喜好,所述客户机系统是多个客户机系统之一;其中所述客户机系统使用所述被跟踪的喜好作出现众的配置文件;在客户机系统上接收来自服务器的信息,所述信息描述广播内容的成对或广播内容的分组;以及使用所述观众配置文件从接收到的所述广播内容的成对和分组信息选择广播内容以便记录在客户机系统上。
文档编号H04N7/24GK102202239SQ201110116199
公开日2011年9月28日 申请日期2004年1月8日 优先权日2003年1月8日
发明者詹姆士·巴顿, 霍华德·卢克 申请人:提维股份有限公司