便携式因特网访问装置的后退页面高速缓存转让专利

申请号 : CN200380104868.6

文献号 : CN1720528B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : R·图利

申请人 : R·图利

摘要 :

本发明旨在提供一种系统,使多用户操作PDA(个人数字助理),通过便携电话从服务器接收信息,访问因特网或万维网(WWW),在显示屏上远程查看这些图像并与其交互作用。本发明涉及信息包或块传输到PDA装置并在PDA装置屏幕上显示的优先权。本发明还涉及减少后退页面或先前看过的网页发送到PDA,存储在PDA高速缓存中并且还镜像在服务器存储器中的数据量的不同方法。服务器可以使用不同算法判断当PDA高速缓存接近完全容量时需要从PDA高速缓存中清除哪些信息。

权利要求 :

1.一种主机,用于从外部来源接收信息,所述主机包括具有窗口的浏览器,所述浏览器将所述信息在其存储器中再现成虚拟显示并冻结,由此软件程序减小再现虚拟显示的色深,压缩此虚拟显示并将其发送到远程装置,所述远程装置能将虚拟显示接收、解压缩、存储到存储器中并在显示屏上将其显示给用户,其中如果用户在所述远程装置上点击显示屏或输入文字,则在浏览器上解冻所述显示,并仅当信息已经变化时将虚拟显示再次发送到所述远程装置。

2.如权利要求1所述的设备,其中:

如果用户在所述远程装置上点击显示屏或输入文字,则在浏览器上解冻所述显示,并仅当信息已经变化时将虚拟显示发送到所述远程装置。

3.如权利要求1所述的设备,其中在将任何信息发送到所述远程装置之前,所述虚拟显示必须首先在所述主机完全下载并再现。

4.如权利要求1所述的设备,其中:

所述远程装置将接收的信息保存在高速缓存中,并且所述主机也在存储器中保存发送到所述远程装置的相同信息及其在所述远程装置上存储的存储器位置;

如果用户指令所述远程装置显示先前看过的信息,则所述远程装置通知所述主机,所述主机指示所述远程装置显示什么以及该信息在高速缓存中的位置;

如果用户想要查看的信息在所述外部来源已经改变,则所述主机将已经改变的信息部分发送到所述远程装置,所述远程装置将其存储在高速缓存中并显示;

所述主机使用算法确定在所述远程装置的高速缓存中存储哪些信息。

5.如权利要求1所述的设备,其中所述主机可以改变信息发送到所述远程装置的速率,或者改变信息发送到所述远程装置所需的时间。

说明书 :

便携式因特网访问装置的后退页面高速缓存

[0001] 发明背景
[0002] 本发明涉及一种主机系统或服务器,其中运行有Web浏览器,并且Web浏览器的显示内容通过与PDA装置有线或无线连接的便携电话发送和接收,所述PDA装置用于显示图像。特别是,本发明包括多个虚拟机,虚拟机包括在服务器中,每个虚拟机具有浏览器,应用程序在其中运行。多客户机由软件代表,将每个虚拟机的显示发送到远程PDA装置进行显示,并且也将信息从PDA装置发送返回到虚拟机。本发明涉及减少服务器与PDA之间传送的数据量的方法,用于节省与蜂窝电话使用有关的费用。本发明还涉及存储和恢复先前看过的网页的方法。

发明内容

[0003] 本发明涉及作为无线装置可以访问因特网和万维网的便携式高速因特网访问的多PDA(个人数字助理)装置,其中使用客户机和服务器系统实现多PDA用户同时访问一个服务器。
[0004] 连接到因特网的Web服务器含有虚拟浏览器,它可以获得浏览器上显示的图像,并将此图像转换成压缩的位图,并通过电话线与便携电话通讯。所述便携电话连接到高速因特网访问装置,它通常称为PDA(个人数字助理),其中包括显示屏、电池和有关的微电子器件。这使PDA可以接收、解压缩并显示从虚拟浏览器发送的位图图像。更重要的是,通过便携电话的连接,能够从PDA将数据或指令直接输入到服务器。主机或服务器接收将在网页上显示以HTML、JPEG等方式的矢量信息或压缩数据。虚拟浏览器在服务器上虚拟地显示虚拟图像。此图像整个或部分被重新压缩并发送到PDA。特别是,主机具有RDP(远程数据协议)服务器,该服务器具有多个虚拟机,每个虚拟机具有Web浏览器。多RDP客户机与虚拟机交互作用,在服务器上每个RDP客户机具有专用的虚拟机。每个客户机由软件表示,并通过专用调制解调器端口将虚拟机的显示发送到单独的远程PDA装置。此调制解调器端口允许单一的PDA与服务器上专用虚拟机之间通过单一的RDP客户机双向通讯。通过用多个调制解调器端口实施多虚拟机和多RDP客户机,就可以与RDP服务器上的PDA装置的多个用户通讯,实现因特网浏览、电子消息通讯等等。RDP客户机将通过调制解调器端口从PDA接收的信息,例如鼠标点击或键盘指令,发送到虚拟机中的应用程序,接着进行处理并通过同一个专用RDP客户机和调制解调器端口将刷新的显示返回到PDA。虚拟机的浏览器将显示信息,例如位图文件、矢量文件、指令、缓冲信息等等,发送到专用RDP客户机。接着,RDP客户机通过将一些信息存入存储器而将其栅格化,并接着进行处理,将此文件分割成更小的信息块。这些信息块被压缩并通过连接每个RDP客户机的专用调制解调器端口发送到PDA装置。接着PDA按照RDP客户机将其分割成更小的信息块之前RDP客户机首先接收到的原始顺序接收、解压缩并组装信息块。在每个虚拟机中运行的浏览器将发送到RDP客户机的大部分信息栅格化,例如文字等等,但RDP客户机必须栅格化其它信息,例如块等等。
[0005] PDA向虚拟机发送特定数据,通知PDA屏的显示区相对于浏览器发送的较大图像的当前位置。这是必需的,因为PDA显示的区域小于浏览器窗口的显示图像。RDP客户机将代表显示的图像的压缩数据块按优先权顺序发送,使首先发送到PDA并在PDA解压缩的块在PDA的显示区内,这也是用户观看的当前区域。接着,PDA按特定顺序解压缩显示区周围的块,例如各行从左到右,并将图像存储到内存中。PDA在虚拟网页中组装图像的块,这包括整个图像,从而使用户访问当前图像的任何部分,而不需要与RDP客户机不断地通讯。因此,当用户在任何方向在图像上滚动时,构成图像的数据块已经被解压缩并按优先权顺序组装,以便即时观看。比较靠近PDA屏幕显示区的图像块,在解压缩并存储到内存时比较远处的块具有较高的优先权。PDA连续地向服务器的虚拟机发送当前位置,当用户滚动或发送指令改变位置时保持即时得到刷新数据。这特别在滚动时使显示图像具有快速刷新速率,因为显示图像周围的区域已经解压缩并保存在存储器中。
[0006] 在PDA与RDP服务器通讯时对鼠标或任何键盘指令将赋予优先权。来自PDA的这些动作得到即时发送,中断当前动作且此动作发送到专用虚拟机的Web浏览器,将刷新的图像返回到PDA装置。此特征允许用户得到指令的快速响应。如果用户在PDA上开始鼠标点击或键盘输入指令,不改变RDP服务器上的显示图像,则原来的动作在最小的中断下几乎是立即继续执行。但是,如果图像改变并且在RDP服务器上刷新,则停止发送任何旧图像,并如果是占据PDA显示屏全部或一部分的全屏图像,就立即将新图像发送到PDA。如果刷新的图像占据一部分PDA显示屏并且还有显示屏以外的区域,则在PDA显示屏上显示的这部分刷新图像首先被发送到PDA,并且图像块发送到PDA,如上所述,按最接近显示图像的优先权解压缩并存储到内存中。因此,PDA将在包括整个图像的虚拟网页中组装图像块,首先开始PDA显示屏的当前位置,接着是其周围的区域。
[0007] 在使用过程中,一个信号(beacon)从PDA发送到RDP客户机以及反向进行,每分钟很多次,用于确认连接能建立并维持。在用户断开连接的情况下,PDA或RDP客户机将不能接收到信号,并产生超时,由此PDA和RDP客户机都断开,并接着重新连接。由于图像已经按照优先权解压缩并存储在内存中,因此用户仍可看到当前图像并在其周围滚动。PDA将在消息区中指示重新连接顺序已经启动,此连接连接到与先前相同的RDP客户机的状态,一旦建立了重新连接,则用已经变化的图像刷新PDA。同样地,如果断开中断了此次操作,则在重新连接后PDA继续下载信息块。在将信息发送到PDA时不需要同时从RDP客户机发送信号。只要PDA接收诸如刷新图像的信息或者信号,就知道连接已经建立。因此,当虚拟机没有新的动作时,RDP客户机必须向PDA发送信号,用于确认连接已经建立。PDA装置必须一直向RDP客户机发送信号,因为指令不是频繁地从PDA发送,并且在发送时仅仅是一个短的时间段。
[0008] 还实施了一种错误协议,用于确认所有信息块成功地接收和解压缩。如上所述,RDP服务器的虚拟机中的虚拟浏览器显示的图像分成较小的信息块,并压缩和发送到PDA装置。接着在PDA中将这些块按正确顺序组装、解压缩并存储在内存中。接收到的每个信息块由PDA确认,所述的PDA发送确认每个块成功接收的信号。因此,RDP客户机能监视发送到PDA的所有信息块被成功解压缩,并且在块未被确认时可以获知。RDP客户机也通知PDA发送的信息块数量,每个块用数字标识。当接收的信息块不能成功地解压缩并存储到存储器时,PDA还启用另一个错误协议。在此情况下,PDA将错误消息发送到RDP客户机,通知哪个信息块需要重新发送,RDP客户机将在结束发送当前信息块之后发送此块。RDP客户机将监视所有信息块成功解压缩的确认,包括从PDA装置接收错误消息之后重新发送块。
[0009] 发送到PDA的浏览器的网页图像部分可以略大于PDA屏幕,从而在不必发送全部网页图像的情况下便于微小滚动。这减少了发送到便携电话和PDA的数据量,从而减少了这些装置的操作费用,也减小了PDA上用于存储的存储器大小。
[0010] 浏览器上网页图像的动画或运动部分被捕捉成单一快照或冻结图像,并发送到PDA进行显示。即使在浏览器上出现进一步的动画变化,但这些将不被发送到PDA,除非用户在显示中点击或输入文字。在冻结图像发送到PDA之前,必须首先在服务器的浏览器上全部接收并再现此网页。如果用户在PDA显示上点击或输入文字,则在浏览器上释放单一冻结帧,使用户看到输入的文字,或者下拉菜单等等。
[0011] 后退页面或先前看过的网页图像存储在PDA的高速缓存中,并且由于服务器发送这些图像,因此服务器也将PDA高速缓存中的内容镜像到服务器存储器中。这样,服务器具有每个后退页面或先前看过的网页图像的准确位置信息,以及组成每个图像的信息块。存储在PDA高速缓存中的一些网页图像可以仅仅含有部分网页的数据。
[0012] 服务器可以仅仅向PDA发送先前看过的网页或后退网页中变化的新信息,从而可以明显减少发送到PDA或便携电话的数据量。在用户选择转到先前看过的并且仍存储在PDA高速缓存中的网页图像之后,服务器执行相关性分析。因此,服务器判断网页图像的哪些部分或块已经改变并且需要发送到待替换的PDA的高速缓存中。
[0013] 服务器可以在PDA高速缓存接近其全部容量时,使用各种算法判断需要从PDA高速缓存中清除哪些信息。可以采用先入先出(first in first out)的方法。服务器也可以保持跟踪最频繁访问的网页,并且作为存储优先权的标准,将最频繁访问的网页在高速缓存中保持最长时间。服务器也可以为用户访问每个网页的频繁程度以及每个网页的持续访问时间赋予权重因子。在PDA高速缓存中存储网页的优先权是根据用户最频繁访问的网页部分建立的。因此,如果高速缓存中存储的网页部分不是频繁访问的,或者从访问过它们后已经有一段长的时间,则从高速缓存中清除这些网页部分。
[0014] 在一定时间内可以为每个用户分配一定量的数据,如果用户耗费的数据太多,可以实施减少发送到PDA的数据量的方法。可以延长PDA接收网页的时间,从而数据到达PDA需要较长时间。也可以减小带宽,从而限制或降低数据传输到PDA的速率。

