Methods and apparatuses for providing a hardware accelerated web engine

US10497086B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10497086-B2
Application numberUS-201815956959-A
CountryUS
Kind codeB2
Filing dateApr 19, 2018
Priority dateNov 17, 2006
Publication dateDec 3, 2019
Grant dateDec 3, 2019

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, wherein the plurality of fragments of the mark-up language data stream are structured in a first data structure of nodes; selecting, by the processing software, a subset of the plurality of fragments of the mark-up language 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 images, wherein the processing software identifies the one or more selected fragments to the graphics processing unit; and generating a second data structure based on at least the first data structure and the set of images, wherein the second data structure includes one or more nodes representing one or more images intended for processing by the graphics processing unit; assembling the plurality of fragments from at least the second data structure, wherein the assembled plurality of fragments represents an 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 mark-up language processing software. 3. The method of claim 2 , wherein the processing software is a hypertext mark-up language processing software. 4. The method of claim 1 , wherein the data stream comprises a web page having a plurality of elements. 5. The method of claim 4 , wherein each of the plurality of fragments is one of the plurality of web page elements. 6. The method of claim 4 , further comprising: rendering the one or more selected fragments into a plurality of images. 7. The method of claim 6 , wherein the causing the graphics processing unit further causes the graphics processing unit to store the plurality of images in a backing store of the graphics processing unit. 8. The method of claim 6 , further comprising: allocating an independent layer associated with a backing store for each element that provides scripting of the web page. 9. The method of claim 6 , further comprising: allocating an independent layer associated with a backing store for each element having a combination of specific attributes that individually are not sufficient to receive an independent layer. 10. The method of claim 1 , wherein each image in the subset of images represents a decomposed portion of the complete image. 11. A machine-readable non-transitory medium having executable instructions to cause a machine to perform a method comprising: analyzing, by a processing software, a mark-up language data stream having a plurality of fragments, wherein the plurality of fragments of the mark-up language data stream are structured in a first data structure of nodes; selecting, by the processing software, a subset of the plurality of fragments of the mark-up language 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 images, wherein the processing software provides information identifying the one or more selected fragments to the graphics processing unit; generating a second data structure based on at least the first data structure and the set of images, wherein the second data structure includes one or more nodes representing one or more images intended for processing by the graphics processing unit; and assembling the plurality of fragments from at least the second data structure, wherein the assembled plurality of fragments represents an image to be displayed as a document for display in the processing software. 12. The machine-readable non-transitory medium of claim 11 , wherein the processing software is a mark-up language processing software. 13. The machine-readable non-transitory medium of claim 11 , wherein the processing software is a hypertext mark-up language processing software. 14. The machine-readable non-transitory medium of claim 11 , wherein the data stream comprises a web page having a plurality of web page elements. 15. The machine-readable non-transitory medium of claim 13 , wherein each of the plurality of fragments is one of the plurality of web page elements. 16. The machine-readable non-transitory medium of claim 11 , further comprising: rendering the one or more selected fragments into a plurality of images. 17. The machine-readable non-transitory medium of claim 16 , wherein the causing the graphics processing unit further causes the graphics processing unit to store the plurality of images in a backing store of the graphics processing unit. 18. The machine-readable non-transitory medium of claim 16 , further comprising: allocating an independent layer associated with a backing store for each element that provides scripting of the web page. 19. The machine-readable non-transitory medium of claim 16 , 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. 20. 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, the processing software to select a subset of the plurality of fragments of the data stream to be processed by a graphics processing unit, the processing software to cause the graphics processing unit to process the subset of the plurality of fragments into a set of images, wherein the processing software provides information identifying the one or more selected fragments to the graphics processing unit, the processing software to generate a second data structure based on at least the first data structure and the set of images, wherein the second data structure includes one or more nodes representing one or more images intended for processing by the graphics processing unit, and the processing software to assemble the plurality of fragments from at least the second data structure, wherein the assembled plurality of fragments represents an 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.

Assignees

Inventors

Classifications

  • Storage facilities · CPC title

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

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

  • Physics · mapped topic

  • Physics · mapped topic

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 US10497086B2 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 Dec 03 2019 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).