CN1758246A - 用于脱机显示和辅助信息导航的数据缓存 - Google Patents

用于脱机显示和辅助信息导航的数据缓存 Download PDF

Info

Publication number
CN1758246A
CN1758246A CNA2005100896509A CN200510089650A CN1758246A CN 1758246 A CN1758246 A CN 1758246A CN A2005100896509 A CNA2005100896509 A CN A2005100896509A CN 200510089650 A CN200510089650 A CN 200510089650A CN 1758246 A CN1758246 A CN 1758246A
Authority
CN
China
Prior art keywords
data
ancillary equipment
caching
computer
computer system
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
Application number
CNA2005100896509A
Other languages
English (en)
Inventor
A·J·福勒
C·A·斯蒂
J·佩雷斯
M·P·罗顿
S·R·德雷克
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN1758246A publication Critical patent/CN1758246A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02BHYDRAULIC ENGINEERING
    • E02B7/00Barrages or weirs; Layout, construction, methods of, or devices for, making same
    • E02B7/20Movable barrages; Lock or dry-dock gates
    • E02B7/205Barrages controlled by the variations of the water level; automatically functioning barrages
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02BHYDRAULIC ENGINEERING
    • E02B13/00Irrigation ditches, i.e. gravity flow, open channel water distribution systems
    • E02B13/02Closures for irrigation conduits
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02BHYDRAULIC ENGINEERING
    • E02B7/00Barrages or weirs; Layout, construction, methods of, or devices for, making same
    • E02B7/20Movable barrages; Lock or dry-dock gates
    • E02B7/54Sealings for gates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/02Details of power systems and of start or stop of display operation
    • G09G2330/021Power management, e.g. power saving
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/02Details of power systems and of start or stop of display operation
    • G09G2330/021Power management, e.g. power saving
    • G09G2330/022Power management, e.g. power saving in absence of operation, e.g. no data being entered during a predetermined time

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Structural Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Civil Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

一种系统,通过该系统,应用程序将数据提供给辅助显示设备(与主计算机系统相结合)用以进行显示,包括当主计算机系统断电时。缓存保存了与结构化导航信息相结合的用户数据,以允许通过该结构在数据中进行导航。当联机时,主计算机系统从与导航信息相结合的程序数据中准备数据的缓存,并将该缓存发送给脱机介质,例如固件中的辅助存储器。该缓存可排列为树形结构,从而使导航命令根据树形结构中的数据产生输出。其它诸如基于时间的事件之类的事件可以改变辅助设备的输出。

Description