附图说明

[0015] 下面参考附图所示的说明性实施例详细描述本发明。在附图中:
[0016] 图1表示现有技术,其中PDA装置连接到便携电话,从而与主机无线通讯;
[0017] 图2表示现有技术的远程数据协议系统;
[0018] 图3表示PDA装置相对于图像部分的可显示区,这些图像部分在观看之前根据现有技术被顺序解压缩;
[0019] 图4表示根据现有技术的远程数据协议;
[0020] 图5表示根据现有技术虚拟网页相对于PDA观看区的框图;
[0021] 图6表示根据现有技术错误协议作为信息块从RDP客户机传送到PDA装置;
[0022] 图7表示根据现有技术远程装置与主机之间的通讯方法;
[0023] 图8表示根据现有技术PDA和主机之间的无线通讯方法;
[0024] 图9表示根据现有技术将数据包从服务器的网页传送到PDA;
[0025] 图10表示根据现有技术在用户滚动到当前网页新位置,表明包下载优先权的情况下PDA接收的数据块;
[0026] 图11表示根据现有技术每个数据块的线组成;
[0027] 图12表示根据现有技术当交错得到图11的整个块时将每个数据块再分成“a”块和“b”块;
[0028] 图13表示根据现有技术当PDA从PDA接收“a”块数据时每个块的第一绘制顺序;
[0029] 图14表示根据现有技术当在PDA接收“b”块并插入其正确位置时的第二绘制顺序;
[0030] 图15表示根据现有技术按照建立的优先权在限定周期内PDA执行的动作;
[0031] 图16表示根据本发明存储在PDA高速缓存以及服务器的后退页面或先前看过的网页;
[0032] 图17表示根据本发明用户滚动部分网页,部分网页含有新的和旧的信息;
[0033] 图18表示根据本发明在高速缓存中的存储器地址分配。

具体实施方式

