Methods and apparatuses for providing a hardware accelerated web engine

US9953391B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9953391-B2
Application numberUS-201414519472-A
CountryUS
Kind codeB2
Filing dateOct 21, 2014
Priority dateNov 17, 2006
Publication dateApr 24, 2018
Grant dateApr 24, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods of expressing animation in a data stream are disclosed. In one embodiment, a method of expressing animation in a data stream includes defining animation states in the data stream with each state having at least one property such that properties are animated as a group. The animation states that are defined in the data stream may be expressed as an extension of a styling sheet language. The data stream may include web content and the defined animation states.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for accelerating a processing software on a data processing system, the method comprising: analyzing, by the processing software, a mark-up language data stream having a plurality of fragments, the mark-up language data stream being processed by the processing software and the processing software is a mark-up language processing software, wherein the plurality of fragments of the mark-up language data stream are structured in a first data structure of nodes and each of the nodes in the first data structure is a logical component of the mark-up language data stream; selecting, by the processing software, a subset of the plurality of fragments of the data stream to be processed by a graphics processing unit; causing the graphics processing unit to process the subset of the plurality of fragments into a set of raster images, wherein the processing software provides information identifying the one or more selected fragments to the graphics processing unit and the information include location information for raster images corresponding to the selected fragments; generating a second data structure separate from at least the first data structure and the set of raster images, wherein the second data structure includes one or more nodes representing one or more raster images intended for processing by the graphics processing unit; and assembling the plurality of fragments from the second data structure, including the set of raster images, wherein the assembled plurality of fragments represents a complete image to be displayed as a document for display in the processing software. 2. The method of claim 1 , wherein the processing software is a hypertext mark-up language processing software. 3. The method of claim 1 , wherein the data stream comprises a web page having a plurality of elements. 4. The method of claim 3 , wherein each of the plurality of fragments is one of the plurality of web page elements. 5. The method of claim 3 , further comprising: rendering the one or more selected fragments into a plurality of raster images. 6. The method of claim 5 , wherein the causing the graphics processing unit further causes the graphics processing unit to store the plurality of raster images in a backing store of the graphics processing unit. 7. The method of claim 5 , further comprising: allocating an independent layer associated with a backing store for each element that provides scripting of the web page. 8. The method of claim 5 , further comprising: allocating an independent layer associated with a backing store for each element having a combination of specific attributes that individually each specific attribute is not sufficient to receive an independent layer. 9. A machine-readable non-transitory medium having executable instructions to cause a machine to perform a method comprising: analyzing, by the processing software, a mark-up language data stream having a plurality of fragments, the mark-up language data stream being processed by a processing software, wherein the plurality of fragments of the mark-up language data stream are structured in a first data structure of nodes and each of the nodes in the first data structure is a logical component of the mark-up language data stream; selecting, by the processing software, a subset of the plurality of fragments of the data stream to be processed by a graphics processing unit; causing the graphics processing unit to process the subset of the plurality of fragments into a set of raster images, wherein the processing software provides information identifying the one or more selected fragments to the graphics processing unit and the information include location information for raster images corresponding to the selected fragments; generating a second data structure separate from at least the first data structure and the set of raster images, wherein the second data structure includes one or more nodes representing one or more raster images intended for processing by the graphics processing unit; and assembling the plurality of fragments from the second data structure, including the set of raster images, wherein the assembled plurality of fragments represents a complete image to be displayed as a document for display in the processing software. 10. The machine-readable non-transitory medium of claim 9 , wherein the processing software is a mark-up language processing software. 11. The machine-readable non-transitory medium of claim 10 , wherein the processing software is a hypertext mark-up language processing software. 12. The machine-readable non-transitory medium of claim 9 , wherein the data stream comprises a web page having a plurality of elements. 13. The machine-readable non-transitory medium of claim 12 , wherein each of the plurality of fragments is one of the plurality of web page elements. 14. The machine-readable non-transitory medium of claim 9 , further comprising: rendering the one or more selected fragments into a plurality of raster images. 15. The machine-readable non-transitory medium of claim 14 , wherein the causing the graphics processing unit further causes the graphics processing unit to store the plurality of raster images in a backing store of the graphics processing unit. 16. The machine-readable non-transitory medium of claim 14 , further comprising: allocating an independent layer associated with a backing store for each element that provides scripting of the web page. 17. The machine-readable non-transitory medium of claim 14 , further comprising: allocating an independent layer associated with a backing store for each element having a combination of specific attributes that individually each specific attribute is not sufficient to receive an independent layer. 18. A data processing system comprising: a first microprocessor coupled to a bus to analyze a mark-up language data stream having a plurality of fragments, the mark-up language data stream being processed by a processing software, wherein the plurality of fragments of the mark-up language data stream are structured in a first data structure of nodes and each of the nodes in the first data structure is a logical component of the mark-up language data stream, select a subset of the plurality of fragments of the data stream to be processed by a graphics processing unit, cause the graphics processing unit to process the subset of the plurality of fragments into a set of raster images, wherein the processing software provides information identifying the one or more selected fragments to the graphics processing unit and the information include location information for raster images corresponding to the one or more selected fragments, generating a second data structure separate from at least the first data structure and the set of raster images, wherein the second data structure includes one or more nodes representing one or more raster images intended for processing by the graphics processing unit , and assemble the plurality of fragments from the second data structure, including the set of raster images, wherein the assembled plurality of fragments represents a complete image to be displayed as a document for display in the processing software; main memory coupled to the bus with the main memory configured to store the document; and the graphics processing unit coupled to the bus, the graphics processing unit having a second microprocessor process selected fragments. 19. The data processing system of claim 18 , wherein the data stream comprises a web page having a plu

Assignees

Inventors

Classifications

  • Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces · CPC title

  • Storage facilities · CPC title

  • Two-dimensional [2D] image generation · CPC title

  • Physics · mapped topic

  • G06T1/20Primary

    Processor architectures; Processor configuration, e.g. pipelining · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9953391B2 cover?
Methods of expressing animation in a data stream are disclosed. In one embodiment, a method of expressing animation in a data stream includes defining animation states in the data stream with each state having at least one property such that properties are animated as a group. The animation states that are defined in the data stream may be expressed as an extension of a styling sheet language. …
Who is the assignee on this patent?
Apple Inc
What technology area does this patent fall under?
Primary CPC classification G06T1/20. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 24 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).