用于脱机显示和辅助信息导航的数据缓存
相关申请的交叉引用
本发明涉及下述同时联合申请的美国专利申请,这些申请均委托于本发明的代理人,并在此将它们作为整体结合参考:
“辅助计算设备接收的信息的处理”,代理记录为No.4450;
“理解上下文关系的辅助显示平台和应用”,代理记录为No.4460;
“辅助显示系统结构”,代理记录为No.4470。
发明领域
本发明总地涉及计算机系统,特别是用于为计算设备显示信息的改进系统。
发明背景
便携式计算机和其他移动设备允许用户在不同地点工作,为用户提供了很大的方便。然而,移动设备在不同地点间的旅行过程中常会断电,特别是在搬运过程中盖子通常为闭合状的便携式计算机。因此,访问设备上的相关数据需要打开便携式计算机的盖子,等待加电,以及定位到想要的数据。这是一种费时并且不令人满意的用户体验,特别是当所需要的数据如同会议房间号一般简单时。
美国系列专利申请No.10/429,930和No.10/429,932针对通常具有辅助处理和辅助装置的计算机系统,特别是与显示有关的装置,这种计算机系统提供了一些计算功能性。例如,便携式计算机盖子上或侧面的小液晶显示器可以将有用的信息提供给它的所有者,诸如会议地点和时间。
然而,这种辅助显示器在此之前被限定为狭窄的、受限的操作,其中定制了与可以显示的信息相关的辅助显示程序。例如,当想要得到会议信息时,如果辅助显示程序被设计为显示这种指定类型数据,并根据当前会议的相关数据来设计时,用户将只看见该信息。
因此,需要一种用于应用程序的方法来提供用于在计算机系统的辅助显示器上进行显示和导航的适当数据,其中该应用程序运行在该计算机主操作系统下,包括在不能简单地进入主显示器时,例如计算机系统断电时。
发明概述
简单地说,本发明提供了一种与用户应用程序数据相关的缓存,其允许用户在主计算机系统断电(脱机)时,通过辅助显示器和相关联的用于保持激活的执行器在信息中定位。这种缓存保持了与结构化导航信息相关联的用户数据,由此用户可以通过该结构在数据中导航。该结构化的缓存提供了一种灵活机制,并不将用户限制到可以存储的数据类型上。
为了实现脱机操作,当联机主CPU时,操作系统和应用程序准备数据的缓存和其他信息,所述其他信息随后将传送给脱机使用的固件中的辅助存储器。该传送可以是在转换到断电状态时缓存的完全传送,或者与预先存储的数据同步。辅助设备可以附属于该计算机系统,或者可以将缓存做成可用于其他设备的远程访问,在该情况下缓存是将其他设备连接到主计算机数据的实体,实质上是为其他设备提供辅助显示。
提供一种分层结构,通过该结构来注册应用程序等(例如操作系统组件),以将用于辅助显示的数据提供给辅助设备服务层。在其他操作中,服务层配置成为将数据结构化到缓存中。该结构可以对应于用户的导航,从而使从用户处所接收的导航命令可以带领用户遍历该结构。例如,可以由树形结构的分支来代表提供数据的每个应用程序,分支下具有子节点来进一步提供一些导航路径和/或一些应用程序数据的子集。注意除脱机导航之外,缓存可用于联机导航,尽管在联机时为了有效和处于最新的状态,缓存中的一些数据可以是指向主系统中数据的参考点,而不是实际的数据。此外如果使用该方式,联机缓存无需提供和脱机缓存相同的数据,例如用户在联机时想要得到不同于脱机时的应用程序,并且由于固件中存储空间的限制,一些应用程序的数据在脱机时可能必须进行删除。
在一种实施方式中,将缓存排列为树形结构,从而只需要向上或向下导航命令来导航该树,以及一种进行选择操作的选择机制(例如选择键或组合/动作模式键)。主页保存在固件中,并以最小的方式提供一种获得应用程序或程序的数据的方法。例如,如果缓存是树形结构,主页则是树中的根节点,并可以提供应用程序的(可卷动)列表,应用程序由直接从根/主页节点分支的节点来表示。
当用户导航该树时,辅助设备的输出可以更改,例如通过发送新的缓存位图给显示器,或者通过翻译缓存的置标数据等来提供新的显示。用户因此得到显示各种用于浏览缓存的应用程序数据的显示屏的脱机体验。
除了程序数据以外,固件还可以包含基于时间的事件数据或其他诸如基于功率状态的事件之类的基于事件的数据。例如,对于基于时间的事件,固件可以设置启动事件的时间触发中断。当接收到这种事件时,固件确定事件的含义,并可以响应该事件改变辅助设备的状态,例如给出缓存的会议提醒,点亮指示器或执行一些其他编程的动作。
通过以下结合附图的详细描述,将体现出其他优点。
附图的简单描述
图1是显示可结合本发明使用的通用个人计算机形式的通用计算设备的方框图;
图2A-2E举例说明通常各种设备上辅助显示器放置的定位;
图3是一种根据本发明一个方面的分层结构的方框图,通过该结构应用程序可以与任意辅助显示设备的固件交换数据;
图4显示了在根据本发明一个方面的实施方式中,与辅助显示服务程序接口的已知辅助应用程序如何与辅助显示设备交换数据;
图5是显示根据本发明的一个方面,提供脱机导航组件的方框图;
图6显示了根据本发明的一个方面,用于高速缓存用户数据来提供脱机导航的树形导航结构;以及
图7显示了根据本发明一个方面的结构化缓存树的节点。
详细描述
典型操作环境
图1是表示实施本发明的个人计算机系统形式的计算设备120的方框图。本领域的技术人员将意识到图1中所描述的个人计算系统120仅用于解释说明,本发明还可用于其他计算机系统结构,包括手提设备、多处理器系统、基于微处理器或可编程消费电子产品、网络PC、小型计算机、大型计算机、无头服务器等。本发明也可用在分布式计算环境中,在该环境中由通过通信网络与其链接的远程处理设备来执行任务。在分布式计算环境中,程序模块可同时位于本地和远程存储设备中。
个人计算机系统120包括处理单元121、系统存储器122、以及将包括系统存储器在内的各个系统部件连接到处理单元121的系统总线123。系统总线123可以是几种类型的总线结构中的任何一种,包括:存储器总线或存储器控制器、外围总线、以及使用任意总线结构的局域总线。系统存储器包括只读存储器(ROM)124和随机存取存储器(RAM)125。基本输入/输出系统126(BIOS)存储在ROM 124中,基本输入/输出系统126包含例如在启动过程中,用于在个人计算机120内部的元件之间传递信息的基本程序。个人计算机120还可以包括用于从未示出的硬盘中读取或写入硬盘的硬盘驱动器127,以及包括用于从可移动磁盘129中读取或写入的磁盘驱动器128和用于从诸如CD-ROM或其他光学介质之类的可移动光盘131中读取或写入的光盘驱动器130。硬盘驱动器127、磁盘驱动器128和光盘驱动器130分别通过硬盘驱动器接口132、磁盘驱动器接口133和光盘驱动器接口134连接到系统总线123上。这些驱动器以及它们连带的计算机可读介质为个人计算机120提供了计算机可读指令、数据结构、程序模块以及其他数据的永久保存。虽然此处描述的典型计算机系统使用了硬盘、可移动磁盘129以及可移动光盘131,但本领域的技术人员应该理解到该典型计算机系统也可以使用可以存储计算机可访问的数据的其它类型计算机可读介质,例如磁带盒、闪速存储卡、数字视频磁盘、Bernoulli磁带盒、随机存取存储器(RAM)只读存储器(ROM)等。
硬盘、磁盘129、光盘131、ROM 124或RAM 125中可以存储大量的程序模块,包括操作系统135(诸如WindowsXP)、一个或多个应用程序136(诸如MicrosoftOutlook)、其他程序模块137和程序数据138。用户可以通过诸如键盘140和指示设备142将命令和信息输入到个人计算机120中。其他输入设备(未示出)可以包括麦克风、操纵杆、游戏板、卫星反射器、扫描仪等。这些以及其他输入设备常通过与系统总线相连接的串行端口接口146连接到处理单元121上,但也可以通过其他接口来连接,例如并行端口、游戏端口或通用串行总线(USB)。监视器147或其它类型的显示设备通过诸如适配器148之类的接口也连接到系统总线123上。除了监视器147以外,个人计算机通常包括其他外设输出设备(未示出),诸如扬声器和打印机。辅助显示器200是一个附加输出设备,并可例如通过辅助显示接口155连接到系统总线123上。辅助显示器101也可以通过串行接口或其他接口连接到计算设备20上,其中其他接口可以是并行端口、游戏端口、红外线或无线连接、通用串行总线(USB)或其它外围设备接连。图1中的输入设备201可以提供一个或多个执行器与辅助显示器200相连并/或控制该辅助显示器,同时所述输入设备例如可以通过输入设备接口156连接到系统总线123,输入设备接口可以是串行接口,或者通过其他接口,例如并行端口、游戏端口、红外或无线连接、通用串行总线(USB)或其他外设设备连接。
个人计算机120可以通过使用逻辑连接与一个或多个远程计算机相连,诸如远程计算机149,从而运行在网络环境中。远程计算机149可以是另一台个人计算机、服务器、路由器、网络PC、同等设备或其他通用网络节点,虽然图1中仅描述了存储器设备150,但远程计算机149通常包括与个人计算机120有关的上述元件中的多个或全部。图1中描述的逻辑连接包括局域网(LAN)151和广域网(WAN)152。这种网络环境在办公室、企业范围的计算机网络、企业内部互联网和互联网中是很常见的。
当使用在LAN网络环境中的时候,个人计算机120通过网络接口或适配器153连接到局域网151中。当使用在WAN网络环境中的时候,个人计算机120通常包括调制解调器154或其他用于在诸如互联网之类的广域网152上建立通信的设备。调制解调器154可以是内置的或者是外置的,并通过串行端口接口146连接到系统总线123上。在网络环境中,描写为与个人计算机120或与个人计算机120一部分相关的程序模块可以存储在远程存储器设备中。应该意识到所示网络连接是示范性的,也可以使用其它在计算机之间建立通信链接的设备。
应当注意到,根据本发明计算机系统无需为辅助显示器而全面运转地工作。实际上,如以下参照图6的描述,当计算机断电时,辅助显示器可以至少在一个默认的范围内或用户指定的范围内继续工作,例如当计算机系统处于睡眠状态或冬眠状态时,以及/或者当用户还没有登陆或被安全机构锁定在系统之外时。例如,当计算机系统断电时,用户可以将集成在个人计算机中的电话手机和扬声器手机作为常规设备使用,并将辅助显示器用作呼叫者-ID设备。这种设备也可以存储稍后在计算机系统再次断电时传送给计算机系统的数据,例如存入接收到的呼叫,包括在计算机系统没有完全加电的时候。
辅助显示器可以补充主显示器并可以在主显示器关闭或不操作(例如未连接)的时候作为代用显示器,向用户提供一些信息。例如,在主显示器关闭和/或不易看到主显示器(例如便携计算机的盖子关闭着)时,用户在连接到移动计算机的辅助显示设备上可以看到,例如如何对主显示器加电、会议的房间号和/或通向会议的方向等有用的信息。注意即使在具有连续可视屏幕的平板计算机上,也可以关闭主显示器来节约电力,因此辅助显示可以提供实质上的利益。应注意到用户可以根据计算机系统的状态来限定显示范围,例如,当用户没有进入系统的时候,仅有某些非机密信息或非常特别的控制信息可以显示。
为了在这些断电的模式中能够实现并控制通信,可以在非易失性存储器中设有固件,当第二处理器载入并运行该固件时,只要存在一些可用的电力,便可以连同其他辅助部件使辅助显示器可以使用。注意此处所用的术语“固件”通常可认为表示辅助存储器,固件中的代码在第二处理器中运行。
图2A-2E分别解释说明了辅助显示屏200a-200e安置在计算设备上的典型位置或与计算设备的典型结合。如图2A和2B所表现的,可以将辅助显示屏200a置于独立(陆上通讯线或移动)电话202的前面、后面或其他表面(如果具有诸如蓝牙技术之类的其他连接方式,独立电话202不需要物理连接),和/或另一个辅助显示屏200b位于移动计算机204或平板计算设备(未示出)的边缘或盖子上。另一个放置辅助显示屏200c的位置(附图2C)可位于安装在计算机或附属于计算机的外设设备上的电话上,例如监视器206上或键盘(未示出)上。附图2D和2E分别解释说明了连接到计算机上的独立控制台208或其他外壳210(例如主板的外壳)的前面板上的辅助显示屏200d和200e的附加位置。本领域的技术人员应意识到,辅助显示屏可以位于任何计算设备或其他具有显示功能的设备的任何表面上,例如位于通过无线或其他连接方式连接与计算机的手表上、远程控制设备上、远程壁装式构件上等等。
根据图2A-2E显然可知,辅助显示器可以是任何数量的已知类型显示器,如一个或多个LED、2列字数显示器、单色显示器、或彩色显示器。本领域的技术人员应意识到,本发明也可以使用其它计算或通信设备的显示器作为辅助显示器200。这些其他的计算或通信设备包括通用计算机、蜂窝式便携无线电话、以及诸如寻呼机或个人数字助理(PDA)之类的手提设备。此外,本发明可以使用在计算设备120的屏幕显示区域中实现的虚拟辅助显示器(例如屏幕保护器或图形用户界面的一部分)作为辅助显示器200,包括在用户登陆之前。辅助显示器200包括上述形式的任何结合,并可以与诸如一个或多个LED之类的指示器进行物理或逻辑地结合,和/或与虚拟显示器一起使用。
即使缺少显示屏,也可以将一个或多个LED有利地用作辅助显示器200来指示动作的进行。可以低成本、低功耗地实现这种辅助显示器,并且可以通过不明显的方式来提供这种辅助显示器。这可以有效地使用于非常紧密的系统或由另一个用户管理的用于用户通信的系统。另外,辅助显示器200在需要远距离观看指示的时候也是有效的。当存在与动作联系在一起的信息内容时,辅助显示器也可以与屏幕上的虚拟辅助显示器一起使用,例如新邮件消息的通知。在这种情况下,来自邮件的内容也可以显示在虚拟辅助显示器200上。进一步地,当内容的显示是不符合要求时,辅助显示器200可以有效用于公共系统(图书馆或公用电话亭)或共享计算机。
可选地,当费用或空间紧缺,但却需要指示和基本内容的时候,2线数字显示器可以有利地用作辅助显示器200。其可以有效用于平板PC、便携计算机、廉价PC、电话对接站、监视器前盖、以及小或低成本PC设备或外设,诸如手机、键盘、或远程控制。也可以有效用作呼叫ID盒的替代品(以及对呼叫ID盒的改进)。
此外,单色或彩色多线显示器可以有利地用作多媒体设备、高端消费者系统或媒体中心设备的辅助显示器200。可有效用于具有更丰富形式的因素或强调于通信的高端便携计算机、具有大量交易或强调通信的全功能PC、媒体中心或高端媒体设备(包括远程的,具有便携媒体功能的控制台系统)以及移动辅助显示器。此外,可以将另一种计算或通信设备的显示器有利地用作辅助显示器200,用户在使用他们的PC时,可以在辅助显示器上扩展这些补充设备的任务。这些其他计算或通信设备包括通用计算机、蜂窝式便携无线电话、以及诸如寻呼机或个人数字助理(PDA)之类的手提设备。此外,应注意辅助显示器不需要是真实的显示器,而可以是信息的投影(例如,在墙上)。本质上,本文所涉及的辅助显示器可以由任何可以感测到的事物组成,包括任何视觉、声音、和/或触觉表现。
如上所述,当内容的显示是不需要的,虚拟辅助显示器可用作公共系统(图书馆或公用电话亭)或共享计算机的辅助显示器200。可用效用于低成本系统或即使是LED也不能实施的很小型设备。虚拟辅助显示器可以实施为屏幕保护器或图形用户界面的部分。
输入设备201,此后涉及称为执行器(即便是诸如按键或指示设备之类的单一装置),向用户提供了在不同种类的应用数据或通知之间进行选择的装置,所述通知可以是邮件通知、留言邮件通知、日程表通知、系统状态通知、呼叫者ID表以及其它类型的通知消息。伴随这种选择按钮,还可以具有向上按键和向下按键以允许用户在制定的范围内向前或向后翻滚通知信息。本领域的技术人员应意识到可以使用任何其他类型的执行器,诸如键盘、麦克风、操纵杆、游戏板或其他设备,包括生物传感器、环境传感器、位置传感器、或其它类型的传感器。图1所示的计算设备120的任何输入设备可以用作输入设备(执行器)201,并可以与独立的执行器一起使用。
用于脱机辅助显示操作的高速缓存
如将要理解的,本发明向用户提供了一种辅助显示器200来简单快速地浏览辅助信息。根据本发明,用户可以在某种程度上使用执行器201在可显示在辅助设备上的应用程序数据中选择显示在辅助显示器上的信息。虽然程序数据和事件通知将用于说明信息的辅助显示,但应该理解本发明可以提供其他类型信息的辅助显示,例如来自互联网相关服务程序的数据,包括.事项处理服务程序、拍卖服务程序、广告服务程序、娱乐服务程序、以及定位服务程序。这些服务程序能提供较宽范围的各种信息,包括金融交易信息、标题新闻、存货报价、运动计分、天气和其他信息,包括用户特别请求的信息以及主动提供的信息。同样应意识到可以使用任意数量的已知类型的辅助显示器来运行辅助显示器201,例如一组指示灯、2列数字显示器、单色显示器或彩色显示器。应注意在本文的使用中,为简单起见,“辅助显示设备”通常指的是辅助显示屏和/或与该显示屏相结合的执行器以及该设备中其他任何硬件、固件或软件,但应理解到显示屏和执行器可以是独立的设备,以及/或者执行器可以不需要与输入数据物理接触。此外,应注意到可认为辅助显示设备可能包含取代象素型显示屏的指示器(如单独的LED),或者除象素型显示屏之外还包含指示器。
根据本发明的一个方面,本发明促进了辅助显示器在主CPU/操作系统及应用程序不运行的时候、也就是当系统脱机时,辅助设备却仍保持运行时的使用。应注意脱机辅助系统部件是在包括辅助处理器和辅助存储器的固件中执行的,辅助存储器中包含可执行代码和数据。为了实现脱机操作,当联机时主CPU/操作系统和应用程序准备数据缓存和其他信息,该信息随后传送给固件中的辅助存储器、用于脱机使用。
该传送可以是断电(例如关机/睡眠/冬眠时间)时缓存的完全传送,或者可以后台处理等部分的执行,以便在断电期间仅要求同步(取代全部数据传送)。此外,诸如台式机之类的计算机设备可以不进入断电状态,而使得这种缓存是可访问的。例如,通过后台处理或人工启动操作,可建立该缓存。如果该缓存可以远程访问,用户可以远程访问缓存的辅助信息,并且可以对远程设备进行传送,而无需断掉计算机设备的功率。因此,假设一个用户旅行参加会议而没有携带计算机,但却拥有另一种诸如灵巧电话机之类配置成远程访问主计算机的缓存数据的设备。由于该缓存是系统的辅助显示,这种远程用户可以通过该远程设备远程浏览和操作该缓存。
如图3所示,提供了一种分层结构来输出数据到它的显示器200并/或通过执行器201与用户相互作用,通过该分层结构可以将一个或多个应用程序302与任何类型的辅助显示设备连接。因此,提供一种具有软件独立结构层的结构,如上述涉及的题为“Auxiliary Display System Architecture”的美国专利申请所描述的。应注意到,在所涉及的美国专利申请中,以与图3中相同的顺序示出分层,尽管有些随意的组件分类与本发明的图3稍有不同。在图3的任何事件中,可将服务程序认作为独立层304,独立层304之上为应用层302,之下为协议层306。
在图3所示的实施方式中,展现了四个彼此之间由接口分隔的层。更特别的,除应用层302、服务层304、以及协议层306以外,还具有一个图3所示的固件层308。如下所述,这些层提供了一种简单的结构,通过这种结构,应用程序可以提供用于以结构化方式缓存的辅助数据,这种结构化方式提供给用户简单访问相关的缓存信息,而不必向计算机提供动力(以及/或者如果是便携式计算机或覆盖了平板的计算机,无需打开盖子来查看主显示屏)。
图4更详细的示出了一些层以及各种接口。通常,应用层302提供管理及本地接口作为用于帮助结构化缓存创建的应用程序设计接口(API),例如树形结构或其他适合的结构,该接口将在之后描述。应用层302的的一个目的是提供对结构化缓存细节的概述,从而使应用程序只需要提供数据,而无需让数据符合特定的结构。
应用层302提供面向开发者的接口来建立解决方案,而服务层用于展现辅助信息的某些方面,即仲裁、中断、以及缓存创建。仲裁(如在之前涉及的题为“Auxiliary Display System Architecture”的美国专利申请中所通常描述的)和中断支持提供了能够共享辅助资源的固件。
根据本发明的一个方面,缓存创建是一种结构化用于脱机过程的应用数据的机制。如下参照图5所描述的,服务层以保存内容和结构信息的方式建立缓存,从而使固件在完全脱离联机操作状态时可以导航数据。如下在一个实施例中所进一步描述的,当事件中的数据结构的内容大小超出了辅助设备固件的分配存储量,服务层也负责修剪事件中的数据结构。
如图4所示,应用层302和辅助显示服务层304可以启动各种结构和包括辅助注册在内的功能,通过辅助注册,应用程序402(或所结合的应用插件程序)通过辅助显示层304的服务注册组件404对自身进行注册。在图4的实施例中,服务注册组件404为此提供IAuxAppReg接口。其他应用程序也同样通过接口对自身进行注册。
一旦进行了注册,辅助应用程序402便具有接收来自相关的辅助显示设备和/或相关资源的事件的能力。例如,在辅助设备变为有效后,可以将事件发送给辅助应用程序组件402。而另一个事件可以对应于用户与辅助设备执行器之间的相互作用。在图4的实施例中,应用程序实施和公开了IAuxAppSink接口来接收这种事件。
应用程序402同时也具有列举出可用的辅助硬件设备或可用设备的功能。在图4的实施例中,辅助设备服务程序306中的仲裁组件406通过IAuxMediator接口提供列举详表。在这种方式中,设备或与设备相关的一些数据(例如,相应的XML文件)可以向应用程序402汇报设备显示屏等和/或其执行器的性能。应用程序402接下来可以根据显示调整输出和输入,针对设备特性更改例如色彩设计、分辨率、导航命令等。
同时通过IAuxMediator接口在服务层的调解组件406也提供仲裁,从而提供一种机制来确定当前应显示哪个应用程序402的数据以及哪个应用程序应接收导航命令。应注意是多个应用程序合理地轮流共享显示器;换句话说,调解的仲裁功能管理辅助应用程序和/或插件程序的优先级(z轴次序)。
协议层306创建提取操作,通过该提取操作服务层304发送和接收来自辅助设备的数据。协议层 306因此帮助维持硬件独立的级别。服务层可以写到显示器,或可以通过向设备传送数据的IAuxDevice接口来设置指示器的状态。
一旦允许将程序写给显示器并通过自身的执行器接收命令,所涉及的辅助系统是一种能够对提取的存储缓冲器进行blit/呈现的机制,该机制允许当前选择的辅助应用程序(例如插件程序)组件402使用显示资源。在不允许脱机缓存的执行过程中,调解器可以将参考点传送到面向辅助应用程序的辅助设备接口,并随后让应用程序调用接口,直接向显示器和/或指示器提供显示数据。这在可脱机模式中也同样可行。应注意即使当辅助显示设备的特定硬件实施不支持脱机运行,当机器联机时仍可以存在这种提取,例如服务层将存储树形结构/缓存,并使用标准联机API将其作为位图提供给设备,而不是将该缓存存储在设备的NVRAM中并由固件来提供。因此,在图4的实施例中,应用程序将它的数据通过服务层(调解器接口)来传递,从而使服务层可以结构化用于脱机缓存的代码。
通常,在一种执行方式中,当联机时,系统以众所周知的WM PAINT模式进行工作,在这种模式下当应用程序转向提供数据时,通过服务程序来指示该程序(除了数据被写到了辅助显示器的情况)。在一种可选择的实施方式中,可以让应用程序将数据写到缓存中,而不是写到显示目标中,例如使用与缓存同样的结构,而不是发送实际数据,以及发送缓存的指针到主系统,以使辅助设备通过该指针获得当前需要显示的数据,从而例如避免数据传送以及避免需要有规律的同步图像的缓存复制。
可以容易地意识到,各个层在体系结构中提供的辅助功能是全面的和可扩展的。可插结构有助于可利用辅助资源的应用程序的写入,而无需理解或处理低端需求。
根据本发明的一个方面,存储相关的应用数据和其他信息,以用于辅助显示设备的使用。一种普通目的是为了将信息存储到快速可存取存储器中,同时向应用程序提供简单的系统科学,来提供要缓存的信息。为此,在一个实施例中,将数据结构化为树形结构(称为结构缓存树),并且提供简单的基本数据单元来建立结构缓存树。在这个实施例中,结构缓存树(或树的子集)的收集、向固件对该树的传送、以及在计算机断电时通过固件与树中数据的交互作用,提供了促进辅助显示的脱机使用。
图5示出了仅可以在联机时使用的组件及数据与脱机(固件)组件及数据间的分界线,当主系统联机时,脱机部分的数据可与联机部分以及数据一同工作,并可在主系统脱机时操作辅助显示。应注意在联机时,图5所示的脱机部分无须呈现或激活。例如,在联机时互动管理器(未示出)通过向运行的应用程序发送大量用户输入(如导航命令)来控制用户与执行器的交互作用,因此无需激活脱机互动管理器508。同样,也可以不将图5所示的缓存或其他传送的数据传送给辅助存储器510,直到从联机转换到脱机,尽管由于速度的原因,最好不要传送所有的数据,但如上所述,一些数据可以偶尔复制到辅助存储器并在联机向脱机转换的时刻进行同步操作。同步可以是双向的。
如图5所示,联机应用数据502由缓存机制504收集,例如通过轮询每个使用辅助显示来显示其数据的应用程序(用户已经指示需要与一个未运行的应用程序的数据进行交互,则可以启动该程序来得到数据)。应注意不是每个在联机时使用辅助显示设备的应用程序都可以配置成在脱机时也能使用,或者当设置应用程序用于脱机数据浏览时,可以在脱机时使用不同的辅助设备,例如,通过设置脱机限制。例如,辅助显示在联机时可以在任意数量的电子邮件消息中滚动显示,但应用程序可以只设置某个默认值或者用户可设置用于脱机滚动的有效消息(例如二十)。
用户可以设置系统来控制哪个应用程序可以向缓存提供用于脱机浏览的数据。例如,用户可以想要在辅助显示器上浏览缓存的电话号码、电子邮件消息、任务及日程表数据,而不显示其他程序数据。例如,尽管联机应用程序可以使用辅助显示器来显示存货报价,但由于缓存这种很快就会作废的数据会浪费存储空间,因此用户可能不想缓存这种存货报价数据来进行辅助浏览。
用户也可以设置每个应用程序获得的存储其数据的存储量,并可以根据规则来设置用于脱机存储的应用程序。可选择的,如果应用程序提供太多数据进行缓存,算法(以后描述)从树形结构中修剪数据,也就是当其他应用程序的数据使用了超出其可利用的空间时,将一个应用程序配置的任何剩余用到另一个应用程序的数据。根据用户指定的优先顺序,剩余数据的重新分配转到应用程序上,例如,转到主页上所列的第一个应用程序(列表顺序可由用户设置),如果不需要全部转到第一个应用程序,则接着转到下一个列出的应用程序,如此类推。
如上所述,当断电时,可以进行收集操作,或者可以在一定程度上在转向脱机的时刻同步进行收集操作。通过数据修剪机制506执行必需的修剪来划分应用程序间的可用存储,并对每个应用程序修剪必需的数据来匹配可利用的存储量。在图5实施例中的任何事件中,结果为可通过树形结构进行导航的脱机数据的结构化缓存508。
应用程序可能不仅仅向用户提供可导航的数据。例如,日程表程序可能想提供诸如可以在某个日期和时间自动显示的会议提示之类的数据。由于按照规则遍历脱机缓存树来寻找某一事件是低效的,因此可以将诸如根据中断来触发时间之类的信息传送给固件,作为采用的时间和动作列表(可能通过对树形结构进行遍历直到找到事件,但最好是独立的数据)。如图5所示,固件可以建立这种基于时间的中断514,并且还存储在到动作表516的计时器ID中,或者建立每当识别的计时器中断发生时所要采取的动作。在这种方式中,例如可以在适当的时间显示指定的提示,一个或多个指示器可以发亮或闪烁等。
一旦建立、传送并且主计算机断电,微控制器520和辅助存储器接收对辅助显示器200和执行器201的单独控制。脱机外壳程序520可以提供基于导航的主页以及工作程序来处理基于计数器的事件等。与脱机互动管理器508结合的脱机外壳程序520通过脱机缓存控制导航,也可能响应非手动执行器改变显示状态,例如在电池变低时显示特定消息。外壳基本数据单元可以包括用于邮件、电话、地址、日程表、存货、音乐、备忘录等的基本数据单元。
图6示出了一种简单的树形结构,该结构具有位于外壳(本地)节点604下的表示三个应用程序601-603的节点。尽管示出的是三个应用程序,但是任何指定数量(与可利用的存储空间有关)的应用程序都是可用的。可以看到的,由于这种结构(尽管该结构不是通常所显示的内容),通过节点进行手动导航是相对直观和简单的。例如,在树形结构中,只需要向上和向下导航,因此,例如只需要两个按键控制器(尽管一个或同时两个按键可以具有其他功能,如关闭计时器事件驱动显示屏)。
通常,主页可以简单提供应用程序的菜单,(如果需要的话是可滚动的)虽然取决于执行器的安排,但反映层次结构的更复杂的菜单也是可行的,例如四种方向的导航按键可以使用上键和下键来进行滚动,右键和左键用于展开和折叠当前突出显示的菜单,进一步显示表示任何子树的数据。当用户在主页菜单中选择一页时,例如通过在一页上按压选择执行键,外壳节点实质上移动到该节点,在该节点上获得关于该页的信息并呈现该页。信息页可以包括从位图到置标语言(例如HTML或XAML)的任何适于在指定设备上呈现的内容,该内容取决于设备中安装的代码。同时应注意,可以传送用于翻译缓存数据的代码,或相反可将代码下载到固件中。
如图6所示,树形结构中可以具有多个子级。例如,所示的个人信息管理节点620可以具有在其下的联系、约会和任务节点(分别为620-622),每个节点具有自己相应的显示屏以及各自的子节点C1-Ci、A1-Ai和T1-Tk。应用程序节点之下可以仅有一级,如消息节点M1-Mn所示。通常,每个节点对应于显示其数据的滚动页以及可能访问的任何子节点。
注意在图6中,为了完整性而示出媒体播放器应用程序603,以在一些执行过程中进行指示,即使在脱机状态中可能无法执行媒体应用程序,但在联机或脱机时可以使用相同的导航树来确定下一个显示的屏幕。当在这种实施方式中联机时,仅可以联机使用的媒体播放器应用程序将在树中具有一个显示屏节点,用户可以导航到该节点,例如浏览辅助显示器上的当前轨道和计时器数据。当脱机时,从树中修剪代表这种显示屏的节点(称作为终端或未处理节点),以节省存储空间。可选择的,当诸如MP3播放器的媒体播放器用作辅助显示器时,这种节点可允许MP3播放器使用所述显示屏,对具有其他应用数据的导航框架也同样处理。
图7示出了在另一个树的例举节点中的一些例举数据,该数据包括子节点的识别标签(例如,用于示出文本)和指向这些节点的指针数据。可以看到,可以导航到示出电池状态的蓄电池安时计页面以及个人信息管理(PIM)页面,在个人信息管理页面具有可以通过执行器进行导航的邮件和日程表子节点。如果选中了示出的邮件节点,可导航到两封显示在辅助显示器上的邮件,并且导航到该邮件时,并在显示的所选邮件消息的主体上导航到该消息。注意不同于图6,在图7的树中,邮件是个人信息管理的一部分,但应理解图6和图7均只是用于举例的树形结构。
如图7所展现的,缓存的数据不仅仅是应用数据,还包括用于导航的结构。在这种方式中,固件可以正确提供用户通过执行器到达的各种图像,该提供过程可以通过响应导航命令从缓存中提供不同位图来进行,或通过像浏览器这样的软件对内容进行翻译来构造每个页面,或通过一些其他机制。因此,尽管描述了一种树形结构,但应理解到可以使用任何可导航结构(例如,图表、包含提供的数据或实际上任何结构数据的HTML或XAML文档)在数据中进行导航。在这种实施方式中,同时也对描述应用数据的元数据进行缓存。在可选的实施方式中,数据可以在形式上较少的结构化,如果翻译数据的代码不存在于固件中时,可以提供向固件提供该代码(以及应用数据)。
此外,一旦缓存了导航结构和数据,任何访问该缓存的辅助设备,包括在缓存时没有出现的设备,可以读取该数据结构,并允许提供和导航该数据。例如,如果缓存保存在互联网或可移动介质,而不是单独存储在一个连接的设备固件,任何访问该缓存文件(以及适当的访问权利)的适当编码设备可以提供和导航该数据。因此,例如用户可以通过MP3播放器读取他或她的缓存辅助显示数据,只要该播放器知道如何读取缓存结构,即使如果MP3播放器在进行缓存时没有连接到主计算机上。换句话说,缓存是连接辅助设备到计算机系统的终结。应注意到,这不意味着设备可以理解数据的含义,其仅可以提供和导航数据而已。还应注意如果某些数据本身位于结构内部(例如不是位图,而是按行和列排列),呈现和导航设备也同样可以理解数据,并且不仅仅是理解数据本身,例如允许用户所希望的合适的数据动态分类。
可以简单的理解到,通过保存缓存作为文件,可以获得其它的好处。例如,正如文件一样,可以在很久之后(例如很多年)重放辅助显示的状态来覆盖重要信息。
现在解释说明在联机状态中发生的修剪操作,有经验的客户可以设置存储分配给每个应用程序,该应用程序被用户指定为可以在脱机状态下使用辅助设备。因此,例如一个用户可以拥有一个很大的可用联系表,而另一个用户有很多会议邀请,同时还有一个用户需要对邮件消息进行辅助显示。每个用户都可能想让所有的数据有效,但每个用户更愿意给出不同应用程序的相关显示的优先级。
拥有大量数据的较少经验的用户也许要一种默认方式来划分将用于构造树形结构的应用数据之间的存储器。在一种实施方式中,默认的方式是最初在应用程序中平均划分可用的存储器,也就是平均到主页之下第一级的节点上。应注意尽管初始平均划分,但任何指定应用程序的数据可能不需要其初始分配,因此修剪机制让其他应用程序的数据利用剩余的部分。因此,即使初始平均划分,仍需要一些知道如何分配剩余部分的机制。
在一种实施方式中,剩余分配机制是一种简单的优先配置,这种优先配置基于主页中描述代表应用程序的子页面的顺序。显示顺序可由用户配置,用户也可以设置优先级。
应注意当建立树形结构时,并不知道某个分支有剩余或不足,直到建立该分支后。例如。可以通过移除消息(先进先出)来修建邮件分支,直到有足够的空间可用于剩余的消息。然而,对于最后一个消息的修剪,如果是一个很大的消息,当其所导致的不足变为有剩余时,可以将剩余部分重新分配给树的另一个分支。同样的,修剪算法从一级一级递推进行,并当有更多的存储空间变为可用时,修建算法可以重新进行。
接下来的伪代码描述了这种树形结构修剪程序,该程序可由根标识符调用并且缓存总量是可变的。总缓存量(分配给缓存的存储量)最初在分支之间平均分配,并且每个较低的子节点最初获得父节点预算的相等分配。可以看到,修剪仅在必要时使用,并且存储修剪是递推的,从末端节点开始,向初始节点和上级分支进行。分支的子节点首先给出剩余,并且只有在没有子节点有剩余可使用时,由另一分支给出剩余。
Tree Pruning Algorithm Pseudo Code
Given:
Node       ::=A tree node.
Node.size  ::=Total size of subtree rooted at Node.
Node.nChildren ::=Number of children of Node (0 if terminal).
Node.child[0..nChildren-1]  ::=Child nodes of Node.
Prune cache tree using:
PruneTree(Root,TotalCacheSize)
where PruneTree() is defined as follows:
//
//Prune tree rooted at node N to <=budget.
//
//Return amount by which pruned tree is less than budget.
//
int PruneTree(Node N,int budget){
//If tree is already within budget,we’re done.
if(N.size<=budget){
return budget-N.size;   //Return budget surplus.
}
//The tree is over budget and needs to be pruned.
//If it’s a terminal node(no children),then we
//completely delete the node.
If(N.nChildren==0){
//Note:Deleting the node includes walking tree from
//node to root,adjusting node subtree sizes
//(i.e.subtact N.size from size of each parent to root)
DeletedNote(N);
Return budget;//Return full budget as surplus.
}
//It’s an over budget tree--recursively prune the tree
//until it is within budget.
//ChildBudget is the maximum allowed size of unpruned child nodes.
//Initially each child node is allocated an equal share of
//the parent node’s budget.
childBudget=budget/N.nChildren;
//Examine child nodes from last to first(we assume that
//the most“valuble”nodes are listed first,so less
//“valuable”nodes will be considered for pruning first.
//stop when parent node is within budget.
for(i=N.nChildren-1;i.>=0&&N.size>budget;--i){
//if this child is over budget,it must be
//recursively pruned.
If(N.child[i].size>childBudget){
//it will be pruned to a size that puts it within budget,
//or outs its parent node within budget,which ever
//requires less pruning.
//Minimum amount this child tree must be reduced.
minReduction=min(N.size-budget),(N.child[i].Size-childBudget));
//recursively prune the child tree.
Surplus=prune(N.child[i],N.child[i].size-minReduction);
}
else{
//This child is within budget.It survives unpruned.
surplus=N.child[i].size-childBudget;
}
//this child is now within budget by the amount given
//by surplus.
//If there are more children,distribute the surplus
//evenly among them.
if(i>0){
childbudget+=surplus/i;
}
}
//Return budget surplus.
Return budget-N.size;
}
可以从前面的描述看出,本发明能够让应用程序在主计算机系统断电时,缓存用于通过计算机系统的辅助设备来显示和导航的数据。本发明因此提供了在现代计算中所需要的显著的利益和进步。
同时本发明允许各种更改和可选择的构造,附图中示出了用于解释本发明的特定实施例并在以上进行了详细描述。然而,可以理解的是,这并不意味将本发明限定到特定形式或公开的形式,相反本发明将覆盖在本发明的精神和范围内的所有修改、可选择构造、以及等同物。

