CN102027454A - 多进程浏览器体系结构 - Google Patents
多进程浏览器体系结构 Download PDFInfo
- Publication number
- CN102027454A CN102027454A CN2009801173664A CN200980117366A CN102027454A CN 102027454 A CN102027454 A CN 102027454A CN 2009801173664 A CN2009801173664 A CN 2009801173664A CN 200980117366 A CN200980117366 A CN 200980117366A CN 102027454 A CN102027454 A CN 102027454A
- Authority
- CN
- China
- Prior art keywords
- browser
- presents
- present
- view
- host
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
- G06F9/463—Program control block organisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/543—Local
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/545—Gui
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
在此描述了用于多进程浏览器体系结构的***和方法。在一个实施例中,一种用于提供多进程浏览器体系结构的***包括用于每一个浏览器实例的呈现内容区域的至少一个呈现进程;以及与一个或多个呈现引擎进程通信的至少一个浏览器进程。在另一个实施例中,一种用于提供多进程浏览器体系结构的方法包括实例化用于每一个内容区域实例的独特呈现进程,以及实例化独特浏览器进程。以这种方式,浏览器可以避免出错进程影响其它浏览器进程的结果。这可以在增强用户体验的同时提高用户效率。
Description
技术领域
本发明的实施例涉及浏览器技术。
背景技术
浏览器用于访问web内容或本地存储的内容。这样的内容的位置通常由诸如统一资源定位符(URL)的位置地址识别。浏览器可以使用URL来访问与该URL相关联的内容。用户可以通过用户接口与浏览器交互来将浏览器指向到不同的内容区域。
内容区域可以包含文本、音频、视频或其它形式的内容递送。在传统的窗口环境中,可以在多个窗口中查看数个内容区域,其中每个内容区域可以存在一个窗口。现今的浏览器允许用户在单个浏览器窗口中查看数个内容区域。在单个浏览器窗口中查看数个内容区域可以认为是标签页视图方法。利用这种方法来查看内容的浏览器可以被称为标签页视图浏览器。标签页视图浏览器可以允许用户通过对不同标签页的选择在不同的内容区域之间切换。此外,用户可以查看一个标签页中的内容区域,而其它标签页的内容正由浏览器在后台获取。
现今使用的常规浏览器包括微软INTERNET EXPLORER、MOZILLA FIREFOX、苹果SAFARI以及OPERA。用户可以使用这些浏览器中的任何浏览器来访问内容区域。通常通过在对应于浏览器的图标上点击来打开浏览器窗口。一旦打开浏览器窗口,用户可以通过浏览器的用户界面打开数个其它浏览器窗口。然而,不可以将通过用户使用浏览器的用户界面打开的新窗口作为新的操作***(0S)进程打开。此外,在遵循标签页视图方法的浏览器中,不可以将新的标签页作为新的和独特的OS进程打开。新近打开的标签页作为单个浏览器进程的一部分存在。可以通过在浏览器图标上双击仅打开浏览器的新的OS进程或浏览器进程。
由于浏览器中的所有内容区域存在于同一浏览器进程中,所以如果在浏览器中的呈现内容的任何单个标签页中出现错误,则这会影响所有其它内容区域。在一个示例中,在呈现单个内容区域的标签页中出现错误,可以导致浏览器进程的意外终止。浏览器进程的意外终止可以显著降低用户的体验。
通过呈现引擎呈现浏览器中的内容以供在显示设备上显示。现今使用的浏览器的特点可以是:具有单个呈现引擎来呈现内容区域以供显示。在标签页视图浏览器的情况下,由呈现引擎呈现的内容区域可以存在于单个内容区域或数个内容区域中。因此,单个呈现引擎可以在标签页视图浏览器中的多个标签页中呈现内容,这导致在呈现引擎和内容区域之间的一对多关系。由于在呈现引擎中的错误可以影响其相关联的所有内容区域,所以这个方法可能对用户没有用。在呈现引擎是浏览器进程的一部分的示例中,这可以致使整个浏览器进程变得无响应。无响应的浏览器进程可以阻止用户与浏览器的用户界面组件交互。此外,通常浏览器的用户界面不会向用户提供对浏览器的无响应状态的指示。这可以影响用户体验,并且可以显著降低用户的任务的效率。由于用户与之交互的内容现可以是现在无响应的,这导致可能损失用户在与该内容交互时已完成的工作,所以可以发生降低用户的任务的效率。
需要阻止出错的浏览器进程影响其它浏览器进程,从而提高用户体验的质量和用户效率的***和方法。
发明内容
本发明的实施例涉及用于多进程浏览器体系结构的***和方法。在一个实施例中,一种用于提供多进程浏览器体系结构的***包括用于每一个浏览器实例的呈现内容区域的至少一个呈现进程;以及与一个或多个呈现引擎进程通信的至少一个浏览器进程。
在另一个实施例中,一种用于提供多进程浏览器体系结构的方法包括实例化用于每一个内容区域实例的独特呈现进程,以及实例化独特浏览器进程。
以这种方式,浏览器可以避免出错进程或多个出错进程影响其它浏览器进程的结果。这可以在增强用户体验的同时提高用户效率。
将在下面参考附图详细描述实施例的进一步实施例、特征和优势以及各种实施例的结构和操作。
附图说明
将参考附图描述本发明的实施例。在附图中,相同的参考数字可以指示相同或功能上相似的元素。元素在其中首次出现的附图通常由相应参考数字中的最左边数字指示。
图1是根据一个实施例的多进程浏览器体系结构的体系结构图。
图2A是图示了根据一个实施例的多进程浏览器体系结构中的各种线程的图。
图2B是图示了根据一个实施例的多进程浏览器体系结构的运作的体系结构图。
图3是图示了根据一个实施例的可以用于为新近实例化的标签页创建呈现视图的方法的流程图。
图4是图示了根据一个实施例的可以用于为新近实例化的弹出窗口创建呈现视图的方法的流程图。
图5是图示了根据一个实施例的可以用于终止死锁的呈现引擎进程的方法的流程图。
图6是图示了根据一个实施例的可以用于重新创建无响应的呈现引擎进程的方法的流程图。
具体实施方式
本发明的实施例涉及用于多进程浏览器体系结构的***和方法。在本发明的实施例中,提高了用户的体验的质量和用户效率。
虽然在此关于用于特定应用的说明性实施例描述了本发明的实施例,但是应当理解的是,本发明不限于此。本领域技术人员使用在此提供的教导将认识到在本发明范围内的额外修改、应用和实施例以及本发明在其中将有重大功用的额外领域。
在此使用的术语“URL”是指内容地址。URL可以寻址跨诸如因特网的一个或多个网络存储的内容。在另一个示例中,URL可以是与本地存储的文件的位置相对应的路径。这些示例是说明性的,并且并不意在限制定义。
在此使用的术语“内容区域”是指可以显示通过URL寻址的内容的用户界面显示的区域。如一个说明性示例,在内容区域中显示的内容可以包括例如网页、应用、文档、视频、多媒体内容、未来利用的内容机制或以上的任何组合。这些示例是说明性的,并且并不意在限制定义。
使用的术语“线程”是指执行指令的序列,其可以独立于其它线程运行,但是可以与其它线程直接共享数据。
将对本发明的实施例的详细描述分成数个部分。第一部分关于图1、2A和2B描述了根据本发明的一个实施例的多进程浏览器体系结构。第二部分关于图3至图6描述了根据本发明的实施例的各种方法,其可以在操作多进程浏览器体系结构时使用。最后部分描述了多进程浏览器体系结构的一个实施例的示例操作。
***
本部分关于图1-2B描述了根据一个实施例的多进程浏览器体系结构。
图1是根据一个实施例的多进程浏览器体系结构的体系结构图。图1包含***100。
可以在能够支持浏览的任何设备上实现***100。这样的设备可以包括但不限于具有用于执行和存储指令的处理器和存储器的设备。这样的设备可以包括软件、固件和硬件。软件可以包括一个或多个应用和操作***。硬件可以包括但不限于处理器、存储器和用户界面显示。可以使用可选的输入设备,诸如鼠标、触敏屏或任何未来开发的交互方法。
多进程浏览器体系结构100可以联系远程服务器(未示出)并且下载数据以显示。在示例中,数据可以被表示为超文本标记语言、动态超文本标记语言、可扩展标记语言、图像数据、视频或声音。在另一个示例中,多进程浏览器体系结构100可以根据AJAX(异步JavaScript和XML)框架下载并执行脚本。AJAX框架从服务器异步传送和接收数据以在不重复加载内容区域的情况下更新内容区域。
多进程浏览器体系结构100包括通过进程间通信130耦接到一个或多个呈现器120A-N的浏览器进程110。浏览器进程110可以通过诸如因特网的一个或多个网络与一个或多个web服务器(未示出)通信。浏览器进程110可以进一步与输入(未示出)通信以允许用户输入数据、输入命令、或向浏览器进程110提供其它控制信息。呈现引擎进程120A-N可以呈现数据以在运行浏览器进程110的客户端设备处显示。
浏览器进程110和呈现引擎进程120A-N可以通过进程间通信130通信。在一个实施例中,进程间通信130可以包括诸如命名管道的进程间通信方法。
命名管道是本领域技术人员已知的一种进程间通信形式。命名管道可以允许两个进程相互通信。命名管道可以在不引入额外线程的情况下允许进程间通信。此外,命名管道可以允许用户控制对命名管道的构建。控制对命名管道的构建可以允许用户将安全限制施加于通过命名管道的通信,以及控制命名管道的整体性能。
图2A是图示了涉及***100的操作的各种线程的图。主浏览器线程220可以包括一个或多个呈现视图寄主218。I/O(输入/输出)线程230可以包括资源调度器寄主228。主呈现器线程254可以包括呈现进程242,以及呈现线程256可以包括一个或多个呈现视图246。呈现进程寄主214和呈现进程242可以通过进程间通信130通信。
进程间通信130可以将消息作为邻接的字节数组通信。可以连续通信邻接的字节数组。可以在被传送的每一个消息前加上头结构前缀。头结构可以定义消息类型、包含在消息中的数据的长度以及路由标识符。路由标识符可以用于在接收进程内为消息指定目的地。消息可以例如在内容区域的实例化或与实例化的内容区域交互期间,在***100的不同组件之间通信。
图2B是图示了***100的组件的运作的详细体系结构图。
图2B图示了浏览器进程110和多个呈现引擎进程120A-N。在一个实施例中,浏览器进程110可以进一步包括呈现视图寄主218、呈现进程寄主214、资源调度器寄主228和通道222。而且,通道222可以包括过滤器224。呈现进程寄主214进一步包括浏览器状态212。在下面的部分中,进一步描述***100中的各种线程。
主浏览器线程220
主浏览器线程220可以包括呈现视图寄主218和呈现进程寄主214。
呈现视图寄主218可以管理呈现视图246。呈现视图寄主218可以通过相应的呈现进程寄主214通信消息。呈现进程寄主214可以将该消息通信到呈现进程242。呈现进程242然后可以将同一消息通信到在呈现引擎进程120A-N中的相应的呈现视图246。在内容区域的实例化或与实例化的内容区域交互期间可能需要通信这样的消息。以这种方式,呈现视图寄主218可以与呈现视图246交互,并且管理呈现视图246。在一个实施例中,多个呈现视图寄主214可以管理多个呈现视图246。
呈现进程寄主214可以为多个呈现引擎进程120A-N中的每一个存在。呈现进程寄主214可以管理浏览器状态212,以及与呈现引擎进程120A-N通信。对应于每一个呈现视图246的呈现进程寄主214维护主浏览器线程220中的呈现视图寄主218。
浏览器状态212可以由浏览器进程110维护。浏览器状态212可以包括呈现引擎进程120A-N的会话信息。如果呈现引擎进程120A-N在其操作时经历错误或需要终止,则浏览器进程110可以能够重新创建出错的呈现引擎进程120A-N,并且重新存储其在浏览器状态212中存储的会话信息。浏览器状态212可以包括可以在用户浏览不同的内容区域时累积的会话cookie或会话历史。作为一个示例,会话cookie可以由web服务器使用来区分用户,并且在导航期间维护与用户有关的数据。会话历史可以包括先前访问过的内容区域和其由呈现引擎进程120A-N呈现的各自状态的列表。对于呈现引擎进程120A-N呈现的内容区域的会话历史可以包括在表格字段中输入的单个或多个用户值。额外地,会话历史可以存储内容区域的滚动位置。
输入/输出(I/O)线程230
输入/输出(I/O)线程230可以包括资源调度器寄主228和通道222。通道222可以进一步包括过滤器224。I/O(输入/输出)线程230可以由浏览器进程110使用来与呈现引擎进程120A-N通信。而且,与主浏览器线程220相关联的I/O线程230可以将消息从浏览器进程110通信到一个或多个呈现视图246。对与浏览器进程110中的内容区域相对应的内容的资源请求可以由I/O线程230通信。
通道222可以将消息通信到主浏览器线程220。参考图2B,通道222可以驻存于I/O线程230中。通道220可以用作在呈现视图246与主浏览器线程220之间的代理。通道代理226可以在通道222和呈现进程寄主214之间通信消息。
可以驻存于通道222中的过滤器224可以由呈现进程寄主214在通道中构建。过滤器224可以拦截来自呈现引擎进程120A-N的资源请求消息,并且可以将它们直接转送给资源调度器寄主228。
以这种方式,对内容的资源请求可以由I/O线程230处理,并且这可以减少主浏览器线程220需要完成的资源处理量。
主呈现器线程254
主呈现器线程254可以包括呈现进程242。呈现进程242可以进一步包括呈现器状态244。
呈现进程242可以包括在每一个呈现器进程120A-N中。呈现进程242可以管理与浏览器进程110的通信,以及还可以维护呈现器状态244。每一个呈现进程242可以与一个或多个呈现视图246通信。
呈现器状态244可以维护与相应的呈现引擎进程120A-N的状态有关的信息。呈现器状态244可以包括关于相应的呈现引擎进程120A-N是否变得无响应或其是否正请求***资源的信息。
呈现线程256
呈现线程256可以包括资源调度器250、web工具包(webkit)252和呈现视图246。
呈现视图246可以对应于浏览器中的独特内容区域。作为一个示例,而并不意在限制本发明,每一个新的窗口或标签页实例化可以创建新的呈现引擎进程120A-N,并且为该进程创建呈现视图246。作为一个示例,而并不意在限制本发明,内容区域可以是标签页视图浏览器中的标签页。在另一个实施例中,呈现视图246可以包括超文本标记语言(HTML)解析器和JavaScript解释器。HTML解析器对本领域技术人员而言是已知的,并且可以用于识别HTML标记标签以适当地呈现内容。JavaScript解释器可以用于识别可以是内容的一部分的JavaScript。
呈现视图246可以由呈现进程242管理。每一个呈现视图246由视图ID 248来识别。视图ID(视图标识符)248可以用于识别特定呈现器进程120A-N中的呈现视图246的不同实例。视图ID 248在呈现器进程120A-N的实例中可以是独特的。为了从浏览器进程110识别呈现视图242,除视图ID 248外,可以需要呈现进程寄主214。从浏览器进程110到特定内容区域的通信可以通过呈现视图寄主218来完成。
资源调度器250可以包括在每一个呈现进程120A-N中。资源调度器250可以与web工具包252通信。资源调度器250可以处理对与浏览器进程110中的内容区域相对应的内容的资源请求。Web工具包252可以包括在每一个呈现进程120A-N中。Web工具包252可以以数据结构的形式存储并管理浏览器进程110的内容区域中的内容。
看门狗线程262
看门狗线程262可以包括在每一个呈现引擎进程120A-N中。看门狗线程262可以检测出错的呈现引擎进程120A-N,并且可以终止相应的呈现引擎进程120A-N。
在一个实施例中,浏览器110可以响应于关闭可能是无响应的标签页的用户请求,将消息发送给看门狗线程262。这样的消息可以允许看门狗线程262终止呈现引擎进程120A-N。
内容区域共享呈现引擎进程
在例如标签页或窗口的不同内容区域之间可能需要共享呈现引擎进程120A-N中的任何一个。这可以在父亲内容区域实例化其可能希望与之通信的新的孩子窗口时发生。该通信可以借助于句柄来完成。作为一个示例,而并不意在限制本发明,句柄可以是使父亲内容区域能够建立与孩子窗口的通信的标识符。为了呈现内容,孩子内容区域可以使用呈现父亲内容区域的呈现引擎进程120A-N的同一实例。在可能需要将新的孩子内容区域实例化为新的窗口的情况下,呈现视图246可以将信息通信到呈现视图寄主218。呈现视图寄主218然后可以为孩子内容区域实例化新的标签页或窗口。对应于父亲内容区域的呈现视图246然后可以将对应于孩子内容区域的新呈现视图246的标识符传递给呈现视图寄主218。这可以允许孩子内容区域使用呈现父亲内容区域的呈现引擎进程120A-N的同一实例。
确定内容区域优先级
作为一个示例,呈现引擎进程120A-N的任何一个实例可以在给定时间与活动内容区域相关联。活动内容区域可以是指用户当前正与之交互的任何内容区域。活动内容区域的一个示例可以是前景标签页或前景窗口。在一个实施例中,并不意在限制本发明,可以将呈现背景内容区域的呈现引擎进程120A-N作为低优先级进程对待。低优先级进程在分配***资源中可以获得较低优先权。此外,低优先级进程可以比前景呈现器进程更可能使其存储器换出。存储器交换是指本领域技术人员通常使用的方法。作为一个示例,而并不意在限制本发明,存储器交换使操作***能够执行比其主存储器更大的程序以及操纵比其主存储器更大的数据文件。操作***可以将尽可能多的数据存储到主存储器中,并且将其余数据留在盘片上。当操作***需要来自盘片的数据时,其可以用盘片上的部分数据替换主存储器中的部分数据,所述部分数据在本领域中俗称页或段。
操作
本部分描述了可以在操作图1-2B中描述的***时使用的各种方法。为了清晰起见,关于***100描述了方法,然而,并不意在将方法限制到***100。
图3是图示了根据一个实施例的可以用于为新近实例化的标签页创建呈现视图的方法300的流程图(步骤302-310)。方法300以用户通过在相应图标上点击来实例化浏览器进程110开始(步骤302)。浏览器进程110实例化新的呈现引擎进程120A来呈现可以由浏览器进程110寻址的内容(步骤304)。浏览器进程110检查是否实例化了新的标签页(步骤306)。如果尚未实例化新的标签页,则方法300返回。如果浏览器进程110确定实例化了新的标签页,则呈现视图寄主218识别呈现进程寄主214以创建呈现视图246(步骤308)。呈现进程寄主214然后创建呈现视图246(步骤310)。以这种方式,可以创建用于用户实例化的标签页的新的呈现视图。
图4是图示了根据一个实施例的可以用于为待被实例化的弹出窗口创建呈现视图的方法400的流程图(步骤402-412)。方法400以浏览器进程110检查内容区域是否请求了弹出窗口的实例化开始(步骤402)。如果浏览器进程110中的内容区域尚未请求实例化弹出窗口,则方法400返回。如果浏览器进程110中的内容区域实例化了弹出,则对应于内容的呈现视图246将消息发送给相应的呈现进程寄主214以为弹出窗口实例化新的呈现视图246(步骤404)。使用呈现进程寄主214来创建呈现视图246(步骤406)。以这种方式,可以创建用于弹出窗口的新的呈现视图。
图5是图示了根据一个实施例的可以用于终止死锁的呈现引擎进程120A-N的方法500的流程图(步骤502-506)。方法500以浏览器进程110检查看门狗线程262是否检测到呈现引擎进程120A-N的死锁开始(步骤502)。如果看门狗线程262尚未检测到呈现引擎进程死锁,则方法500返回。如果看门狗线程262检测到呈现引擎进程死锁,则通知用户批准终止死锁的呈现引擎进程120A-N(步骤504)。看门狗线程262检查用户是否批准了终止死锁的呈现引擎进程120A-N(步骤506)。如果用户尚未批准终止死锁的呈现引擎进程,则方法500返回。如果用户批准了终止死锁的呈现引擎进程120A-N,则看门狗线程262终止死锁的呈现引擎进程120A-N(步骤508)。以这种方式,看门狗线程262终止死锁的呈现引擎进程120A-N。
图6是图示了根据一个实施例的可以用于重新创建无响应的呈现引擎进程的方法600的流程图(步骤602-606)。方法600以浏览器进程110检查呈现引擎进程120A是否正在响应开始(步骤602)。如果呈现引擎进程120A正在响应,则方法600返回。如果呈现引擎进程120A没有响应,则浏览器进程110创建新的呈现引擎进程(步骤604)。浏览器进程110然后恢复可以包括在浏览器状态212中的会话历史(步骤606)。以这种方式,浏览器进程110可以重新创建无响应的呈现引擎进程120A。
示例操作
本部分描述了多进程浏览器体系结构100的一个实施例的示例操作。尽管关于***100描述了接下来的示例操作,但是不将其限制在***100的实施例。
在这个示例中,用户决定从在线购物商店亚马逊购买书籍。为了访问亚马逊提供的内容,用户可以首先在其桌面上的浏览器图标上点击。作为一个示例,而并不意在限制本发明,该浏览器图标对应于标签页视图浏览器。在浏览器图标上点击可以启动浏览器进程110。由于用户需要看见屏幕上的内容,所以浏览器进程110可以实例化呈现引擎进程120A。在大部分情况下,浏览器具有被称为“主页”的默认页面,其中浏览器在其被启动后导航到该默认页面。浏览器进程110可以创建新的呈现视图寄主218。呈现视图寄主218可以识别新的呈现进程寄主214。呈现进程寄主214可以创建新的呈现视图246。呈现视图246呈现浏览器的主页提供的内容。
为了访问亚马逊以购买书籍,用户决定在浏览器窗口内打开新的标签页。在用户提供打开新的标签页的指示后,浏览器进程110创建新的呈现引擎进程120B,并且实例化标签页。浏览器进程110可以创建新的呈现视图寄主218。呈现视图寄主218可以识别新的呈现进程寄主214。呈现进程寄主214可以为与该标签页有关的内容创建新的呈现视图246。用户然后可以在浏览器的地址栏中键入URL“http://www.amazon.com”,并且然后可以按下键盘上的“Enter”键以导航到“http://www.amazon.com”提供的内容。呈现视图246然后可以呈现“http://www.amazon.com”提供的内容。在图3中图示的方法300中描述了响应于新的标签页实例化对呈现视图的创建。
在呈现视图246呈现了“http://www.amazon.com”的所有内容后,用户开始查看内容,并且通过在亚马逊主页上提供的“书籍”链接上点击决定导航到亚马逊书籍商店。在用户在“书籍”链接上点击后,他可以离开“http://www.amazon.com”导航到具有与书籍有关的不同内容的页面。尽管用户可以导航离开页面,但是可以由同一呈现视图246呈现内容,并且不需要为新的内容实例化新的呈现视图。呈现视图246然后呈现亚马逊网站上的与“书籍”有关的页面的内容。
亚马逊可能当前正在运行针对某些书籍的促销价格,并且网站可能希望生成弹出窗口以吸引用户的对降价促销的注意。在亚马逊内容区域待生成弹出窗口时,可以将消息从与当前在窗口中的内容相对应的呈现视图246发送到相应的呈现进程寄主214。呈现进程寄主214然后创建呈现视图246的新的实例来呈现对应于弹出窗口的内容。因此,可以向用户显示弹出窗口。在图4中图示的方法400中描述了响应于新的标签页实例化对呈现视图的创建。
用户可能希望为“书籍”页面上的感兴趣的书籍而继续浏览亚马逊,然而,“书籍”页面提供的某些内容致使呈现页面的标签页变得无响应。该无响应行为可以由负责呈现“书籍”页面提供的内容的无响应的呈现引擎进程120B引起。例如,为了警示用户标签页的该无响应状态,浏览器进程110可以显示询问用户是否希望关闭标签页的提示。由于会话历史和标签页上呈现的内容的滚动位置已由浏览器进程110保存在浏览器状态212中,所以尽管用户决定关闭标签页以终止呈现器进程120B,但是浏览器进程110可以用在呈现引擎进程120B变得无响应时存在的内容重新创建关闭的标签页。在图5中的方法500中描述了对死锁的呈现引擎进程的终止。还在图6中图示的方法600中描述了对无响应的呈现引擎进程的重新创建。
由于呈现引擎进程120B没有被在浏览器中打开的任何其它标签页使用,所以呈现引擎进程120B中的任何错误或看门狗线程262或用户对呈现引擎进程120B的终止不可能影响其它呈现引擎进程120A或浏览器进程110。
以这种方式,浏览器可以避免出错的进程或多个出错的进程影响其它浏览器进程的结果。这可以在增强用户体验的同时提高用户效率。
结论
应当理解,具体实施方式部分而不是发明内容和摘要部分意在用于解释权利要求。发明内容和摘要部分可以阐明发明人考虑的本发明的一个或多个而非所有的示例性实施例,因此发明内容和摘要部分并不意在以任何方式来限制本发明和所附的权利要求。
在上面借助于说明指定的功能及其关系的实现的功能构造块来描述了本发明。在此为了便于描述,任意地限定了这些功能构造块的边界。可以定义替选边界,只要所述指定的功能及其关系被适当地执行。
特定实施例的前述描述如此充分地揭示了本发明的一般特性,使得其他人可以在不背离本发明的一般思想的情况下,通过应用在本领域的技术内的知识而容易地修改和/或调整本发明的一般特性以用于这样的特定实施例的各种应用,而不用进行过度的实验。因此,基于在此提供的教导和指导,这样的调整和修改意在在所公开的实施例的等同物的含义和范围内。应当明白的是,在此的措词或术语用于描述而非限制的目的,因此本说明书的术语或措词应当由技术人员根据所述教导和指导来解释。
本发明的宽度和范围不应当由上述示例性实施例的任何一个限制,而是应当仅根据所附权利要求及其等同物来限定。
Claims (18)
1.一种用于实例化浏览器的内容区域的基于计算机的***,包括:
一个或多个处理器;
用于每一个浏览器实例的呈现内容区域的至少一个呈现引擎进程;以及
与一个或多个呈现引擎进程通信的至少一个浏览器进程,
其中所述浏览器进程和所述呈现引擎进程被实现在所述一个或多个处理器上。
2.如权利要求1所述的***,其中所述浏览器进程包括呈现视图寄主。
3.如权利要求2所述的***,其中所述呈现视图寄主为所述至少一个呈现引擎进程中的每一个实例化至少一个呈现视图。
4.如权利要求3所述的***,其中所述呈现视图呈现内容区域中的内容。
5.如权利要求4所述的***,其中所述呈现视图包括视图标识符。
6.如权利要求1所述的***,其中所述呈现引擎进程包括web工具包。
7.如权利要求1所述的***,其中所述呈现引擎进程包括看门狗线程。
8.如权利要求1所述的***,进一步包括实例化呈现进程的呈现进程寄主。
9.如权利要求7所述的***,其中所述呈现进程包括呈现器状态。
10.如权利要求7所述的***,其中所述呈现进程寄主包括浏览器状态。
11.如权利要求1所述的***,进一步包括用于向所述浏览器进程提供资源的资源调度器寄主。
12.如权利要求1所述的***,其中所述呈现引擎包括向所述资源调度器寄主提供资源请求的资源调度器。
13.一种用于实例化浏览器的内容区域的计算机实现的方法,包括:
(a)为每一个内容区域实例实例化独特的呈现引擎进程;以及
(b)实例化独特的浏览器进程,
其中,步骤(a)-(b)中的至少一个被实现在一个或多个处理器上。
14.如权利要求13所述的方法,进一步包括:
为所述至少一个呈现引擎进程中的每一个实例化至少一个呈现视图。
15.如权利要求14所述的方法,进一步包括:
使用所述呈现视图呈现所述内容区域实例中的内容。
16.如权利要求13所述的方法,进一步包括:
使用呈现进程寄主实例化呈现进程。
17.如权利要求13所述的方法,进一步包括:
使用资源调度器寄主向所述浏览器进程提供一个或多个资源。
18.如权利要求17所述的方法,进一步包括:
使用资源调度器向所述资源调度器寄主提供一个或多个资源请求。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US5271908P | 2008-05-13 | 2008-05-13 | |
US61/052,719 | 2008-05-13 | ||
PCT/US2009/002917 WO2009139845A1 (en) | 2008-05-13 | 2009-05-12 | Multi-process browser architecture |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102027454A true CN102027454A (zh) | 2011-04-20 |
Family
ID=40872467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009801173664A Pending CN102027454A (zh) | 2008-05-13 | 2009-05-12 | 多进程浏览器体系结构 |
Country Status (8)
Country | Link |
---|---|
US (4) | US8307300B1 (zh) |
EP (1) | EP2304566A1 (zh) |
KR (2) | KR20160067200A (zh) |
CN (1) | CN102027454A (zh) |
AU (1) | AU2009246884B2 (zh) |
BR (1) | BRPI0911981B1 (zh) |
CA (1) | CA2723274C (zh) |
WO (1) | WO2009139845A1 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591711A (zh) * | 2011-12-29 | 2012-07-18 | 奇智软件(北京)有限公司 | 一种窗口防假死方法和装置 |
CN102663318A (zh) * | 2012-03-22 | 2012-09-12 | 百度在线网络技术(北京)有限公司 | 浏览器及客户端 |
CN102915251A (zh) * | 2012-03-08 | 2013-02-06 | 北京金山安全软件有限公司 | 一种多页面浏览器处理消息的方法和装置 |
CN103019832A (zh) * | 2011-09-20 | 2013-04-03 | 百度在线网络技术(北京)有限公司 | 浏览器的切换控制方法及装置 |
CN103176775A (zh) * | 2011-12-22 | 2013-06-26 | 腾讯科技(深圳)有限公司 | 一种实现网页应用程序本地化的方法和装置 |
CN103713910A (zh) * | 2012-09-28 | 2014-04-09 | 腾讯科技(深圳)有限公司 | 一种检测多核浏览器内核的方法和装置 |
CN103793282A (zh) * | 2012-11-02 | 2014-05-14 | 阿里巴巴集团控股有限公司 | 一种浏览器及其结束标签页的方法 |
CN103955388A (zh) * | 2014-04-29 | 2014-07-30 | 百度在线网络技术(北京)有限公司 | 客户端的冷启动方法及装置 |
CN104035815A (zh) * | 2011-12-29 | 2014-09-10 | 北京奇虎科技有限公司 | 一种窗口防假死方法和装置 |
Families Citing this family (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8307300B1 (en) * | 2008-05-13 | 2012-11-06 | Google Inc. | Content resizing and caching in multi-process browser architecture |
US8819585B2 (en) * | 2008-10-27 | 2014-08-26 | Microsoft Corporation | Child window surfacing and management |
US9232011B2 (en) * | 2010-03-26 | 2016-01-05 | Microsoft Technology Licensing, Llc | Tracking navigation flows within the same browser tab |
US9378193B2 (en) * | 2010-08-16 | 2016-06-28 | Rakuten, Inc. | Web management device, web management method, web management program, computer readable recording medium for recording said program, and web system |
JP2012058856A (ja) * | 2010-09-06 | 2012-03-22 | Sony Corp | 情報処理装置、情報処理方法及び情報処理プログラム |
US8667505B2 (en) | 2010-09-14 | 2014-03-04 | Microsoft Corporation | Message queue management |
CN102467565B (zh) * | 2010-11-19 | 2016-05-11 | 北京奇虎科技有限公司 | 一种浏览器内核切换的方法 |
US8589950B2 (en) * | 2011-01-05 | 2013-11-19 | Blackberry Limited | Processing user input events in a web browser |
CN102436457B (zh) * | 2011-02-18 | 2014-04-16 | 奇智软件(北京)有限公司 | 一种分配浏览器进程的方法及其设备 |
US8832690B1 (en) * | 2011-06-21 | 2014-09-09 | Google Inc. | Multi-threaded virtual machine processing on a web page |
US9928083B2 (en) * | 2011-07-08 | 2018-03-27 | Microsoft Technology Licensing, Llc | Tab trimming |
US9563971B2 (en) * | 2011-09-09 | 2017-02-07 | Microsoft Technology Licensing, Llc | Composition system thread |
US8700990B1 (en) * | 2011-09-20 | 2014-04-15 | Google Inc. | PDF plugin to view any page |
US9384711B2 (en) * | 2012-02-15 | 2016-07-05 | Microsoft Technology Licensing, Llc | Speculative render ahead and caching in multiple passes |
CN102622439B (zh) * | 2012-03-06 | 2014-06-11 | 北京奇虎科技有限公司 | 一种在浏览器中展示文档的方法及装置 |
CN103377228B (zh) * | 2012-04-25 | 2016-09-07 | 阿里巴巴集团控股有限公司 | 一种用于浏览器的页面内容呈现方法及装置 |
US9286122B2 (en) | 2012-05-31 | 2016-03-15 | Microsoft Technology Licensing, Llc | Display techniques using virtual surface allocation |
US9230517B2 (en) | 2012-05-31 | 2016-01-05 | Microsoft Technology Licensing, Llc | Virtual surface gutters |
US9235925B2 (en) | 2012-05-31 | 2016-01-12 | Microsoft Technology Licensing, Llc | Virtual surface rendering |
US9177533B2 (en) | 2012-05-31 | 2015-11-03 | Microsoft Technology Licensing, Llc | Virtual surface compaction |
US9690748B1 (en) * | 2012-07-02 | 2017-06-27 | Amazon Technologies, Inc. | Delivering notifications to background applications |
US10021052B1 (en) | 2012-09-22 | 2018-07-10 | Sitting Man, Llc | Methods, systems, and computer program products for processing a data object identification request in a communication |
US9996631B2 (en) * | 2012-09-25 | 2018-06-12 | Opera Software As | Information management and display in web browsers |
US9070211B1 (en) * | 2012-10-18 | 2015-06-30 | Google Inc. | Webview tag for a sandboxed multiprocess browser |
US9367211B1 (en) * | 2012-11-08 | 2016-06-14 | Amazon Technologies, Inc. | Interface tab generation |
KR101401948B1 (ko) * | 2012-11-19 | 2014-05-30 | 한국인터넷진흥원 | 대규모 웹사이트 방문점검 방법 |
KR101388962B1 (ko) * | 2012-11-19 | 2014-04-24 | 한국인터넷진흥원 | 대규모 웹사이트 고속 점검방법 |
US9977683B2 (en) * | 2012-12-14 | 2018-05-22 | Facebook, Inc. | De-coupling user interface software object input from output |
US11050851B2 (en) * | 2013-04-30 | 2021-06-29 | Adobe Inc. | Drag-and-drop clipboard for HTML documents |
US9542906B2 (en) | 2013-05-10 | 2017-01-10 | Microsoft Technology Licensing, Llc | Shared compositional resources |
US20140344729A1 (en) * | 2013-05-15 | 2014-11-20 | Microsoft Corporation | Primitive-based composition |
US10803232B2 (en) | 2013-06-06 | 2020-10-13 | International Business Machines Corporation | Optimizing loading of web page based on aggregated user preferences for web page elements of web page |
WO2014200896A1 (en) * | 2013-06-12 | 2014-12-18 | Agco Coporation | Method and system having an intermediate holding vessel for combining chemical injection substances for a spray system |
US9307007B2 (en) | 2013-06-14 | 2016-04-05 | Microsoft Technology Licensing, Llc | Content pre-render and pre-fetch techniques |
CN104376016B (zh) * | 2013-08-15 | 2019-06-07 | 腾讯科技(深圳)有限公司 | 一种浏览器中跨进程渲染方法和装置 |
CN103559097B (zh) * | 2013-10-18 | 2017-06-09 | 北京奇虎科技有限公司 | 一种浏览器中进程间通信的方法、装置和浏览器 |
CN103544068B (zh) * | 2013-10-18 | 2017-05-24 | 北京奇虎科技有限公司 | 一种浏览器中进程间通信的方法、装置和浏览器 |
US9692633B2 (en) | 2013-11-15 | 2017-06-27 | Sap Se | Role-based resource navigation |
US10282395B2 (en) * | 2013-11-15 | 2019-05-07 | Sap Se | Handling timer-based resizing events based on activity detection |
CN103647768A (zh) * | 2013-12-06 | 2014-03-19 | 北京奇虎科技有限公司 | 游戏客户端及其实现方法 |
CN104809122B (zh) * | 2014-01-24 | 2019-03-26 | 北京猎豹移动科技有限公司 | 一种访问网页的方法及装置 |
JP6703370B2 (ja) * | 2014-03-14 | 2020-06-03 | 国立大学法人 東京大学 | ドキュメント提供システム、提供側装置、表示側装置、及びプログラム |
EP3132559B1 (en) * | 2014-04-14 | 2019-08-28 | McAfee, LLC | Automatic log-in and log-out of a session with session sharing |
US9747165B1 (en) * | 2014-04-23 | 2017-08-29 | Google Inc. | Self-recovering application |
US9652130B1 (en) * | 2014-04-23 | 2017-05-16 | Google Inc. | Auto-sizing an untrusted view |
US20150339033A1 (en) * | 2014-05-21 | 2015-11-26 | Facebook, Inc. | Asynchronous Execution of Tasks for a GUI |
US9619012B2 (en) * | 2014-05-30 | 2017-04-11 | Apple Inc. | Power level control using power assertion requests |
US9396089B2 (en) | 2014-05-30 | 2016-07-19 | Apple Inc. | Activity tracing diagnostic systems and methods |
US10353991B2 (en) | 2014-09-09 | 2019-07-16 | Intentional Software Corporation | Generating a visual description tree based on a layout interruption record |
US10430500B2 (en) | 2014-09-09 | 2019-10-01 | Intentional Software Corporation | Detecting and animating a change in position of a visual layout node of a visual layout tree |
US10387540B2 (en) * | 2014-09-09 | 2019-08-20 | Intentional Software Corporation | Generating a visual layout tree using caching techniques |
US10402478B2 (en) | 2014-09-09 | 2019-09-03 | Intentional Software Corporation | Linking visual layout nodes of a visual layout tree using positioning pointers |
US11003833B2 (en) | 2014-09-09 | 2021-05-11 | Microsoft Technology Licensing, Llc | Adding visual description nodes to a visual description tree during layout |
US10387547B2 (en) | 2014-09-09 | 2019-08-20 | Intentional Software Corporation | Layout engine for creating a visual layout tree for a document |
TW201616846A (zh) * | 2014-10-16 | 2016-05-01 | Walton Advanced Eng Inc | 一種引導裝置之執行方法 |
US10136650B2 (en) * | 2015-03-18 | 2018-11-27 | Umm-Al-Qura University | Repellant composition for an anti-repellant fabric and a device to evaluate the same |
JP6658136B2 (ja) * | 2016-03-14 | 2020-03-04 | コニカミノルタ株式会社 | 描画処理装置、画像処理装置、描画処理方法及び描画処理プログラム |
US10938915B1 (en) * | 2016-08-16 | 2021-03-02 | United Services Automobile Association (Usaa) | Session data isolation and management |
CN107067244B (zh) | 2016-11-03 | 2020-09-29 | 阿里巴巴集团控股有限公司 | 业务实现方法、支付方法、业务实现装置及支付服务端 |
US11122013B2 (en) * | 2017-02-16 | 2021-09-14 | Emerald Cactus Ventures, Inc. | System and method for encrypting data interactions delineated by zones |
US11165825B2 (en) * | 2017-02-16 | 2021-11-02 | Emerald Cactus Ventures, Inc. | System and method for creating encrypted virtual private network hotspot |
US11165751B2 (en) * | 2017-02-16 | 2021-11-02 | Emerald Cactus Ventures, Inc. | System and method for establishing simultaneous encrypted virtual private networks from a single computing device |
CN109101298B (zh) * | 2017-06-20 | 2021-09-07 | 武汉斗鱼网络科技有限公司 | Windows跨进程窗口管理方法、存储介质、电子设备及*** |
US20190347315A1 (en) * | 2018-05-08 | 2019-11-14 | International Business Machines Corporation | Methods and systems for rendering web pages with restricted features |
US10684871B2 (en) | 2018-06-03 | 2020-06-16 | Apple Inc. | Multi-process model for cross-platform applications |
US10474479B1 (en) | 2018-06-03 | 2019-11-12 | Apple Inc. | Preventing framework conflicts for multi-OS applications |
US10671236B2 (en) * | 2018-09-20 | 2020-06-02 | Salesforce.Com, Inc. | Stateful, contextual, and draggable embedded widget |
US11334385B2 (en) * | 2020-02-26 | 2022-05-17 | The Toronto-Dominion Bank | Browser-based processing of data |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1835907A (zh) * | 2003-10-24 | 2006-09-20 | 罗姆两合公司 | 可聚合多羟基化合物的制备方法 |
US7343419B1 (en) * | 2000-10-05 | 2008-03-11 | Aol Llc | Rerouting media to selected media applications |
Family Cites Families (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5764235A (en) * | 1996-03-25 | 1998-06-09 | Insight Development Corporation | Computer implemented method and system for transmitting graphical images from server to client at user selectable resolution |
US5819263A (en) | 1996-07-19 | 1998-10-06 | American Express Financial Corporation | Financial planning system incorporating relationship and group management |
US6011537A (en) * | 1997-01-27 | 2000-01-04 | Slotznick; Benjamin | System for delivering and simultaneously displaying primary and secondary information, and for displaying only the secondary information during interstitial space |
US6212560B1 (en) * | 1998-05-08 | 2001-04-03 | Compaq Computer Corporation | Dynamic proxy server |
US6820235B1 (en) | 1998-06-05 | 2004-11-16 | Phase Forward Inc. | Clinical trial data management system and method |
US6456305B1 (en) * | 1999-03-18 | 2002-09-24 | Microsoft Corporation | Method and system for automatically fitting a graphical display of objects to the dimensions of a display window |
US7028264B2 (en) * | 1999-10-29 | 2006-04-11 | Surfcast, Inc. | System and method for simultaneous display of multiple information sources |
US6742043B1 (en) * | 2000-01-14 | 2004-05-25 | Webtv Networks, Inc. | Reformatting with modular proxy server |
US7412644B2 (en) * | 2000-02-04 | 2008-08-12 | Aol Llc, A Delaware Limited Liability Company | System and process for delivering and rendering scalable web pages |
US6915484B1 (en) * | 2000-08-09 | 2005-07-05 | Adobe Systems Incorporated | Text reflow in a structured document |
US7073199B1 (en) * | 2000-08-28 | 2006-07-04 | Contentguard Holdings, Inc. | Document distribution management method and apparatus using a standard rendering engine and a method and apparatus for controlling a standard rendering engine |
US6657647B1 (en) * | 2000-09-25 | 2003-12-02 | Xoucin, Inc. | Controlling the order in which content is displayed in a browser |
US7665115B2 (en) * | 2001-02-02 | 2010-02-16 | Microsoft Corporation | Integration of media playback components with an independent timing specification |
US6943773B2 (en) | 2001-05-11 | 2005-09-13 | Palmone, Inc. | Page flicking mechanism for electronic display devices that paginate content |
US6983307B2 (en) * | 2001-07-11 | 2006-01-03 | Kirusa, Inc. | Synchronization among plural browsers |
WO2003009102A2 (en) * | 2001-07-19 | 2003-01-30 | Wind River Systems, Inc. | Browser having dynamically self-adjusting rendering functionality |
US7127503B2 (en) * | 2001-10-10 | 2006-10-24 | Juniper Networks, Inc. | Computer networking system, device, and method for improved speed in web page rendering |
US7257776B2 (en) * | 2002-02-05 | 2007-08-14 | Microsoft Corporation | Systems and methods for scaling a graphical user interface according to display dimensions and using a tiered sizing schema to define display objects |
CA2475050A1 (en) * | 2002-02-15 | 2003-08-28 | Tridium, Inc. | Component model for real time system control |
US20050116966A1 (en) * | 2002-04-04 | 2005-06-02 | Graham James J. | Web imaging serving technology |
US20050157948A1 (en) * | 2002-04-25 | 2005-07-21 | Thomson Licensing S.A. | Video resolution control for a web browser and video display |
US20030221068A1 (en) | 2002-05-23 | 2003-11-27 | Michael Tsuji | Method and system for data cache |
US6973480B2 (en) * | 2002-09-26 | 2005-12-06 | Sun Microsystems, Inc. | Mechanism for implementing server-side pluglets |
KR20040049488A (ko) * | 2002-12-06 | 2004-06-12 | 삼성전자주식회사 | 애플릿 실행 장치 및 방법 |
US20040128342A1 (en) * | 2002-12-31 | 2004-07-01 | International Business Machines Corporation | System and method for providing multi-modal interactive streaming media applications |
US20070128899A1 (en) | 2003-01-12 | 2007-06-07 | Yaron Mayer | System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows |
US20080177994A1 (en) * | 2003-01-12 | 2008-07-24 | Yaron Mayer | System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows |
US20040152062A1 (en) * | 2003-02-03 | 2004-08-05 | Adams Milton N. | Web-based learning and literacy education using core constructs and constructive surfing |
WO2004084056A1 (ja) * | 2003-03-18 | 2004-09-30 | Access Co., Ltd. | ブラウザプログラム及びコンテンツ表示装置 |
KR100624786B1 (ko) * | 2004-01-29 | 2006-09-19 | 엘지전자 주식회사 | 무선 네트워크망을 통해 통신하는 서버 시스템 |
US7546539B2 (en) | 2004-03-10 | 2009-06-09 | Siebel Systems, Inc. | Browser back and forth navigation |
US20060004785A1 (en) * | 2004-06-03 | 2006-01-05 | International Business Machines Corporation | Saving multiple browser instances as a selectable web project |
US20060031760A1 (en) * | 2004-08-05 | 2006-02-09 | Microsoft Corporation | Adaptive document layout server/client system and process |
US20060080292A1 (en) | 2004-10-08 | 2006-04-13 | Alanzi Faisal Saud M | Enhanced interface utility for web-based searching |
US7921365B2 (en) | 2005-02-15 | 2011-04-05 | Microsoft Corporation | System and method for browsing tabbed-heterogeneous windows |
US7596760B2 (en) | 2005-04-07 | 2009-09-29 | Microsoft Corporation | System and method for selecting a tab within a tabbed browser |
US7827503B2 (en) | 2005-07-27 | 2010-11-02 | Yahoo! Inc. | Automatically generating a search result in a separate window for a displayed symbol that is selected with a drag and drop control |
US7703013B1 (en) * | 2005-08-16 | 2010-04-20 | Adobe Systems Inc. | Methods and apparatus to reformat and distribute content |
US7673233B2 (en) | 2005-09-08 | 2010-03-02 | Microsoft Corporation | Browser tab management |
US8775662B2 (en) | 2005-09-27 | 2014-07-08 | Blackberry Limited | System and method for progressive delivery of multimedia objects |
US7506248B2 (en) * | 2005-10-14 | 2009-03-17 | Ebay Inc. | Asynchronously loading dynamically generated content across multiple internet domains |
US20100153836A1 (en) * | 2008-12-16 | 2010-06-17 | Rich Media Club, Llc | Content rendering control system and method |
US7475359B2 (en) | 2006-02-09 | 2009-01-06 | International Business Machines Corporation | User interface for a tabbed pane |
EP2662787B1 (en) * | 2006-03-15 | 2016-12-28 | Google, Inc. | Automatic display of resized images |
US20080065237A1 (en) | 2006-09-10 | 2008-03-13 | Long Wesley V | Dynamic HTML based Multi Tabbed Sortable Results |
US8645973B2 (en) * | 2006-09-22 | 2014-02-04 | Oracle International Corporation | Mobile applications |
CN100568808C (zh) * | 2006-10-12 | 2009-12-09 | 国际商业机器公司 | 对多个网络服务器并行操作的方法和装置 |
US7996756B2 (en) * | 2007-09-12 | 2011-08-09 | Vistaprint Technologies Limited | System and methods for displaying user modifiable server-rendered images |
US20090132949A1 (en) | 2007-11-16 | 2009-05-21 | Jason Bosarge | Methods and systems for transmitting, receiving and annotating internet content |
US20090228838A1 (en) * | 2008-03-04 | 2009-09-10 | Ryan Christopher N | Content design tool |
US8307300B1 (en) * | 2008-05-13 | 2012-11-06 | Google Inc. | Content resizing and caching in multi-process browser architecture |
US9071651B2 (en) * | 2008-06-05 | 2015-06-30 | Microsoft Technology Licensing, Llc | Dynamic content delivery to network-enabled static display device |
US8356247B2 (en) * | 2008-12-16 | 2013-01-15 | Rich Media Worldwide, Llc | Content rendering control system and method |
US8799806B2 (en) | 2008-12-31 | 2014-08-05 | Verizon Patent And Licensing Inc. | Tabbed content view on a touch-screen device |
US20100218122A1 (en) * | 2009-02-20 | 2010-08-26 | Microsoft Corporation | Asynchronously uploading and resizing content in web-based applications |
US8140646B2 (en) | 2009-06-04 | 2012-03-20 | Microsoft Corporation | Network application performance enhancement using speculative execution |
US8924943B2 (en) * | 2009-07-17 | 2014-12-30 | Ebay Inc. | Browser emulator system |
US20110271217A1 (en) | 2010-04-30 | 2011-11-03 | Microsoft Corporation | Configurable presets for tab groups |
-
2008
- 2008-08-29 US US12/201,772 patent/US8307300B1/en active Active
-
2009
- 2009-05-12 CA CA2723274A patent/CA2723274C/en active Active
- 2009-05-12 EP EP09746933A patent/EP2304566A1/en not_active Withdrawn
- 2009-05-12 BR BRPI0911981-7A patent/BRPI0911981B1/pt active IP Right Grant
- 2009-05-12 WO PCT/US2009/002917 patent/WO2009139845A1/en active Application Filing
- 2009-05-12 CN CN2009801173664A patent/CN102027454A/zh active Pending
- 2009-05-12 KR KR1020167014531A patent/KR20160067200A/ko not_active Application Discontinuation
- 2009-05-12 US US12/464,594 patent/US8291078B2/en active Active
- 2009-05-12 KR KR1020107027989A patent/KR101664367B1/ko active IP Right Grant
- 2009-05-12 AU AU2009246884A patent/AU2009246884B2/en active Active
-
2011
- 2011-09-29 US US13/248,718 patent/US8402383B1/en active Active
-
2012
- 2012-09-12 US US13/612,495 patent/US8954589B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7343419B1 (en) * | 2000-10-05 | 2008-03-11 | Aol Llc | Rerouting media to selected media applications |
CN1835907A (zh) * | 2003-10-24 | 2006-09-20 | 罗姆两合公司 | 可聚合多羟基化合物的制备方法 |
Non-Patent Citations (1)
Title |
---|
CHARLES REIS ET AL: "Using Processes to Improve the Reliability of Browser-based Applications", 《UNIVERSITY OF WASHINGTON TECHNICAL REPORT 》 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019832A (zh) * | 2011-09-20 | 2013-04-03 | 百度在线网络技术(北京)有限公司 | 浏览器的切换控制方法及装置 |
CN103019832B (zh) * | 2011-09-20 | 2016-08-31 | 百度在线网络技术(北京)有限公司 | 浏览器的切换控制方法及装置 |
CN103176775B (zh) * | 2011-12-22 | 2016-08-24 | 腾讯科技(深圳)有限公司 | 一种实现网页应用程序本地化的方法和装置 |
CN103176775A (zh) * | 2011-12-22 | 2013-06-26 | 腾讯科技(深圳)有限公司 | 一种实现网页应用程序本地化的方法和装置 |
CN104035815B (zh) * | 2011-12-29 | 2017-12-12 | 北京奇虎科技有限公司 | 一种窗口防假死方法和装置 |
US9575821B2 (en) | 2011-12-29 | 2017-02-21 | Beijing Qihoo Technology Company Limited | Method and device for preventing window's lagging |
CN102591711B (zh) * | 2011-12-29 | 2014-06-25 | 奇智软件(北京)有限公司 | 一种窗口防假死方法和装置 |
CN102591711A (zh) * | 2011-12-29 | 2012-07-18 | 奇智软件(北京)有限公司 | 一种窗口防假死方法和装置 |
CN104035815A (zh) * | 2011-12-29 | 2014-09-10 | 北京奇虎科技有限公司 | 一种窗口防假死方法和装置 |
CN102915251A (zh) * | 2012-03-08 | 2013-02-06 | 北京金山安全软件有限公司 | 一种多页面浏览器处理消息的方法和装置 |
CN102915251B (zh) * | 2012-03-08 | 2014-06-18 | 北京金山安全软件有限公司 | 一种多页面浏览器处理消息的方法和装置 |
CN102663318B (zh) * | 2012-03-22 | 2015-04-08 | 百度在线网络技术(北京)有限公司 | 一种浏览器进程权限的控制方法 |
CN102663318A (zh) * | 2012-03-22 | 2012-09-12 | 百度在线网络技术(北京)有限公司 | 浏览器及客户端 |
CN103713910A (zh) * | 2012-09-28 | 2014-04-09 | 腾讯科技(深圳)有限公司 | 一种检测多核浏览器内核的方法和装置 |
CN103713910B (zh) * | 2012-09-28 | 2018-03-02 | 腾讯科技(深圳)有限公司 | 一种检测多核浏览器内核的方法和装置 |
CN103793282A (zh) * | 2012-11-02 | 2014-05-14 | 阿里巴巴集团控股有限公司 | 一种浏览器及其结束标签页的方法 |
CN103793282B (zh) * | 2012-11-02 | 2017-08-18 | 阿里巴巴集团控股有限公司 | 一种浏览器及其结束标签页的方法 |
CN103955388A (zh) * | 2014-04-29 | 2014-07-30 | 百度在线网络技术(北京)有限公司 | 客户端的冷启动方法及装置 |
CN103955388B (zh) * | 2014-04-29 | 2017-09-12 | 百度在线网络技术(北京)有限公司 | 客户端的冷启动方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US8954589B2 (en) | 2015-02-10 |
KR20160067200A (ko) | 2016-06-13 |
US8291078B2 (en) | 2012-10-16 |
BRPI0911981B1 (pt) | 2019-10-15 |
CA2723274C (en) | 2016-07-26 |
AU2009246884A1 (en) | 2009-11-19 |
US20090287824A1 (en) | 2009-11-19 |
US8307300B1 (en) | 2012-11-06 |
US8402383B1 (en) | 2013-03-19 |
WO2009139845A1 (en) | 2009-11-19 |
AU2009246884B2 (en) | 2014-10-16 |
BRPI0911981A2 (pt) | 2016-09-13 |
KR101664367B1 (ko) | 2016-10-10 |
CA2723274A1 (en) | 2009-11-19 |
EP2304566A1 (en) | 2011-04-06 |
KR20110019741A (ko) | 2011-02-28 |
US20130014037A1 (en) | 2013-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102027454A (zh) | 多进程浏览器体系结构 | |
JP6272933B2 (ja) | 遠隔ブラウジングセッション管理 | |
US7861213B2 (en) | Mechanism for developing AJax applications using java swing framework and method for using the same | |
US11449666B2 (en) | Browser extension for the collection and distribution of data and methods of use thereof | |
JP5335083B2 (ja) | ブラウザにおける新しいタブページおよびブックマークツールバー | |
US9858600B2 (en) | Universal tag for page analytics and campaign creation | |
CN103718161B (zh) | Web应用体系架构 | |
EP1807771B1 (en) | Method and system for communicating and exchanging data between browser frames | |
US7559016B1 (en) | System and method for indicating web page modifications | |
US11206273B2 (en) | Content management system connect | |
US20060265662A1 (en) | System and method for generating and updating user interfaces of web-based applications | |
US20160342935A1 (en) | Generating and delivering a wrap package of cards including custom content and/or services in response to a triggered event | |
US20090064010A1 (en) | Task-Based Tool for Speeding and Customizing Interactions with Web Documents | |
US7912917B2 (en) | Persisting forms data in a composite web application environment | |
US20120197978A1 (en) | Method and System for Seamless Navigation and Drill Back Among a Plurality of Web Applications | |
US20100042943A1 (en) | Method And Systems For Layered Presentation Of A Graphic Background And A Web Accessible Resource In A Browser Widget | |
WO2016057184A1 (en) | System and method for authoring, distributing, viewing and saving wrap packages | |
TW201743225A (zh) | 植基於ajax技術於控管網頁共通部分之運作系統 | |
Janson et al. | Servlets |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110420 |
|
RJ01 | Rejection of invention patent application after publication |