存储客户侧数据的制作方法

文档序号:6352441阅读:186来源:国知局
专利名称:存储客户侧数据的制作方法
存储客户侧数据
背景技术
计算机运行执行任务的应用程序。可以使用像C、C++、Java或别的语言这样的语言来编制应用程序。应用程序(例如字处理器或数据库)可以存储数据,例如由字处理器产生的文本文档或者数据库的表格中的数据条目。可以使用像超文本标记语言(HTML)这样的语言来编制web页。HTML是脚本语言,其限定文本、图片、链接向访问web页的用户表现的方式。Web浏览器可以使用像web工具包(webkit)这样的布局引擎渲染适于观看的HTML文档。应用程序可以使用多种语言来完成任务,例如在Java中对文本进行编程可能比在HTML中对文本进行编程和使用布局引擎来渲染HTML更低效。


本发明的一些实施例是关于下面的附图描述的:图1是根据示例实施例的设备的框图;图2是根据示例实施例的系统的框图;图3是根据示例实施例的方法的流程图;图4是根据示例实施例的方法的流程图;以及图5是根据示例实施例的系统的框图。
具体实施例方式操作系统控制计算机的操作以及指引程序的处理。可以通过分配存储器中的存储空间和控制输入功能和输出功能进行程序的指引和处理。操作系统可以具有脚本语言布局引擎,例如webkit 。布局引擎取得标记内容(如HTML、XML、图像文件等)和格式信息(如CSS、XS1等),并且将格式化的内容显示在屏幕上。包括布局引擎的操作系统的示例是PalmWebOS ,为了使数据下载更高效,运行操作系统的设备可以包括布局引擎来渲染数据。至少部分地属于被设备上的布局引擎渲染的脚本语言的应用程序,可以使用较少存储器来存储,因此可以更有效地在设备之间转移。例如,至少部分地包括html代码的应用程序可以从服务器转移至客户设备或者从第一设备转移至第二设备,并且被接收设备上的布局引擎渲染,这可以比不使用布局引擎的程序更高效。基于web的应用程序是通过将web浏览器指向统一资源定位器(URL)来执行的应用程序。基于web的应用程序通过web浏览器渲染。基于web的应用程序可能看上去类似于在计算机上运行的应用程序,例如在浏览器中运行的基于web的字处理器可能表现得类似于在操作系统上运行的字处理器。在web浏览器中运行的基于web的应用程序访问位于向运行应用程序的web浏览器提供基于web的应用程序的服务的系统上的存储器。例如,基于web的应用程序可以将由基于web的应用程序产生的数据存储在为基于web的应用程序提供服务的系统上。如果web浏览器可以存储客户侧数据,那么基于web的应用程序可以表现得类似于在客户机上运行的应用程序。
具有包括对包括HTML的应用程序进行渲染的布局引擎的操作系统的设备,可以连接至另一设备。该设备上的应用程序可以被该另一设备执行。根据应用程序,客户侧数据可以被存储在该设备上或该另一设备上。例如,游戏的客户侧数据可以存储在该设备上,来自字处理应用程序的客户侧数据可以存储在该另一设备上。将客户侧数据存储在哪里可以由应用程序的用户根据该设备和另一设备的容量、基于应用程序或其它标准来确定。在一个实施例中,设备包括从第二设备接收代码的接收器。代码的至少一部分可以是脚本语言。存储设备可以存储来自代码的客户侧数据。控制器可以运行代码并且确定是否将客户侧数据存储在存储器和第二设备中的至少之一中。对照附图,图1是根据示例实施例的第一设备100的框图。第一设备100包括接收器120,接收器120从第二设备中接收代码125。设备100可以是便携式系统,例如移动电话或笔记本计算机。第二设备可以是便携式系统,例如移动电话或笔记本计算机,或者可以是固定设备,例如塔柜(tower)或一体化(all in one)。代码125可以是应用程序,代码125的至少一部分是脚本语言。脚本语言是被布局引擎渲染的语言。脚本语言可以是例如超文本标记语言、可扩展标记语言(XML)或别的脚本语言。如果脚本语言是HTML,那么布局引擎可以是例如webkit 。第一设备100中的存储器115可以存储来自代码125的客户侧数据110。如果代码125由控制器105执行,那么客户侧数据110可以由控制器105产生。控制器105可以是例如通用处理器,可以是图形处理器,或者可以是专用集成电路(ASIC)。通用处理器可以处理来自不同操作系统或应用程序的多个指令,或者可以处理以下应用程序:例如由第一设备100上的控制器105执行的web浏览器,由第一设备100上的控制器105执行的字处理器或者由第一设备100上的控制器105执行的别的应用程序。控制器105还可以确定是否将客户侧数据110存储在存储器115和第二设备中的至少之一中。存储器115可以是例如易失性存储器,如随机存取存储器(RAM),或者非易失性存储器,如硬盘驱动器、光介质、闪存,或者别的存储设备。第一设备可以包括确定代码出处的逻辑。逻辑可以是硬件、固件或计算机可读指令。代码的出处可以被确定为第一设备或外部设备(如第二设备)之一。逻辑可以根据代码的出处确定将客户侧数据存储在哪里。例如,逻辑可以确定,如果代码是从第二设备收到的,那么将通过执行代码产生的客户侧数据存储在第二设备中,以及如果代码不是从外部源例如第二设备收到的,那么将客户侧数据存储在存储器115中。逻辑还可以使用其它标准(如用户控制的标准、应用程序控制的标准或别的标准)来确定将客户侧数据存储在哪里。用户控制的标准可以包括对用户的提示,如给用户用于选择将客户侧数据存储在哪里的消息。对用户的提示可以例如在应用程序开始执行时,在应用程序产生客户侧数据时,在应用程序关闭时或者在另外的时间。如果标准是应用程序控制的,那么应用程序可以把将客户侧数据存储在哪里确定为由应用程序的创造者预先确定的,或者可以是由应用程序动态决定的。在一个实施例中,布局引擎可以产生数据库或者使用现有数据库。客户侧数据可以存储在第一设备上或者外部源(如第二设备)上的数据库内。图2是根据示例实施例的系统的框图。该系统包括与第二设备210连接的第一设备200。第一设备具有执行应用程序205的运行时刻230。应用程序可以从第二设备210中复制或转移至第一设备200。运行时刻230可以包括HTML web存储器和存储路由器240。HTML web存储器存储由运行时刻230产生的数据。存储路由器240确定将由应用程序205产生的客户侧数据发送到哪里。存储路由器240可以将客户侧数据发送至第一设备200上的存储器255。第一设备上的存储器255可以包括数据库250,数据库250用来存储存储器250上的数据。如果存储路由器240确定由应用程序205产生的客户侧数据存储在第二设备内,那么存储路由器240将客户侧数据发送至收发器260,收发器260与第二设备210中的另一收发器265连接。收发器260和收发器265可以有线的或无线的。例如,收发器260和收发器265可以是802.llwif1、蓝牙 、无线通用串行总线(USB)、蜂窝数据协议或别的无线协议以及有线协议,如USB、IEEE 1394、串行高级技术附件(SATA)或别的有线协议。在一个实施例中,在客户侧数据通过收发器260和收发器256传输至第二设备210以前,重新格式化客户侧数据。第二设备210中的收发器265可以通过总线连接至第二设备上的HTML web存储器270和存储器275。如果客户侧数据可以存储在数据库中,那么可以产生数据库280来存储客户侧数据。收发器260和收发器265可以用来传输应用程序205。例如,如果第一设备200从第二设备210请求应用程序205,那么收发器260和收发器265可以将应用程序205从第二设备210复制到第一设备200上。应用程序还可以从第二设备210转移至第一设备200,其中在该转移后,应用程序不存储在第二设备210上。在一个实施例中,应用程序的一部分可以从第二设备210转移至第一设备200。在应用程序205被第一设备上的运行时刻230执行以后,应用程序205可以保留在第一设备200上供今后执行应用程序205,可以从第一设备205中删除,或者可以例如转移回第二设备210。在将应用程序205转移回至第二设备210以前,第一设备200可以更新应用程序205。如果第一设备200和第二设备210之间的连接断开,那么第一设备可以确定要干什么。例如,第一设备可以暂停执行应用程序205,直到第一设备200与第二设备210连接为止,使得待在第二设备210上存储的客户侧数据被存储在第二设备210上。第一设备还可以将待存储在第二设备上的客户侧数据存储在存储器255中,直到客户侧数据可以存储在第二设备210中为止。图3是根据示例实施例的方法的流程图。如果第二设备与第一设备连接,则该方法将操作第二设备。在步骤305中,第二设备可以将超文本标记语言(HTML)代码从第二设备发送至第一设备。如果第一设备请求HTML代码,那么第二设备可以将HTML代码发送至第一设备。HTML代码可以是执行任务的应用程序。第一设备可以执行HTML代码。在第一设备上执行HTML代码可以产生客户侧数据。第一设备可以确定客户侧数据应当存储在第二设备上。在步骤310中,如果超文本标记语言代码被执行,那么第二设备可以接收从第一设备中产生的客户侧数据。客户侧数据可以通过例如收发器传递至第二设备。在步骤315中,第二设备可以存储从第一设备接收的客户侧数据。第二设备可以将客户侧数据存储在易失性存储器或非易失性存储器中。
图4是根据示例实施例的方法的流程图。如果第二设备与第一设备连接,则该方法操作第二设备。在步骤405中,第二设备可以接收由第一设备做出的从第二设备对HTML代码的请求。在步骤410中,第二设备可以将超文本标记语言(HTML)代码从第二设备发送至第一设备。HTML代码可以是执行任务的应用程序。第一设备可以执行HTML代码。在第一设备上执行HTML代码可以产生客户侧数据。第一设备可以确定客户侧数据应当存储在第二设备上。在步骤415中,如果执行超文本标记语言代码,那么第二设备可以接收从第一设备中产生的客户侧数据。客户侧数据可以通过例如收发器传递至第二设备。在步骤420中,第二设备可以创建数据库,来将客户侧数据存储在第二设备中。在步骤425中,第二设备可以存储从第一设备接收的客户侧数据。第二设备可以将客户侧数据存储在易失性存储器或非易失性存储器中。在第一设备中执行HTML代码可能导致第一设备从第二设备请求客户侧数据。第二设备可以将由第二设备存储的客户侧数据发送至第一设备。例如,HTML代码可以是能够由用户在第二设备上玩的游戏,或者是可以复制至第一设备去玩的游戏。如果游戏产生客户侧数据,如用户偏好和游戏状态,那么第一设备可以将客户侧数据存储在第二设备上,使得如果第二设备运行游戏,则用户偏好和游戏状态可以在第一设备和第二设备断开连接以后利用。如果第一设备重新连接至第二设备,那么第二设备可以将客户侧数据发送至第一设备,以便如果在第一设备上执行游戏客户侧数据可供游戏利用。图5是根据示例实施例的设备500的框图。例如,设备500可以是关于其它实施例描述的第一设备或第二设备。设备500可以包括与控制器集线器510连接的处理器505。控制器集线器510可以连接至图形控制器520、输入/输出控制器525或计算机可读介质515或516。处理器505、控制器集线器510、输入/输出控制器525、图形控制器520中至少之一可以位于一个电路包内或一个电路芯片(circuit die)上。处理器505可以是能够执行多种任务的通用处理器。控制器集线器510可以将处理器505连接至控制器。输入/输出控制器525可以包括例如USB控制器、IEEE1394控制器、wifi控制器或其它输入/输出控制器。输入/输出控制器可以将像键盘和鼠标这样的外设连接至设备500,或者可以将设备500连接至另一设备。图形控制器520可以处理图形,以在显示器530上显示。键盘、鼠标和显示器可以与设备500的其它组件位于同一外壳内,或者可以例如位于设备500外部。控制器集线器510还可以连接至计算机可读介质515或516。如果例如设备500是第一设备,那么计算机可读介质可以包括指令,如果处理器执行这些指令则促使设备运行设备上的代码来产生客户侧数据。如果产生客户侧数据的代码源自第二设备,那么指令可以将客户侧数据发送至第二设备去存储。如果产生客户侧数据的代码源自第一设备,那么指令可以将客户侧数据存储在第一设备上。指令可以创建数据库,来将客户侧数据存储在第一设备上。指令可以将客户侧数据的格式转换成用于向第二设备发送客户侧数据的格式。指令可以从第二设备请求待执行的代码。指令可以将在第一设备上存储的客户侧数据与发送至第二设备的客户侧数据同
止/J/ O
上面描述的技术可以包含在计算机可读介质中,以配置计算系统来执行该方法。计算机可读介质可以例如包括但不限于以下介质中的任意多个:包括磁盘和磁带存储介质在内的磁性存储介质;光存储介质,如光盘介质(例如CD-ROM、CD-R等)和数字视频光盘存储介质;全息存储器;包括基于半导体的存储单元(如FLASH存储器、EEPR0M、EPR0M、R0M)在内的非易失性存储器存储介质;铁磁数字存储器;包括寄存器、缓冲器或缓存、主存储器、RAM等在内的易失性存储介质;以及互联网;等等。可利用其它新型的各式的计算机可读介质来存储和/或传输本文中论述的软件模块。计算系统可以以多种形式存在,多种形式包括但不限于大型机、小型计算机、服务器、工作站、个人计算机、掌上电脑、个人数字助理、各种无线设备和嵌入式系统等等。在上面的描述中,阐述了大量细节,以提供对本发明的理解。然而,本领域技术人员应理解在没有这些细节的情况下也可实践本发明。尽管关于有限数量的实施例公开了本发明,但本领域的技术人员应意识到由此产生的许多修改和变化。希望所附权利要求覆盖落入本发明的真正精神和范围内的这种修改和变化。
权利要求
1.一种设备,包括: 接收器,用于从第二设备接收代码,其中所述代码的至少一部分是脚本语言; 所述设备中的存储器,用于存储来自于所述代码的客户侧数据;以及控制器,用于执行所述代码并且确定是否将所述客户侧数据存储在所述存储器和所述第二设备中的至少之一中。
2.根据权利要求1所述的设备,其中所述脚本语言是超文本标记语言。
3.根据权利要求1所述的设备,进一步包括用于确定所述代码的出处的逻辑。
4.根据权利要求3所述的设备,其中根据所述代码的出处,所述客户侧数据被存储在所述存储器和所述第二设备中的至少之一中。
5.根据权利要求1所述的设备,进一步包括可由所述设备的所述控制器执行的web浏IrWSBJaL-HPT O
6.根据权利要求1所述的设备,进一步包括用于存储所述客户侧数据的数据库。
7.一种若第二设备与第一设备连接则操作第二设备的方法,所述方法包括: 将超文本标记语言代码从第二设备发送至第一设备; 如果所述超文本标记语言代码被执行,则所述第二设备接收从所述第一设备产生的客户侧数据;以及` 所述第二设备存储从所述第一设备接收的所述客户侧数据。
8.根据权利要求7所述的方法,进一步包括:将由所述第二设备存储的所述客户侧数据发送至所述第一设备。
9.根据权利要求7所述的方法,进一步包括:创建数据库来将所述客户侧数据存储在所述第一设备上。
10.根据权利要求7所述的方法,进一步包括:所述第二设备接收来自所述第一设备的对超本文标记语言代码的请求。
11.一种计算机可读介质,包括如果被执行则使第一设备的处理器执行下述步骤的指令: 在第一设备上执行代码来产生客户侧数据; 如果产生所述客户侧数据的所述代码源自第二设备,则将所述客户侧数据发送至所述第二设备去存储;以及 如果产生所述客户侧数据的所述代码源自所述第一设备,则将所述客户侧数据存储在所述第一设备上。
12.根据权利要求11所述的计算机可读介质,进一步包括如果被执行则使第一设备的处理器执行下述步骤的指令: 创建数据库来将所述客户侧数据存储在所述第一设备上。
13.根据权利要求11所述的计算机可读介质,进一步包括如果被执行则使第一设备的处理器执行下述步骤的指令: 将所述客户侧数据的格式转换成用于向所述第二设备发送所述客户侧数据的格式。
14.根据权利要求11所述的计算机可读介质,进一步包括如果被执行则使第一设备的处理器执行下述步骤的指令: 从第二设备请求待执行的代码。
15.根据权利要求11所述的计算机可读介质,进一步包括如果被执行则使第一设备的处理器执行下述步骤的指令: 将在所述第一设 备上存储的所述客户侧数据与发送至所述第二设备的所述客户侧数据同步。
全文摘要
代码可以由第一设备接收和由第二设备发送。第一设备可以执行来自第二设备的代码来产生客户侧数据。确定是否将客户侧数据存储在第一设备和第二设备中的至少之一中。
文档编号G06F15/16GK103119575SQ201080069253
公开日2013年5月22日 申请日期2010年10月20日 优先权日2010年10月20日
发明者罗兰·M·霍克默思 申请人:惠普发展公司,有限责任合伙企业
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1