Claims (34)

1、在具有计算机系统的计算环境中,一种系统包括:
配置成显示辅助信息的辅助设备,至少一部分辅助信息由计算机系统提供;
运行在计算机系统上的辅助设备服务程序,该辅助设备服务程序配置成接收来自计算机程序的数据,其中该数据与在辅助设备上显示信息有关,并进一步配置成结构化缓存中的数据,用于随后的数据导航;以及
其中辅助设备接收导航命令并访问该缓存,以确定根据该导航命令什么输出数据显示在辅助设备上。
2、根据权利要求1的系统,其中缓存包括应用程序数据,并且其中当该计算机系统处于断电状态时,辅助设备显示至少一部分应用程序数据。
3、根据权利要求1的系统,其中该缓存包含涉及计算机系统的主存储器中应用程序数据的参数,以及其中当计算机系统处于加电状态时,辅助设备通过该参数获得应用程序数据,从而至少显示一部分应用程序数据。
4、根据权利要求1的系统,其中通过外壳程序访问该缓存。
5、根据权利要求1的系统,其中该缓存包含将程序数据结构化为树形结构的信息。
6、根据权利要求5的系统,其中通过外壳程序访问该缓存,并且其中外壳程序显示相应于树形结构根目录的主页。
7、根据权利要求1的系统,其中辅助设备的服务程序根据缓存中可利用的存储空间,确定是否减少接收的用于缓存的数据量。
8、根据权利要求1的系统,其中辅助设备物理连接到计算机系统的外壳。
9、根据权利要求1的系统,其中辅助设备远程连接到计算机系统。
10、根据权利要求9的系统,其中该缓存存储在与计算机系统物理分离的存储介质上,并且其中辅助设备通过访问该缓存,与计算机系统远程连接。
11、根据权利要求1的系统,其中辅助设备还接收基于时间的事件,并响应访问辅助存储器,根据该基于时间的事件确定输出什么数据到辅助设备上显示。
12、根据权利要求11的系统,其中显示的数据保存在缓存中。
13、根据权利要求1的系统,其中缓存包含至少一个用于辅助设备上显示的位图。
14、根据权利要求1的系统,其中缓存包含当翻译创建用于在辅助设备上呈现的图像时的数据。
15、一种在计算环境中的方法,包括:
接收计算机程序数据;
将该计算机程序数据与导航信息结合,该导航信息确定该计算机程序数据与其它通过辅助设备用于导航的计算机程序数据有何关系;
将计算机程序数据与其它计算机程序数据以及导航信息存储在缓存中;以及
提供能够访问该缓存的辅助设备。
16、根据权利要求15的方法,其中
在辅助设备上接收导航命令,访问该缓存以确定根据该导航命令输出什么数据显示在辅助设备上,以在辅助设备上显示该数据。
17、根据权利要求1的方法,其中提供能够访问缓存的辅助设备,包括在主计算机系统断电之前,从主计算机系统发送该缓存到辅助存储器。
18、根据权利要求15的方法,其中提供能够访问缓存的辅助设备,包括将该缓存从主计算机系统传送到与主计算机系统物理分离的存储介质。
19、根据权利要求15的方法,其中该缓存包含运行在主计算机系统上的程序的程序数据,同时进一步包括当主计算机系统处于断电状态时,在辅助设备上显示该数据。
20、根据权利要求15的方法,还包括通过运行在辅助固件中的外壳程序访问该缓存。
21、根据权利要求15的方法,其中将计算机程序数据与导航信息相结合的步骤包括在树形结构中显示该计算机程序数据。
22、根据权利要求21的方法,还包括从运行在辅助固件中的外壳程序输出主页,该主页向缓存中的至少一部分计算机程序数据提供导航路径。
23、根据权利要求15的方法,还包括根据缓存中可利用的存储空间,确定是否减少接收的程序数据的数据量。
24、根据权利要求15的方法,还包括在辅助设备上接收事件,根据该事件访问该缓存以确定输出什么数据到辅助设备上显示,并在辅助设备上显示该数据。
25、根据权利要求24的方法,其中该事件对应于基于时间的事件
26、根据权利要求24的方法,还包括确定相应于要求访问缓存的指定动作的事件。
27、根据权利要求24的方法,其中该事件相应于用户的输入。
28、一种计算机可读介质,具有执行根据权利要求15的方法的计算机可执行指令。
29、一种在计算机环境中的方法,包括:
在辅助设备端接收事件;
通过辅助设备访问缓存,确定根据导航命令什么输出数据显示在辅助设备上;
在辅助设备上显示该数据。
30、根据权利要求29的方法,其中在辅助设备端接收事件的步骤包括接收相应于导航命令的用户输入。
31、根据权利要求29的方法,其中在辅助设备端接收事件的步骤包括接收一个基于时间的事件。
32、根据权利要求29的方法,其中访问缓存的步骤包括读取辅助存储器。
33、根据权利要求29的方法,其中访问缓存的步骤包括通过辅助设备从包含该缓存的存储介质之中读取数据,该存储介质由计算机系统进行写入,在辅助设备从存储介质中读取数据时,计算机系统与辅助设备不连接。
34、一种计算机可读介质,具有执行根据权利要求15的方法的计算机可执行指令。
CNA2005100896509A 2004-05-03 2005-05-08 用于脱机显示和辅助信息导航的数据缓存 Pending CN1758246A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/837,900 US7577771B2 (en) 2004-05-03 2004-05-03 Caching data for offline display and navigation of auxiliary information
US10/837,900 2004-05-03