[0034] 为了便于描述,在一个图中表示组成部分的数字在任何其它图中表示相同的组成部分。
[0035] 如前所述,本发明的基本实施例旨在提供一种允许多用户操作类似于掌上电脑的PDA(个人数字助理)装置的系统,用于访问因特网或万维网(WWW),如图4所示。相近的现有技术提供RDP(远程数据协议)客户机和服务器系统,便于多个PDA用户同时登录一台服务器。
[0036] 图1中所示的现有技术表示微软远程数据协议,其中使用主RDP服务器1,主RDP服务器1中具有能运行多个应用程序3的虚拟机2。每个虚拟机2连接网络系统4上的专用终端5或客户机,该终端或客户机能显示虚拟机的图像。网络终端5允许键盘6或鼠标7的指令输入RDP服务器1,由此所有数据处理在服务器上完成并在终端上显示。在此现有技术的方法中,RDP客户机是网络终端。但在本发明中,RDP客户机以完全不同的方式由软件表示,该软件与RDP服务器的虚拟机和显示RDP客户机图像的PDA装置交互作用。
[0037] 现有技术的基本描述表示在图2中,可以进一步参考先前的专利申请09/496,172,09/501,585,09/504,809,09/504,808,09/504,807,09/677,857 和
09/650,412。图示的主机8连接到因特网,并且此主机也可以是Web服务器。在主机中运行的是Web服务器程序9。当远程用户10请求浏览Web网页(或电子消息等等)时,Web服务器软件接收HTML、JAVA或其它类型的信息,并将此信息传送到另一个软件,浏览器转换器(the Browser Translator)11。此软件转换以HTML、JAVA等形式(信息可以收集自不同的来源)接收的信息(即,包括图形和文字的整个图像),并将其转换成黑白位图或栅图。在另一个实施例中,软件将信息转换成栅图或彩色图。图像包含在单一Web网页上正常显示的信息。因此,转换程序也作为虚拟浏览器。图2的便携电话12连接到本发明的高速因特网访问装置13,它通常称为PDA(个人数字助理),包括显示屏14、电池和相关的微电子器件。这使PDA可以接收、解压缩和查看虚拟浏览器发送的位图图像,更重要的是,通过便携电话的连接使数据直接从PDA输入到服务器8。特别是,图2和图4的主机或服务器接收Web网页上显示的HTML、JPEG等形式的矢量信息或压缩数据。虚拟浏览器通过栅格化图像或者解压缩部分图像并将其输入存储器而在服务器上虚拟地显示虚拟图像。此图像被整体或部分地再次压缩并传送到PDA。再次压缩并传送到PDA的数据格式不必与服务器初次接收的压缩数据格式相同。例如,来自Web网页的输入数据可以是虚拟浏览器上解压缩和显示的JPEG格式。这些数据被再次压缩并传送到PDA,但可以是TIFF G4格式或其它格式,而不必要是初始接收的JPEG。
[0038] 本发明的另一个实施例包括服务器接收矢量信息,例如HTML或文字,并接着将其栅格化成位图格式。接着通过虚拟浏览器转到存储器中并通过“无损耗(loss less)”方法再次压缩并传送到PDA。
[0039] 信息由图2的装置13接收,并能在其显示窗口14中显示单色或彩色图像15。信息按优先权顺序解压缩和显示,从而图3中基本或完全覆盖装置显示区14的部分图像17首先解压缩和显示,接着顺序地解压缩图像的部分18、19和20,并存储在装置的内存中,随后当用户上、下或左右滚动图像的这些部分时进行显示。
[0040] 先前的申请09/677,857在图4中表示具有主机21,主机21具有RDP服务器22,它是其中具有多虚拟机23的软件单元,每个虚拟机具有Web浏览器24。多RDP客户机25与虚拟机交互作用,每个RDP客户机具有专用的虚拟机。每个RDP客户机25由软件表示,通过专用调制解调器端口27将每个虚拟机23的显示传送到单一的远程PDA装置26。每个调制解调器端口27允许与便携电话64连接的单独PDA26与RDP服务器的专用虚拟机23之间通过单独的专用RDP客户机25双向通讯。利用使用多个虚拟机和具有多个调制解调器端口的多RDP客户机,就可以与RDP服务器的PDA装置的多个用户通讯,从而实现因特网浏览、电子消息通讯等等。RDP客户机25将从PDA 26接收的信息,例如鼠标点击或键盘指令,通过调制解调器端口27发送到虚拟机23的浏览器24,接着进行处理,并将刷新的显示通过相同的专用RDP客户机和调制解调器端口送回PDA。每个虚拟机的浏览器将显示信息发送到专用RDP客户机,如位图文件、矢量文件、命令、缓冲信息等等。接着RDP客户机通过将一些信息存入存储器而将其栅格化,并将此文件继续分割成更小的信息块。这些信息块被压缩并通过与每个RDP客户机连接的专用调制解调器端口发送到PDA装置,如图5所示。然后,接着PDA按照RDP客户机将其分割成更小的信息块之前RDP客户机首先接收到的原始顺序接收、解压缩并组装这些信息块。每个虚拟机中运行的浏览器将发送到RDP客户机的大部分信息栅格化,如文字等,但RDP客户机可以栅格化其它信息,例如信息块等等。
[0041] 根据上述的先前申请,图4的PDA26向虚拟机23发送特定数据,通知PDA屏的显示区14相对于大图像或虚拟网页28的当前位置,虚拟网页28是由浏览器发送到RDP客户机再发送到PDA的,如图5所示。这是必需的,因为PDA的显示区14小于RDP客户机可显示的图像(称为虚拟网页28)。专用RDP客户机将表示按优先权顺序显示的图像的压缩数据块发送,使发送到PDA并由PDA解压缩的第一数据块处于PDA的显示区14,这是用户浏览的当前区域。PDA接着按照特定顺序,如各行从左到右,将显示区14周围的块解压缩,并将图像存储在内存中。PDA将存储在PDA内存中图像块组装成虚拟网页28,它包括整个图像,因此使用户访问当前图像的任何部分而不必持续与RDP客户机通讯。因此,当用户沿任何方向滚动图像时,构成图像的数据块已经按优先权顺序解压缩和组装,以便随时浏览。非常靠近PDA屏显示区的图像块在比其它较远的块具有更高的优先权下解压缩并存储在内存中。为了进一步参考图5详细解释,显示在PDA屏14上的图像可以由块48、49、50、53、54和55组成,这些块从RDP客户机首先发送到PDA,接着解压缩并首先存储在PDA存储器中。之后立即将块42、43、44、45、47、52、57、58、59和60按此顺序从RDP客户机发送到PDA,进行解压缩并存储在PDA的内存中。这使得特别在滚动时快速刷新显示图像,因为显示图像周围的区域已经解压缩并存储在存储器中。PDA持续将其当前位置发送到RDP客户机,保持即时得到刷新数据,用户在虚拟网页28周围或外部滚动的位置变化,使RDP客户机一直具有显示区和周围的块发送到PDA。
[0042] 当PDA与RDP服务器之间通讯时,PDA的鼠标点击或任何键盘指令被给予优先权。PDA的这些动作被即时发送,中断当前动作,并且此动作指向专用虚拟机的Web浏览器,将刷新图像通过的RDP客户机发回到PDA装置。这些特征允许用户得到对指令的快速响应。
如果用户开始在PDA上点击鼠标或输入键盘指令,不改变RDP服务器的显示图像,则原始动作几乎只受到最小干扰地继续进行。但是,如果图像在RDP服务器改变并刷新,则中止发送任何旧图像,并且如果新图像是占据所有或部分PDA显示屏的全屏图像,就立即将新图像发送到PDA。如果发送的刷新图像占据一部分PDA显示屏以及显示屏外部的区域,则将在PDA显示屏上显示的这部分刷新图像首先发送到PDA,接着将PDA显示图像周围的图像块发送到PDA,解压缩并存储在内存中,如前所述。因此PDA在虚拟网页中组装包含全部图像的图像块,首先从PDA显示屏的当前位置开始,接着是其周围的区域。
[0043] 将一个信号从PDA装置发送到RDP客户机以及反向进行,此过程每分钟执行很多次,用于使用过程中确认连接是否建立并保持,如同先前申请中公开的。当用户失去连接时,PDA或RDP客户机接收不到信号并产生超时,从而PDA和RDP客户机断开连接并再次连接。用户仍能看到当前图像并在其周围滚动,因为此图像已经按优先权顺序解压缩并存储在内存中。PDA将在消息区显示重新连接过程已经启动,并且此次连接到与以前相同的RDP客户机的状态,如果重新连接建立时图像已经改变,则以此图像刷新PDA。同样,如果断开中断连接此操作,则PDA在重新连接之后继续下载信息块。在信息发送到PDA时不需要同时从RDP客户机发送信号。只要PDA正在接收诸如刷新图像或信号的信息,就表示连接已经建立了。因此,当虚拟机没有新行为时,RDP客户机必须将信号发送到PDA,用于确认连接已经建立。PDA装置必须一直将信号发送到RDP客户机,因为指令不是频繁地从PDA发出,而在发送时仅持续一段时间。
[0044] 根据先前申请实施错误协议,验证成功接收并解压缩所有信息块。如前所述,在RDP服务器的虚拟机的虚拟浏览器中显示的图像分割成较小的信息块,并且压缩和传送到PDA装置。然后将块按正确顺序组装、解压缩和存储在PDA内存中。接收的每个信息块由PDA确认,并且PDA发送确认成功接收每个块的信号。因此,RDP客户机可以监视发送到PDA的所有信息块被成功地解压缩,并且知道何时块未被确认。RDP客户机也通知PDA传送信息块的数量,每个块用数字识别。当接收的信息块不能成功解压缩和存储到存储器中,PDA还启动另一个错误协议。在这种情况下,PDA将向RDP客户机发送错误信息,通知哪一个信息块需要重新发送,并且RDP客户机将在当前信息块全部发送结束时发送该信息块。RDP客户机将监视确认所有信息块成功解压缩,包括从PDA装置接收错误消息后重新发送的块。为了进一步说明,下面参看图6,图6表示从RDP客户机发送到PDA装置的一串数据块61。当PDA接收数据块确认或者错误消息62发回到RDP客户机。由于RDP客户机响应来自PDA的所有数据,因此从PDA客户实际发送到PDA的这串数据块表示为63。为了进一步解释RDP客户机63的事件,块31、32、33和34按照这个顺序从RDP客户机发送到PDA,PDA将成功确认ack31和ack32从PDA发送到RDP客户机,但在发送块34时,PDA发出块33的错误消息,使RDP客户机使块34刚发送完就重新发送块33。RDP客户机继续发送块35、36和37,但注意到在从PDA接收到成功确认ack34和ack36之后没有块35的确认,使RDP客户机在发出块37之后发送块35。如前所述,RDP客户机也可以较快地或较慢地响应确认或错误消息。
[0045] 图7表示PDA装置13与便携电话12之间的标准串行连接66,并以AT指令集与调制解调器通讯。这使便携电话12起到调制解调器功能,与装在主机8上的另一个调制解调器65通讯。从因特网接收的Web网页67转换成G4文件68,并通过调制解调器发送到PDA装置。
[0046] 对于不允许AT指令集通讯但具有TCP/IP因特网连接的不同类型便携电话,公开了另一个实施例,如图8所示。PDA装置具有浏览器,能察看主机发送的图像,主机可以连接到因特网。在这种情况下,PDA装置13具有小浏览器,能识别并转换压缩的G4图像。PDA连接到便携电话12,所述的便携电话12连接到因特网服务提供商(提供标准因特网服务)而不是主机的调制解调器。主机连接到因特网并将所有Web网页67转换成G4压缩文件69。这些G4压缩文件69按因特网协议通过因特网服务提供商发送到PDA,PDA的小浏览器能转换接收到的图像,并在PDA屏幕上显示。因此,主机可被因特网图像访问并且也发出因特网图像。PDA连接的因特网服务提供者(ISP)总是登录一个网页,当PDA的用户想要登录一个链接或不同网页时,点击或信息通过ISP发送到主机,这将载入新的网页。按这种方式,可以允许多个用户拨号因特网服务提供者,从而根据需要浏览因特网的网页。
[0047] 先前申请09/650,412公开了在虚拟浏览器上显示的图像在发送到PDA装置之前按不同方式以不同量在服务器进行压缩。网页通常包括文字部分和照片部分。图像的不同部分按不同方式压缩。图像中的文字图像部分用G4压缩技术压缩。图像含有照片的其它部分用JPEG压缩技术压缩。整个图像转换成栅格图像,但不同部分用不同压缩技术转换成不同色深。文字部分可以用“无损耗”技术压缩,这将在解压缩时得到无文字错误的完整图像再现,而照片采用“有损耗”技术压缩,每次压缩将略微降低图像质量。具有黑白文字和彩色照片部分的图像将转换成栅格图像,但仅其文字部分减小到黑白1位,其它照片部分为24位或其它位的色深。因此,不同部分图像转换成或减小到不同色深,能用彩色照片和黑白文字反映实际的网页。色深可以根据所需的图像质量由用户设定或由服务器预先设定,这将影响屏幕的刷新速度,而刷新速度还取决于显示的照片数量以及所用的带宽大小。网页的文字和照片在服务器分开压缩并发送到PDA。在PDA,首先将图像的文字或黑白部分解压缩,并在屏幕上显示。此后很快将彩色部分解压缩并重叠在屏幕的图像上,使用户先看到图像的黑白部分。在浏览器上,解压缩的优先权由色深决定,最小的色深首先解压缩。
[0048] 另一个实施例将看到包括所有文字和照片的整个图像并将其转换成1位栅格图。此文件用G4或其它无损耗兼容方法压缩,并发送到PDA。当PDA接收时,此文件或包被解压缩,使用户几乎即时看到图像。完成该过程的一种方式是在服务器取网页图像,包括文字和照片部分,并将文字和照片部分用不同压缩技术压缩成不同色深,从而解压缩后黑白图像首先显示在PDA屏幕上,接着重叠上彩色的图像照片部分。特别是,文字和照片部分开始在PDA上显示成1位色彩,再用24位色彩仅仅将照片部分重叠在开始的1位色彩顶部。这样,文字显示为1位色彩,照片显示为24位色彩。通过减小首先显示的发送到PDA的信息带宽,这使得可以快速看到不具有全部色彩细节的图像,这些细节片刻后可以看到。
[0049] 在另一个实施例中,文字和照片部分开始在PDA以3位色彩显示,再用8位色彩将照片部分重叠在开始3位色彩的顶部。因此,文字以3位色彩显示而图片以8位色彩显示。此方法在快速看到图像的同时还节约了带宽。在进一步实施例中,也可以在保持文字3位色彩的同时用24位色彩重叠照片部分。
[0050] 在另一个实施例中,提供减小占用带宽的另一种方法,使图像从服务器发送到PDA的时刻起提供了快速显示,如上所述,文字和照片可以按低位色彩发送,照片部分用高位色深重叠,但在从服务器发送到PDA之前照片分辨率减小。因此,以100象素×100象素的照片为例,分辨率减小4倍后从服务器发送到PDA。这减小了从服务器发送到PDA的数据量,节约了提供图像所占用的带宽,这开始是低分辨率的“块”,但随后发送更多的象素,从而提高照片分辨率。
[0051] 根据此发明,如图9所示,服务器71具有很多浏览器74、75和76,每个浏览器运行其自己的网页,每个浏览器用于不同的PDA。首先在服务器71的一个浏览器74上显示的特定网页70,发送到连接便携电话73的PDA装置72。PDA的显示区或屏幕78比整个网页70小得多,因此建立发送到PDA的网页数据的优先权是重要的,因此用户想要首先看到PDA屏幕占据的网页位置。每个网页的数据分成很多包或块,从而这些包或块由服务器发送到PDA,并在PDA存储器中组装,然后显示在屏幕上。在另一个替换实施例中,由服务器发送到PDA的块可以首先在屏幕上组装,然后存储到存储器中。在进一步的实施例中,由服务器发送到PDA的块可以同时在屏幕上组装并存储到存储器中。数据包可以含有一个或多个块,或者一个包可以仅由一个块的部分组成。为了进行说明,包定义为服务器发送到PDA的一个完整块。当新网页显示在PDA屏幕上时,用户79想要首先看到屏幕区78占据的网页部分。这样,在显示器上当前网页中填充屏幕区的所有数据块必须以第一优先权发送到PDA。
[0052] 为了进一步详细解释,下面参看图10,它表示放大的网页70。图示的网页由数据块80组成,为了进行说明标有连续的数字。块80以矩阵阵列的形式存在于整个网页的横向和纵向,并超出图示的显示区或屏幕78。当在服务器载入网页时,块1、2、3、4、5、6、8、9、10、11、12和13首先从服务器发送到PDA进行显示,因为仅有这些块组成显示区或屏幕78。
因此,第一优先权数据从服务器发送到PDA,从而用这些数据块填充PDA的显示区或屏幕。
[0053] 第二优先权数据由服务器发送到PDA,从而用数据块填充PDA显示区周围的小区域,这仅是在第一优先权结束之后执行的。为进一步详细解释,再次参看图10,图示的块7、14、15、16、17、18、19、20和21由服务器发送到PDA,存储在PDA的内存中、PDA上显示的网页图像上,这些块按照出现在服务器的网页70所显示的顺序,插在其正确的位置上。这便于PDA装置上进行即时小量的滚动,浏览PDA屏幕上显示的图像,从而为用户提供更高的速度,而这仅能在块1、2、3、4、5、6、8、9、10、11、12和13首先从服务器发送到PDA(第一优先权)之后进行。
[0054] 第三优先权数据由服务器发送到PDA,从而连续变化的当前PDA显示区的动画或片段,在一段时间段内保持连接刷新。用户可以根据其喜好选择改变此时间段,或者可以在服务器预先设置。进一步参看图10,块3、4、5或者其中的部分可以是一则其中GIF连续变化的广告。因此,作为一个例子,在第一和第二优先权结束之后,作为第三优先权,块3、4和5在第一个10秒内连续刷新(如果用户选择此时间段,或者在服务器预先设定),如前所述。在一段时间段内连续刷新所显示的连续变化的动画或片段的一个原因是,网页本身可以不完全提供到服务器的浏览器。在这种情况下,网页上的部分图像,例如Yahoo标志、广告横幅或网页的其它部分,当网页从服务器下载时可以不立即出现,并在一段时间后传输,但在服务器在第一个10秒内持续提交更多部分(如果用户选择此时间段,或者这是在服务器预定的),直到最终提交整个网页。这使服务器上在PDA显示区出现的网页部分,在此时间段内连续发送并在PDA上刷新,因为在浏览器提供网页需要几秒。因此,当新网页出现在服务器的浏览器上并且部分增加直到完全传送的时段,PDA屏幕上显示的图像也以类似于此时间段增加部分的方式生成。这样,在服务器上在第一个10秒内出现和改变的可以不是广告(如果用户选择此时间段,或者这是在服务器预定的),但它可以是此时间段内需要完全提供的网页。这个时间段,例如10秒,不可以被用户改变或者不可以在服务器预定,但可以由浏览器本身确定。浏览器知道下载整个网页需要多长时间,并且从接收整个网页的开始到结束的时间作为将要继续刷新的时间。因此,浏览器刷新主屏幕上的部分图像直到这段时间结束,这作为第二优先权;根据第三优先权,此段时间之后可以不发送刷新或发送刷新。
[0055] 再看图15以及第一优先权,其中具有一个时间段“A”(这已在上面解释过,可以由用户确定或者在服务器预定或者由浏览器确定的时间段,此时完全收到网页),在这段时间内浏览器给出网页,并且在屏幕显示区内所有网页的变化的块由服务器发送到PDA进行显示。浏览器不区分网页上诸如广告的动画部分或不变化的其它部分,但根据第一和第二优先权发送包括显示区78的信息块。在时间段“A”结束时,浏览器通知服务器软件所述网页已经全部提交。在时间段“A”,服务器按设定间隔检验显示区或屏幕78的每个块。如果最后变化是在特殊帧对块3做出的,则服务器检查显示区78的每个块是否有已经变化的新块,如果改变块3和4,则服务器首先发送块4,接着发送块3,因为优先权转移到发送从前一帧以后还未变化的新变化块。这样,块不会连续发送两次,除非在连续帧中其它块没有其它变化。服务器检查发送到PDA的显示区78的变化的时间间隔,可以设为每隔2到3秒,或者根据用户需要随时执行,或者在服务器预先设定。
[0056] 再看图15以及第三优先权,在时间段“A”之后,由于用户不想看诸如广告的动画变化,用户可以取消动画,或者在服务器预先设定。因此,PDA的用户或服务器可以取消显示区78的动画变化并节省带宽,因为动画变化占用大量带宽。因此作为第三优先权,服务器将包括网页其余部分的块发送到PDA。
[0057] 作为另一个实施例,如果浏览器启用动画并且决定PDA不显示动画(这种情况是浏览器不启用动画,屏幕的浏览器的特定位置上根本不出现任何东西,但用户想看到至少第一静止图像),第一、第二和第三优先权都像以前一样执行,但浏览器启用动画,除了填充网页其余部分的第三优先权仅发送每个块一次并且不发送变化。
[0058] 作为另一个实施例中,如果用户或服务器已经预先确定要求动画,则第一和第二优先权像以前一样执行,但第三优先权变化。在启用动画时,当时间段“A”过去之后或者比“A”多几秒(表示为“X”秒)之后,服务器将发送到PDA的块分成时间片,用于利用动画块填充较大区域87,保持变化连续性。减小动画更新速率将节省带宽,并允许网页70的其它部分同时发送到PDA。因此,在“A”秒之后或在“A”+“X”秒之后,服务器检查动画的变化,并发送那些已经变化的块,接着再发送较大区域87的几块,并在此时间片模式下在此两个动作之间交换,直到PDA完全收到区域87(外部78)。
[0059] 当用户看到图10的网页70的区域81并且此区域在PDA被数据块填充(或者在此之前),并且用户滚动到新区域82,根据建立的开始三个优先权,数据块填充显示区78。这意味着通知服务器新的位置,并且优先权1、2和3开始采用此新位置作为新参数开始运行。
[0060] 重新开始优先权协议1、2和3的另一个参数是如果用户点击显示屏的任何位置。因此,当此动作出现时,重点将放在主显示的任何变化。
[0061] 如果用户滚动到PDA屏幕78上显示的网页图像的新位置,则PDA将立即发送滚动到的新位置信息,服务器做出响应,将占新位置显示屏的那些块发送到PDA,并增加PDA存储器中存储的网页图像。此过程将被认为也是第一优先权,因为第一优先权的标准是填充PDA显示屏的显示区。因此,以图10作为例子,在第一位置81仅占据显示区78的数据块1、2、3、4、5、6、8、9、10、11、12和13从服务器71发送到PDA 72首先显示。如果在PDA结束下载并从第一位置81显示块之前用户79滚动到新位置82,则PDA将此新位置的坐标发送到服务器,并且作为第一优先权响应将仅占据新位置82显示区78的数据块31、32、33、34、
35、36、38、39、40、41、42和43从服务器发送到PDA,并解压缩,存储到存储器中(PDA的同一网页图像上),并在屏幕78上显示给用户。在另一个实施例中,从服务器发送到PDA的块可以首先在屏幕上组装,再存储到存储器中。在另一个实施例中,从服务器发送到PDA的块可以同时在屏幕上组装以及存储到存储器中。如前所述,第二优先权是服务器71将块37、44、
45、46、47、48、49、50和51发送到PDA,这些块在新位置82周围,并以固定距离包围显示区
78。从服务器发送到PDA包围显示区78的块数可以在服务器端设定。因此,根据此发明,在任何时间执行滚动时,中断所有动作,第一优先权变为发送仅占据显示区78的数据块,这些数据块在服务器网页上PDA滚动到的部分。
[0062] 在节省带宽时,用户可以设定PDA仅接收屏幕位置81周围的几个数据块,或者也可以设定服务器仅发送屏幕位置81周围的几个数据块,此后不再将其它块发送到PDA,除非用户又滚动或点击。
[0063] 如前所述,在原始申请09/677,857中,在虚拟浏览器显示的图像中包含的图片,在发送到PDA之前,在服务器中按与文字部分不同的方法压缩,并且按与文字部分不同的方法减小色深。当PDA接收时,将此图像解压缩,使用户首先看到文字部分,接着以较低色深显示图片部分,这样做速度快,并且逐渐用较高位色深的色彩重叠这些部分。这使图像在没有图形的细小细节的情况下被快速看到,细节随后传到。这样,在服务器71将网页的图片部分的色深减小并发送到PDA 72,PDA 72接收并以较低色深显示这些图形,例如3位。第四优先权是将显示在屏幕78上的图片色深增大到类似于服务器71上当前给出网页图像。接着,例如,图像的3位色深图形或图片部分用8位色彩重叠。特别是,图10的网页图像70通常包括文字部分和图片部分,并且仅有图片部分用8位色彩重叠,文字部分保留3位色深。因此,根据此发明,在将数据从服务器发送到PDA的第三优先权之后,连续变化的显示的动画或片段,在一段设定时间内连续刷新,显示在PDA屏幕上的图像照片部分的色深增大到匹配服务器发送的网页图像,这作为第四优先权。
[0064] 另外,如果需要减小带宽并且取消第三优先权,则在第二优先权之后执行第四优先权。一般地,优先权协议被称为优先权。此第四优先权仅仅应用到当前显示上的图像,或者在此显示周围的固定距离上。
[0065] 根据此发明,对于彩色PDA装置,在图片部分用8位色彩(或其它)重叠之后的第五优先权是使数据块从服务器发送到PDA,填充PDA的网页图像的所有其它区域,这些数据块解压缩并按照出现在服务器提供的图像顺序以正确的位置存储在存储器中。但是,这个动作不是一个排它的动作,可以与刷新连接变化的显示动画或片段一起执行。因此,填充显示区78周围遗漏块的第五优先权可以是刷新连接变化的显示动画或片段的时间片。因此,由于时间片使主屏幕上变化的每个过程变慢。在时间片方法中,可以有几个数据块从服务器发送到PDA填充显示区周围,接着以另外方式随后立即发送刷新显示区78内动画区的几个数据块,直到PDA接收整个网页图像。在此发明的另一个实施例中,填充显示区78周围遗漏块的第五优先权,可以与刷新连续变化的显示的动画或片段同时执行。实现此过程的一种可能方法是使用半带宽将每个任务从服务器发送到PDA。在此发明的另一个实施例中,一个字节的数据用于发送填充显示区周围的信息块,下一个字节用于刷新连续变化的显示的动画或片段,此过程以另一种方式出现,直到PDA接收整个网页图像。这与此前的第三优先权相同。
[0066] 如果不用电路开关连接,当所用网络在需要节省带宽的封包式网络,则第三优先权或第五优先权根本不用发送,即不发送块填充网页其余部分,用户能看到网页其余部分的唯一方式是滚动到当前显示区以外并等待下载新块。另外,服务器可以开始发送另外的块(不在当前显示区的),这些块在用户开始滚动的方向或者其它装置滚动的趋势所示的方向确定的位置。服务器也可以保存用户对某些网页的首选项,这是第一和第二优先权之后特定用户通常想要滚动或下载的。
[0067] 在另一个实施例中,服务器可以在“A”或“A+X”时间段不发送图像,仅是在此时间过去后开始第一优先权。因此,当前屏幕(或当前屏幕加上当前屏幕周围固定距离的范围)在此时间过去后开始下载,并且所有块仅下载一次。
[0068] 在向PDA装置发送任何信息之前,这种方式使网页在浏览器上完全显现。因此,首先发送当前屏幕(在此时间过去后),接着发送当前屏幕周围固定距离范围,在带宽节约方法中,不发送任何信息(无当前屏或填充其余的网页),除非用户表示出想滚动出当前屏幕,或者点击当前屏幕。如果用户点击当前屏幕,则第一优先权转移为发送当前屏幕的变化。
[0069] 根据此发明,PDA屏幕78是由液晶点矩阵阵列组成的,每个点具有均匀的尺寸和点之间的间隙。占据整个PDA屏幕的图像如上所述被细分成数据块,为了便于说明,每个数据块在宽度上具有固定数量的点并且在高度上具有固定数量的点。实际块的尺寸可以变化,并由服务器动态确定。这样,为了便于说明并参看图11,块1(图10)定义为10点宽和10点高的矩阵阵列。因此,线83将仅仅由10点的直线阵列组成,10条这样的线在块1中按彼此上下排列。每个数据块可以再分进一步细分成较小的块,如图12所示,由此块1细分成块1a和1b。同样地,所有其它的块(2、3、4、5,等等)分成“a”和“b”子区,相应块的“a”子区由奇数线1、3、5、7和9组成,“b”子区由偶数线2、4、6、8和10组成。因此,当网页在服务器载入并且数据块发送到PDA时,从服务器传输到PDA的所有数据块首先发送的是“a”子区。这样,当进一步参考图10时,对于位置81的屏幕78,块1a、2a、3a、4a、5a、6a、8a、
9a、10a、11a、12a和13a作为第一优先权从服务器发送到PDA。由于利用这种方法每个信息块仅有一半数据发送到PDA进行显示,绘制顺序和显示顺序使每个数据线在显示屏78上绘制两次,因为在“a”子区的数据块仅含有每个块10线信息中的5线。否则,每个显示的块将有交替的线丢失或遗漏,使PDA屏幕上显示的图像难以辨认。因此,进一步参考图13,块1的第一绘制顺序或显示顺序将按从顶到底的顺序显示线1、1、3、3、5、5、7、7、9和9,其中“a”线是临时重复的。利用此方法,每个块仅有一半数据从服务器发送到PDA,从而在PDA上具有非常快的显示时间,但由于每个块构成显示的信息的交替线丢失和替代而使图像看上去呈“块状”。这种情况仅是临时性的,因为在随后时间中,对于位置81的屏幕78,块1b、2b、
3b、4b、5b、6b、8b、9b、10b、11b、12b和13b从服务器发送到PDA,在每个块中临时重复的“a”线用每个块的这些新“b”线替代。块1a和1b组合起来得到块1的最终显示,因为每个块仅含有一半数据线,对每个数据块在PDA显示器上重复此过程。接着将这些完全重新构造的块存储到PDA装置的存储器中。这样,显示屏的块1将由线1、2、3、4、5、6、7、8、9和10组成,如图14所示,这是块1的第二绘制顺序或显示顺序。隔行扫描数据块的这个方法使用户在与服务器延迟很小的情况下看到网页,但开始它可能不是非常清楚,因为交替线信息被取代了,这与一次从服务器传输每个块的所有线相比,使用户在较快的显示速度下预览网页。这是一种发送隔行扫描图像的方法,并且还有其它的方法发送较少信息含量的块并在随后步骤增加其它信息。
[0070] 根据此发明建立的优先权,并且进一步参看图10中位置81的屏幕78,当在PDA屏幕上显示的图像由服务器发送时,块1a、2a、3a、4a、5a、6a、8a、9a、10a、11a、12a和13a作为一部分第一优先权发送。接着,块1b、2b、3b、4b、5b、6b、8b、9b、10b、11b、12b和13b从服务器发送到PDA结束第一优先权,这些“b”块与先前发送的“a”子区的相应块是交错的。因此,根据此发明第一优先权,重要的是使用户看到的图像在发送任何其它区域之前接近于完整。此后,根据先前建立的优先权,显示区78周围的块7a、14a、15a、16a、17a、18a、19a、20a和21a作为一部分第二优先权由服务器发送。这将使用户有机会几乎立即滚动到显示区稍靠外一些,而不必要等待显示区周围整个块发送到PDA。随后,块7b、14b、15b、16b、
17b、18b、19b、20b和21b发送到PDA结束第二优先权,这些“b”块与先前发送的“a”子区的相应块是交错的。在作为例子的进一步细节中,对于位置81的屏幕78,当第一串块1a、2a、
3a、4a、5a、6a、8a、9a、10a、11a、12a和13a从服务器发送到PDA,并且用户在发送块1b、2b、
3b、4b、5b、6b、8b、9b、10b、11b、12b和13b之前滚动到一个新位置82,则仅占据新显示区的块31a、32a、33a、34a、35a、36a、38a、39a、40a、41a、42a和43a立即从服务器发送到PDA。发送块31a、32a、33a、34a、35a、36a、38a、39a、40a、41a、42a和43a现在被认为是第一优先权(因为这是用户想要观看的区域),并且随后发送块31b、32b、33b、34b、35b、36b、38b、39b、40b、
41b、42b和43b从服务器发送到PDA结束第一优先权,并且这些块与先前发送的“a”子区的相应块是交错的。接着,根据一部分第二优先权,将显示区新位置82周围的块37a、44a、
45a、46a、47a、48a、49a、50a和51a从服务器发送到PDA。为了结束第二优先权,将相应的块
37b、44b、45b、46b、47b、48b、49b、50b和51b从服务器发送到PDA,这些块与先前发送的“a”子区的相应块交错。作为第三优先权,连接变化的显示动画或片段按相似的方式刷新,首先从服务器发送“a”子区,此后立即发送“b”子区,并按相似方式交错。此后立即执行增加色深的第四优先权。但是,第五优先权接着将“b”子区发送到第一区81,这是滚动动作之前首先显示给用户的。这样,块1b、2b、3b、4b、5b、6b、8b、9b、10b、11b、12b和13b从服务器发送到PDA,然后发送所有周围区域,其中“a”子区首先从服务器发送,此后立即发送“b”子区,二者按相似方式交错,从而完成将网页图像存储至PDA的存储器。
[0071] 根据此发明另一个实施例,并参考图9,数据块84通过便携电话基础结构从服务器71发送到PDA72。在便携电话基础结构内部具有大型管线,从服务器发送到PDA的块在此管线内部。用于传输数据块的管线85相当大,结果在服务器发送特定块以及PDA接收之间存在明显的时间滞后或延迟。由此,当从服务器发送特定块时,在管线中存在很多块,并且在PDA接收特定块之前必须将去除或接收管线中的块。特别是可以出现如下状况:当从服务器发送块1、2、3、4、5、6、7和8时,在块6从服务器发出后,PDA仅接收到块1,因为管线中有明显的滞后或延迟。PDA必须对每个接收块发出确认,否则服务器将没有任何有关块是否在成功接收、解压缩并在PDA屏幕显示的信息。如果丢失任何块或者块不能成功显示,则服务器将重新安排这些块,使其随后再次发送到管线,因为服务器没有接收到这些块的确认。这种方案的一个问题是PDA接收任何重新安排的块的时间延迟,因为在重新安排的块接收、确认和将其输出到正确位置之前,PDA必须接收和确认管线中很多其它的块。当用户点击新网页时也存在这个时间延迟的问题,因为PDA接收代表新网页的任何块之前,需要从管线中移动或者接受管线中已经存在的旧网页的很多块。为了明显减小这种时间延迟,在管线中传输的块数限制在较小的数量,为了便于说明仅用3块而不是6块。因此块1、2和3从服务器发送到PDA,并且服务器在发送块4之前首先等待来自PDA的块1确认。如果在预定时间段内没有特定块的任何确认发出,则服务器假定此块未在PDA成功接收、解压缩和显示,并自动地重新安排此块接着发送到管线中。作为一个例子,理想情况下,块1、
2和3首先从服务器发送到PDA,接着在块4发送到PDA之前服务器必须首先接收到块1的确认。当服务器接收到块2的确认后,接着发送块5,等等,因此确认不会在其发送之后落后多于3块。此系统明显加快了显示新图像的响应时间,而不必等待先从管线中清除很多包或块。
[0072] 而且根据此发明,如果用户点击显示屏幕78的任何位置,则改变数据下载到PDA的优先权。例如,主屏幕显示区已经下载并显示在PDA屏幕上,并且显示区周围的其余块已经下载,优先权已经从刷新动画改变到对显示区周围块进行动画变化的时间片。因此,由于时间片操作,主屏幕上变化的任何事情都减慢,但如果用户点击需要输入的区域,例如标题框,则当前显示方式对于这种情况太慢。因此,当对PDA屏幕78上显示的网页部分的任何点击包括改变屏幕上显示图像时(由于PDA将何处出现点击的信息发送到服务器),下载信息的优先权将第一优先权给予用任何新图像填充PDA的显示区,从而对此操作给予完全带宽而不是时间片。当显示区填充后,如上所述继续其它优先权。这对于文字输入特别有用,使用户在没有任何时间延迟情况下看到输入的文字,而且对于网页上的菜单项也特别有用。
[0073] 为了节省带宽占用,服务器从PDA上返回的信息监视用户的动作,用户的动作例如滚动、点击或文字输入。因此,如果没有PDA上这些用户动作的响应,在预定周期(用户可以调节)之后,服务器可以停止向传输到PDA的任何特定网页发送新的信息块(作为带宽节约的措施)。根据此发明使用带宽节约,除非从这些用户动作表现出想要移出显示区。
[0074] 根据此发明存在一种类似方式,对于需要动画变化的区域节省带宽。在用户可调节的或服务器预定的时间超出之后,服务器不发送数据块。这通常是几秒钟,并且这在动画变化出现在用户不感兴趣的广告的情况下特别有用。因此,在此带宽节约方式下,如果用户滚动到当前显示图像以外,或者在包括显示图像变化的区域点击或输入文字时,仅出现显示图像的变化。
[0075] 本发明的基本实施例涉及通过便携电话基础结构管线减小从服务器发送到PDA装置的数据量的方法。大多数便携电话运营商按电话发送和接收的数据量向用户收费,因此减少便携电话接收的数据量以及PDA下载的数据量,对于减小用户的支出特别重要。第一实施例参看图9,其中数据块84通过便携电话基础结构从服务器71发送到PDA 72。在便携电话基础结构内部有大型管线85,并且如前所述,从服务器发送到PDA的数据块84在此管线内。进一步参看图16,服务器71具有浏览器74,浏览器74上显示特定网页70。PDA的可显示区或屏幕78比完整网页70小得多,并且当网页完全在浏览器再现之后仅有此区78从服务器发送到PDA,从而节省从便携电话12发送的数据量。浏览器74上网页图像发送到PDA的部分可以比屏幕78略大,如上所述,这允许稍微滚动到显示区外部。
[0076] 在本发明的另一个实施例中,再参看图16,在浏览器74上显示的网页图像70被冻结,从而当网页完全在浏览器再现之后,可以将图像的动画或运动部分捕捉成单一的静止帧,并且仅有此单一帧在没有进一步动画变化的情况下发送到PDA,从而作为一种节省通过便携电话发送数据量的措施。因此,即使此网页仍在进行动画变化,服务器也复制此单一帧快照,并在从服务器发送到PDA的网页70的任何象素没有进一步变化的情况下将此发送到PDA。网页必须首先在服务器由浏览器接收并再现,并且仅当此完成后才能将图像冻结并发送到PDA。当用户键入文字,或在PDA显示区或屏幕78点击某处时,在浏览器将单一冻结帧释放。释放单一冻结帧的原因是,用户可以看到在适当位置输入的文字,或者如果显示释放,则仅能看到下拉菜单。因此,在这种情况下当单一冻结帧在浏览器释放时,仅有冻结网页图像的变化立即发送到PDA。但如果用户点击没有链接或浏览器没有任何动作的位置,这意味着在PDA上看到的图像或在浏览器上的图像没有任何变化,则在另一个实施例中浏览器能够做到不释放此帧,使其保持原样,因此不从服务器向PDA发送任何其它图像。否则,浏览器将释放此帧一段时间,如果在用户当前观看的这部分屏幕没有动画,则不向PDA发送任何其它图像;但如果存在动画,则在5到10秒的一段时间,动画发送到PDA,从而便携电话和PDA接收较少数量的数据。此外,如果用户需要观看当前屏幕的一些动画或刷新,则用户可以将此作为短时间内释放PDA上看到的单一冻结画面的措施。因此,用户可以仅仅点击没有链接的位置并在5到10秒的一段时间,用户的显示继续被刷新,并且此后网页再次如之前一样冻结在PDA屏幕上。如果用户点击新网页的链接,则将此新网页的图像发送到PDA。但是,如果用户滚动到此网页图像的不同部分,则图像仍保持为单一冻结帧。
[0077] 在本发明的另一个的实施例中,并再次参看图16,在任何数据发送到PDA之前,浏览器74显示的网页图像70必须首先在服务器71完全下载并再现。如果在网页没有在浏览器完全再现的情况下数据发送到PDA,则在浏览器再现网页时并且如果网页有移动或部分网页变化,将导致同一图像发送到PDA超过一次,这增加了发送到便携电话或PDA的数据量。因此,在此特别的实施例中,为了减小通过便携电话发送到PDA的数据量,网页首先在浏览器完全再现,接着抓取单一冻结图像帧或快照,此帧中没有象素变化,接着如前所述,按数据块发送到PDA。即使网页在服务器浏览器上存在进一步的动画变化,也不从服务器向PDA发送除冻结图像帧以外的其它数据。当用户键入文字,或点击PDA显示区或屏幕78上的某处,则如上所述,将PDA显示屏上的单一冻结帧释放一段时间。
[0078] 根据本发明的另一个实施例,并进一步参看图16,PDA将很多后退页面或先前看过的网页94存储在其高速缓存中,并且这些网页图像也存储在服务器的存储器中。因此,如果用户点击PDA装置的后退按钮,或者如果用户输入以前看过的并且现在存储在PDA高速缓存中的网页URL,则服务器实际上指令PDA去向那个后退页面94,因为它精确地掌握每个后退页面在PDA内存条中存储的位置,也知道对于每个网页图像下载多少数据。一些网页90可以有占据网页的一部分91的数据,但服务器一直跟踪每个网页有多少数据发送到PDA,特别是跟踪网页的什么片段或块发送到PDA,从而当用户滚动到这些区域外部时,服务器知道将PDA信息发送到滚动到的新区域。
[0079] 在本发明更复杂的实施例中,在PDA 72和服务器71的存储器中存储的后退页面94可能看上去不与不同时间的实际网页完全一样,因为大多数网页随着时间过去而修改或更新。因此,再参看图16,存储在PDA的当前后退页面90仅在区域91具有为此特定网页发送的数据,区域92的数据还未被PDA接收或下载。因此,当用户点击PDA的后退按钮或输入PDA高速缓存中存储的网页URL时,服务器从因特网获取新的刷新网页并完全再现,然后抓取单一冻结图像帧或快照93,从而此帧中没有象素变化。服务器也在其存储器中具有PDA高速缓存中存储的所有网页图像块或部分的镜像,因为这是发送到PDA的信息;因此当其向PDA发送信息时,也将信息存储在其自己的高速缓存中。服务器检验用户点击的的网页是否当前存储在PDA高速缓存中,如果后退页面在高速缓存中,则服务器抓取新的快照93并复制存储在PDA高速缓存中的后退页面图像90,并执行这两个网页图像的相关性分析。
这样,服务器首先对比哪些数据块或图像部分完全相同,按顺序每次一个块,并指令PDA将不相同的图像部分或块复制到其高速缓存中。因此,如果PDA高速缓存中存储的网页图像与从因特网获取新快照93的块1、2、3、4和5相同,则仅有这些块保留在PDA高速缓存中,并从PDA高速缓存中复制、解压缩和在屏幕上显示。因此,这意味着,服务器不是将块1、2、
3、4和5发送到PDA,而是仅仅发送一个指令,通知PDA从其高速缓存中复制块1、2、3、4和
5,解压缩和显示给用户。但是,如果块6和7对于同一网页图像是不同的,则服务器将这些不相同的块发送到PDA,并用新块6和7替换PDA高速缓存中的旧块,并且也解压缩并在屏幕78上显示这些新块6和7。从服务器接收的一个特定网页图像的所有块1到7以压缩格式存储在PDA高速缓存中。此方法允许存储在PDA高速缓存中的后退页面的更新显示,而不必再次向PDA发送整个网页,除非其完全改变,而是仅发送已经改变的部分。这在某些情况下实质上减少了从服务器发送的数据量。如果用户滚动到发送和存储在高速缓存中的特定网页图像90的区域91外部,则服务器获知这些图像部分未在PDA高速缓存中,因为PDA的高速缓存镜像在服务器中。服务器将发送滚动到的网页图像的新部分的数据块,还指令PDA将这些数据块存储在高速缓存中,并且是以压缩格式存储的。代表滚动到的新区域的数据块从高速缓存复制,解压缩并在屏幕上显示。
[0080] 在本发明另一个改进的更加复杂的实施例中,在PDA中装有闪存96,它能存储大量的压缩格式的后退页面或先前看过的网页94,例如存储20个网页。闪存96仅存储服务器发送到PDA的每个网页图像的下载内容,为了下载整个网页图像,一些网页图像是部分完整的,因为用户不是长时间停留或滚动到网页所有部分。服务器71也以压缩格式存储与PDA 72闪存中相同的网页图像,并且服务器知道所有这些网页是什么。例如,再次参看图16,一个网页可以是MSN,另一个可以是Yahoo,再一个可以是Hotmail,这些网页在服务器位置上存储与特定用户链接的数据库中。因此,每个用户在服务器中具有其自己的数据库,服务器中含有的所有压缩网页图像与那些PDA中存储的网页图像相同。在每次用户启动PDA的开始时,与用户相关的数据库或图像库由服务器取出,并从服务器数据库复制到服务器上运行的虚拟机23(参见图4)。因此,在每次开始时,服务器知道上次发送到PDA的20个网页的内容和名称以及每个网页图像在PDA闪存96中的存储位置,以及哪些图像块或部分先前已经下载到PDA。服务器为PDA闪存中存储的每个网页分配指针(例如,页面1、页面2,...,页面20)。因此,如果用户登录最近的或先前一次的网页,例如,Yahoo网站,服务器通过检查此特定用户的数据库知道Yahoo网页已经在上一次发送过了,并且服务器立即从因特网下载新的Yahoo网页93。服务器还取出存储在PDA中的、先前发送的Yahoo网页图像90,并执行两个网页的相关性分析,判断哪些网页图像部分或块已经改变,并需要发送到PDA,替换高速缓存中的这些部分并在显示区78显示。因此,当用户选择登录先前看过的并仍存储在PDA闪存中的网页之后,服务器仅执行相关性分析。某些网页的很多部分,例如题头或标题条,在一段时间内保持不变,就不需要再次发送相同的信息,特别是当用户频繁访问这些网站时。这将导致发送到PDA的数据节省大致20%到30%。
[0081] 在本发明的另一个实施例中,参看图17,存储在PDA高速缓存中,并且也镜像在服务器存储器中的网页图像97,仅有服务器发送的区域98和100并同时存储在PDA和服务器中。此时,当用户点击此后退页面时,服务器从因特网获取刷新的网页图像,并且,例如,如果区域98含有与PDA高速缓存中存储的刷新网页图像相同的信息,而区域100含有不同的信息,则当用户滚动到区域100时,向用户发送此不同的信息。因此,如果用户点击后退页面97,并且当前浏览显示在PDA显示屏的位置99,并且此区域99处于区域98内,即不含有任何新的信息或与PDA高速缓存中信息不同的信息,则服务器指令PDA从其高速缓存中复制占据区域99的所有数据块,解压缩并显示给用户。但是,如果用户滚动到部分在区域98和100的位置101,则服务器指令PDA读取区域98中的块10、11和12,这些块不含有任何新的信息或与PDA高速缓存中信息不同的信息,从其高速缓存中复制、解压缩和显示。接着,服务器指令PDA读取含有新信息的区域100内的块13、14和15,并用这些信息在其高速缓存中相同位置替换原来的块,从其高速缓存中复制、解压缩并显示给用户。如果用户接着滚动到位置102,此位置部分在区域98中并且也在区域103中,区域103是一个新区,此新区103的信息以前从未发送到PDA,则服务器指令PDA读取区域98中的块16、17和18,这些块不含有任何新的信息或与PDA高速缓存中信息不同的信息,从其高速缓存中复制、解压缩和显示。服务器也从以前从未发送到PDA的新区103中识别块19、20和21,并将这些块发送到PDA,指令其读取这些块并存储到高速缓存中,并且也解压缩并在PDA屏幕上显示。因此,来自区域98和103的块将显示在PDA屏幕位置102。
[0082] 根据本发明另一个实施例,PDA的高速缓存镜像到服务器,服务器决定存储在PDA高速缓存的是什么。高速缓存的容量有一个极限(大概是1MB或2MB),从而服务器有不同的算法确定网页图像存储在PDA高速缓存的优先权。因此,在本发明一个特殊实施例中,即使特定网页被访问很多次,在PDA高速缓存中存储网页图像的优先权也是先出的优先。例如,如果高速缓存仅有存储5个网页图像的容量,如图18所示,则在高速缓存105中存储的网页图像104是按照PDA接收的顺序。因此,1代表存储在PDA高速缓存中的第一个和最久的网页图像,2是在1之后接收的下一个网页图像。在储存5个网页图像(例如)的容量下,仅有组106(包括网页图像1、2、3、4和5)存储在PDA高速缓存中。在此特殊实施例中,存储在高速缓存中的网页图像可以相同或不同。当高速缓存接收网页图像5后几乎充满,并且用户点击新网页(已经或者尚未存储在高速缓存中),则服务器发送将要存储到PDA高速缓存105中的此新网页图像6。由于网页图像1是高速缓存中最久的,因此首先将其清除,为存储网页图像6提供空间。这样,网页图像2在存储于PDA高速缓存中的5个网页图像(2、3、4、5和6)的新组107中变成最久的网页图像。因此,在此特殊实施例中,PDA高速缓存仅存储从服务器接收的5个最近的网页图像。同样地,如果服务器发送新的网页图像7(已经或者尚未存储在高速缓存中),则从高速缓存中清除网页图像2,为存储网页图像7提供空间。由此形成5个网页图像3、4、5、6和7组成的新组108并存储在高速缓存中,其中有3个最久的网页图像存储在高速缓存中。
[0083] 在本发明的另一个实施例中,服务器监视并保持跟踪每个用户在一段时间内(例如,一个月)最多访问的网页,并按基于最频繁访问网站的优先权在PDA高速缓存中存储这些网页图像。因此,如果用户在一个月内最频繁地访问一个网站,则这个特殊的网页在高速缓存中保持时间最长,第二频繁访问的网站在高速缓存中保持时间第二长,如此等等。
[0084] 在本发明更复杂的实施例中,基于用户访问每个网页的频率以及每个网页最后访问的时间,为存储在PDA高速存储器中每个网页图像赋予一个权重因子。因此,服务器用于指令PDA从高速缓存中清除网页图像的标准,是由每个网页的访问频率以及多长时间以前被访问的权重因子综合确定的。
[0085] 在本发明的另一个实施例中,服务器保持跟踪用户在一段时间内(例如,一个月)最频繁浏览的网页片段或部分。在PDA中有限高速缓存中节省网页的优先权是根据用户最频繁访问的网页部分建立的。因此,如果用户频繁地访问特定网页的某个部分或某些部分,则仅有这些部分存储在高速缓存中,并且在此期间最频繁访问的在高速缓存中存储时间最长。而且,PDA高速缓存中存储的图像块或部分也取决于用户访问它们的频率。因此,如果用户非常频繁地访问Yahoo网页(例如),其长度约为10个PDA屏幕,并且如果用户在一个月内仅滚动到底部一次,但大多数时间仅有此网页给出的第一屏是用户浏览的区域,并且用户大多数时间点击到此网页以外,则由于Yahoo网页曾经滚动到底部一次,因此其全部将在PDA高速缓存中存储一段长时间,因为用户频繁访问此网页。当高速缓存变满并且服务器必须决定哪些将从高速缓存中清除,则即使网页是频繁访问的,也将清除Yahoo网页或其它网页中不频繁浏览的那些块,为高速缓存提供存储容量。因此,不但从高速缓存中清除不频繁访问的网页,也将从高速缓存中清除不经常浏览或从上次访问后已经过去一段长时间的那些网页部分,从而为PDA高速缓存提供存储容量。
[0086] 在本发明另一个实施例中,减少发送到PDA的数据量的另一个措施是限制或减小发送速度。尽管发送和接收数据的可用带宽大,但限制到较低的数据发送速度是在此实施例中减少PDA接收和发送数据量的优选方法。在一段时间内可以为用户提供全带宽的数据传输。但是,也存在在一个月的时间内(例如)必须限制用户接收的数据量的情况。假设每个用户期望每个月使用PDA平均15小时,服务器监视PDA的下载状况,如果用户在第一个3小时内的获取量明显超过所分配的总字节数的五分之一,则服务器确定此用户获取太多,并从现在开始为用户提供量减少。服务器做到这一点有两种方式,第一种是增大PDA接收网页所需的时间,这将在一段时间内减少发送到PDA的数据量。第二种是减小带宽,这也减少发送到PDA的数据量。因此,如果网页通常每秒传输15kb,则将在一段时间内每秒传输7kb。当用户接近期望的消费率时,数据传输速率将提高到正常速率。因此,用户在一段给定的时间内不会超过所分配的总字节量。