Publications (1)

Publication Number Publication Date
CN1758246A true CN1758246A (zh) 2006-04-12

Family

ID=34939637

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2005100896509A Pending CN1758246A (zh) 2004-05-03 2005-05-08 用于脱机显示和辅助信息导航的数据缓存

Country Status (6)

Country Link
US (1) US7577771B2 (zh)
EP (1) EP1594047A3 (zh)
JP (1) JP2006024188A (zh)
KR (1) KR20060047711A (zh)
CN (1) CN1758246A (zh)
TW (1) TW200602912A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013054248A1 (en) * 2011-10-12 2013-04-18 International Business Machines Corporation Generating a predictive data structure
US8780725B2 (en) 2007-01-04 2014-07-15 Beijing Lenovo Software Ltd. Presentation system and method
CN106020414A (zh) * 2016-05-09 2016-10-12 捷开通讯科技(上海)有限公司 电子装置显示控制系统与方法
CN107544750A (zh) * 2016-06-23 2018-01-05 富士施乐株式会社 终端设备

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6947772B2 (en) * 2002-01-31 2005-09-20 Qualcomm Incorporated System and method for providing messages on a wireless device connecting to an application server
US7039398B2 (en) 2002-08-30 2006-05-02 Qualcomm Incorporated Server processing of interactive screens for a wireless device
US6996394B2 (en) 2002-08-30 2006-02-07 Qualcomm Incorporated Server processing in providing messages for a wireless device connecting to a server
US7511682B2 (en) * 2004-05-03 2009-03-31 Microsoft Corporation Context-aware auxiliary display platform and applications
US7519924B2 (en) * 2004-11-03 2009-04-14 Research In Motion Limited Handheld electronic device including appointment and meeting conflict notification, and associated method
US20070079030A1 (en) * 2005-09-30 2007-04-05 Intel Corporation Auxiliary display and storage unit
US7631267B2 (en) * 2006-02-17 2009-12-08 Microsoft Corporation Auxiliary display sidebar integration
US20070226734A1 (en) * 2006-03-03 2007-09-27 Microsoft Corporation Auxiliary display gadget for distributed content
US7898500B2 (en) * 2006-05-22 2011-03-01 Microsoft Corporation Auxiliary display within a primary display system
US20080091500A1 (en) * 2006-10-02 2008-04-17 International Business Machines Corporation System and method to cache calendar schedule for offline scheduling
US20080091499A1 (en) * 2006-10-02 2008-04-17 International Business Machines Corporation System and method to control caching for offline scheduling
US20080162728A1 (en) * 2007-01-03 2008-07-03 Microsoft Corporation Synchronization protocol for loosely coupled devices
TWI329265B (en) * 2007-01-16 2010-08-21 Asustek Comp Inc Portable computer
US7899917B2 (en) * 2007-02-01 2011-03-01 Microsoft Corporation Synchronization framework for occasionally connected applications
US20080235527A1 (en) * 2007-03-19 2008-09-25 Winbond Electronics Corporation Operation of computer display using auxiliary display controller
US20090021450A1 (en) * 2007-07-19 2009-01-22 Winbond Electronics Corporation Data synchronization of auxiliary display
US7926072B2 (en) * 2007-10-01 2011-04-12 Spring Design Co. Ltd. Application programming interface for providing native and non-native display utility
US8051279B2 (en) * 2007-12-27 2011-11-01 Nvidia Corporation Method and system for enabling an auxiliary system to retrieve system information from a computing device
TWI479414B (zh) * 2008-07-24 2015-04-01 Asustek Comp Inc 資訊備忘方法以及使用此資訊備忘方法之電腦系統
US20100149071A1 (en) * 2008-12-14 2010-06-17 Edward Mun-Song Son Convenient Configurations for Secondary Mini Monitors
TWI384378B (zh) 2008-12-29 2013-02-01 Ind Tech Res Inst 網頁應用程式執行方法
US8019903B2 (en) * 2009-03-27 2011-09-13 Microsoft Corporation Removable accessory for a computing device
US8898398B2 (en) 2010-03-09 2014-11-25 Microsoft Corporation Dual-mode and/or dual-display shared resource computing with user-specific caches
TWI587125B (zh) * 2010-08-04 2017-06-11 華碩電腦股份有限公司 具省電功能的電腦系統
US9268367B2 (en) 2010-10-13 2016-02-23 Microsoft Technology Licensing, Llc Use of low-power display on device
US8713056B1 (en) 2011-03-30 2014-04-29 Open Text S.A. System, method and computer program product for efficient caching of hierarchical items
US10373121B2 (en) 2011-09-13 2019-08-06 International Business Machines Corporation Integrating a calendaring system with a mashup page containing widgets to provide information regarding the calendared event
JP5389210B2 (ja) 2012-03-21 2014-01-15 株式会社東芝 通信管理プログラム及びクライアント装置
US9569466B1 (en) 2013-01-30 2017-02-14 Kabam, Inc. System and method for offline asynchronous user activity in a player versus player online game
US9614932B2 (en) 2013-03-14 2017-04-04 Microsoft Technology Licensing, Llc Managing and implementing web application data snapshots
US20150062130A1 (en) * 2013-08-30 2015-03-05 Blackberry Limited Low power design for autonomous animation
JP6492111B2 (ja) * 2014-06-24 2019-03-27 グーグル エルエルシー コンテンツアイテムの記憶
CN108027246B (zh) * 2015-05-28 2022-09-27 谷歌有限责任公司 动态地集成地理应用中的离线和在线数据
US10891342B2 (en) 2017-01-12 2021-01-12 Google Llc Content data determination, transmission and storage for local devices
US10772141B2 (en) 2018-06-28 2020-09-08 The Chinese University Of Hong Kong System and method for peer-to-peer wireless communication
KR200491440Y1 (ko) 2019-07-18 2020-04-08 조남우 보조 디스플레이 장치

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4004277A (en) 1974-05-29 1977-01-18 Gavril Bruce D Switching system for non-symmetrical sharing of computer peripheral equipment
JP2523528B2 (ja) * 1986-09-19 1996-08-14 株式会社日立製作所 多重画面表示計算機システム
JPH03171195A (ja) * 1989-11-30 1991-07-24 Hino Motors Ltd 画像データの記憶表示装置
US5363502A (en) 1990-06-08 1994-11-08 Hitachi, Ltd. Hot stand-by method and computer system for implementing hot stand-by method
US5745105A (en) 1993-03-31 1998-04-28 Samsung Electronics Co., Ltd. Power saving apparatus and method of a monitor
US5649023A (en) * 1994-05-24 1997-07-15 Panasonic Technologies, Inc. Method and apparatus for indexing a plurality of handwritten objects
JPH0922339A (ja) 1995-07-05 1997-01-21 Matsushita Electric Ind Co Ltd 遠隔操作装置
JPH0926832A (ja) * 1995-07-07 1997-01-28 Seiko Epson Corp 情報処理装置および処理方法
US6094600A (en) 1996-02-06 2000-07-25 Fisher-Rosemount Systems, Inc. System and method for managing a transaction database of records of changes to field device configurations
US6281893B1 (en) 1996-04-04 2001-08-28 Sun Microsystems, Inc. Method and apparatus for providing an object oriented approach to a device independent graphics control system
US5910799A (en) 1996-04-09 1999-06-08 International Business Machines Corporation Location motion sensitive user interface
US5768164A (en) * 1996-04-15 1998-06-16 Hewlett-Packard Company Spontaneous use display for a computing system
US6096096A (en) 1996-12-13 2000-08-01 Silicon Graphics, Inc. Web-site delivery
US6035339A (en) 1997-03-13 2000-03-07 At&T Corporation Network information delivery system for delivering information based on end user terminal requirements
KR100248048B1 (ko) 1997-06-30 2000-03-15 윤종용 보조디스플레이장치를구비한컴퓨터
DE69841092D1 (de) 1998-01-07 2009-10-08 Clarion Co Ltd Anzeigesteuergerät und -verfahren für eine Navigationseinheit
JPH11341121A (ja) 1998-05-28 1999-12-10 Nec Corp 移動無線機
US6370629B1 (en) 1998-10-29 2002-04-09 Datum, Inc. Controlling access to stored information based on geographical location and date and time
JP2000242202A (ja) 1999-02-19 2000-09-08 Sony Corp 情報提示システム及び情報提示方法
US6438577B1 (en) 1999-07-01 2002-08-20 Compaq Information Technologies Group, L.P. Portable networked computer system
JP4094777B2 (ja) 1999-07-15 2008-06-04 富士フイルム株式会社 画像通信システム
US6415418B1 (en) 1999-08-27 2002-07-02 Honeywell Inc. System and method for disseminating functional blocks to an on-line redundant controller
GB2357220B (en) 1999-12-10 2003-11-05 Nokia Mobile Phones Ltd A user interface
US6720983B1 (en) 2000-01-05 2004-04-13 Hewlett-Packard Development Company, L.P. Digital feedback display panel for communicating computer status information
US7356570B1 (en) * 2000-08-29 2008-04-08 Raja Tuli Portable high speed communication device
JP2001337812A (ja) 2000-03-23 2001-12-07 Fujitsu Ltd 状態表示制御装置及び電子装置並びに記憶媒体
AU2001249541A1 (en) 2000-03-31 2001-10-15 Palm Inc. Information service and method
US7030837B1 (en) 2000-04-24 2006-04-18 Microsoft Corporation Auxiliary display unit for a computer system
JP2002073497A (ja) * 2000-09-04 2002-03-12 Sharp Corp 情報処理装置及び情報処理方法
US7123212B2 (en) 2000-12-22 2006-10-17 Harman International Industries, Inc. Information transmission and display method and system for a handheld computing device
US20020129006A1 (en) * 2001-02-16 2002-09-12 David Emmett System and method for modifying a document format
JP2002244783A (ja) * 2001-02-20 2002-08-30 Toshiba Corp 携帯型情報機器
JP2002258825A (ja) * 2001-03-01 2002-09-11 Toshiba Corp 情報処理装置及びプログラム選択方法
US20020133601A1 (en) 2001-03-16 2002-09-19 Kennamer Walter J. Failover of servers over which data is partitioned
US6694389B2 (en) * 2001-03-19 2004-02-17 Sun Microsystems, Inc. Method and apparatus for data flow analysis
US6989801B2 (en) 2001-03-22 2006-01-24 Koninklijke Philips Electronics N.V. Two-way presentation display system
JP2002287951A (ja) * 2001-03-23 2002-10-04 Toshiba Corp 情報処理装置及び情報処理装置の制御方法
JP2002297508A (ja) 2001-03-30 2002-10-11 Fujitsu Ltd 情報処理装置、制御装置、記録媒体、およびプログラム
US20030006942A1 (en) 2001-07-05 2003-01-09 Damion Searls Ergonomic auxiliary screen and display subsystem for portable handheld devices
US20030043110A1 (en) 2001-09-04 2003-03-06 Airspeak System and architecture of a personal mobile display
US6944818B2 (en) 2001-09-10 2005-09-13 Xerox Corporation Method and apparatus for the viewing and exploration of the content of hierarchical information
US7286112B2 (en) 2001-09-27 2007-10-23 Fujifilm Corporation Image display method
JP2003108489A (ja) * 2001-09-28 2003-04-11 Toshiba Corp 情報処理装置及び電子メール受信制御方法
US7051196B2 (en) 2001-12-05 2006-05-23 Hewlett-Packard Development Company, L.P. Location-based security for a portable computer
US20030115415A1 (en) 2001-12-18 2003-06-19 Roy Want Portable memory device
US6947772B2 (en) 2002-01-31 2005-09-20 Qualcomm Incorporated System and method for providing messages on a wireless device connecting to an application server
US8763061B2 (en) 2002-02-13 2014-06-24 Motorola Mobility Llc Correlation of tuned channel information with internet web addresses
US6912664B2 (en) 2002-02-21 2005-06-28 Hewlett-Packard Development Company, L.P. Energy-aware software-controlled plurality of displays
US7606938B2 (en) 2002-03-01 2009-10-20 Enterasys Networks, Inc. Verified device locations in a data network
JP3910112B2 (ja) 2002-06-21 2007-04-25 シャープ株式会社 カメラ付携帯電話機
US7024415B1 (en) * 2002-07-31 2006-04-04 Bellsouth Intellectual Property Corporation File conversion
US7117379B2 (en) * 2002-08-14 2006-10-03 Intel Corporation Method and apparatus for a computing system having an active sleep mode
US7356706B2 (en) 2002-09-30 2008-04-08 Intel Corporation Personal authentication method and apparatus sensing user vicinity
US7768234B2 (en) 2004-02-28 2010-08-03 Janik Craig M System and method for automatically synchronizing and acquiring content for battery powered devices
JP2004302512A (ja) 2003-03-28 2004-10-28 Hitachi Ltd クラスタコンピューティングシステム、および、そのフェールオーバー方法
JP4052163B2 (ja) 2003-03-28 2008-02-27 日本電気株式会社 携帯電話機、その表示制御方法及びプログラム
US7240228B2 (en) 2003-05-05 2007-07-03 Microsoft Corporation Method and system for standby auxiliary processing of information for a computing device
US7221331B2 (en) 2003-05-05 2007-05-22 Microsoft Corporation Method and system for auxiliary display of information for a computing device
EP1664990A2 (en) 2003-05-19 2006-06-07 Modular Computing & Communications Corporation Apparatus and method for mobile personal computing and communications
US7047339B2 (en) * 2003-06-27 2006-05-16 Intel Corporation Computer system with detachable always-on portable device
KR100475573B1 (ko) 2003-07-01 2005-03-14 삼성전자주식회사 휴대용 컴퓨터시스템 및 그 제어방법
KR100557092B1 (ko) 2003-08-29 2006-03-03 삼성전자주식회사 가변적인 보조표시영역을 디스플레이하는 휴대단말기 및그 방법
US20050066089A1 (en) 2003-09-22 2005-03-24 Jeyhan Karaoguz Consumption based source throttling
US20050073471A1 (en) 2003-10-03 2005-04-07 Uni-Pixel Displays, Inc. Z-axis redundant display/multilayer display
US20050192922A1 (en) 2004-02-27 2005-09-01 Edlund Stefan B. Client-server computing system capable of validating cached data based on data transformation
US7152171B2 (en) 2004-04-28 2006-12-19 Microsoft Corporation Task-oriented processing as an auxiliary to primary computing environments

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8780725B2 (en) 2007-01-04 2014-07-15 Beijing Lenovo Software Ltd. Presentation system and method
WO2013054248A1 (en) * 2011-10-12 2013-04-18 International Business Machines Corporation Generating a predictive data structure
CN103874998A (zh) * 2011-10-12 2014-06-18 国际商业机器公司 生成预测数据结构
US9557966B2 (en) 2011-10-12 2017-01-31 International Business Machines Corporation Generating a predictive data structure
CN103874998B (zh) * 2011-10-12 2017-02-15 国际商业机器公司 生成预测数据结构
US10235143B2 (en) 2011-10-12 2019-03-19 International Business Machines Corporation Generating a predictive data structure
US10725751B2 (en) 2011-10-12 2020-07-28 International Business Machines Corporation Generating a predictive data structure
CN106020414A (zh) * 2016-05-09 2016-10-12 捷开通讯科技(上海)有限公司 电子装置显示控制系统与方法
CN107544750A (zh) * 2016-06-23 2018-01-05 富士施乐株式会社 终端设备
CN107544750B (zh) * 2016-06-23 2022-06-03 富士胶片商业创新有限公司 终端设备

Also Published As

Publication number Publication date
TW200602912A (en) 2006-01-16
US7577771B2 (en) 2009-08-18
JP2006024188A (ja) 2006-01-26
EP1594047A2 (en) 2005-11-09
EP1594047A3 (en) 2010-03-31
US20050243020A1 (en) 2005-11-03
KR20060047711A (ko) 2006-05-18

Similar Documents

Publication Publication Date Title
CN1758246A (zh) 用于脱机显示和辅助信息导航的数据缓存
CN1716177A (zh) 处理辅助计算设备接收的信息
CN111095399B (zh) 助理应用的语音用户接口快捷方式
JP2022185077A (ja) オンデバイス機能性を使うように車両クライアントデバイスに指令すること
AU2005232322B2 (en) Method and system for exchanging data between computer systems and auxiliary displays
US10417018B2 (en) Navigation of immersive and desktop shells
CN1261694A (zh) 信息处理装置、信息处理系统及信息提供介质
CN1735856A (zh) 用于提供充足最小化应用程序的系统和方法
US20060164324A1 (en) Sending notifications to auxiliary displays
CN101079061A (zh) 一种网页截屏系统及其实现方法
US20140229752A1 (en) User device and operation method thereof
US20120304106A1 (en) Desktop as Immersive Application
US20050039134A1 (en) System and method for effectively implementing a dynamic user interface in an electronic network
CN1818860A (zh) 用于与辅助计算设备的一致程序交互的接口
US20060232494A1 (en) Automatic cross-display coordination
CN1722105A (zh) 环境获知辅助显示平台和应用系统
CN1262490A (zh) 为离线客户请求提供响应的方法及装置
KR20060047710A (ko) 보조 디스플레이 시스템 및 방법
US20120304103A1 (en) Display of Immersive and Desktop Shells
CN1741532A (zh) 智能网框架装置
JP2023524009A (ja) 人工知能要求および提案カード
CN102056022B (zh) 一种操作系统在机顶盒中的应用方法、装置及机顶盒
CN1487391A (zh) 可访问性系统事件机构和方法
CN1822596A (zh) 一种客户/服务器架构中的数据处理方法
US20100199201A1 (en) System and method for displaying a display panel

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20060412