Patent application number | Description | Published |
20120260179 | METHOD AND APPARATUS FOR OPTIMIZED EXECUTION USING RESOURCE UTILIZATION MAPS - Systems and methods enable displaying a graphical representation of system resource usage in a resource utilization map to inform users about system resource utilization by applications and processes running on a computing device. Users may provide inputs to enable the system to adjust resource allocations based on user preferences. This may enable users to improve the overall operational performance of the device consistent with their current personal preferences by identifying applications or processes of most or least interest so the device processor to prioritize system resources accordingly. Some aspects transmit resource allocation data based on such user input to a central server to enable community based resource allocation schemes. Community based resource allocation schemes may be transmitted to computing devices for use as default or preliminary resource allocations for particular applications, websites or device operating states. | 10-11-2012 |
20120290924 | CONCURRENT PARSING AND PROCESSING OF HTML AND JAVASCRIPT.RTM. - The aspects enable a processor to concurrently execute markup language code (e.g., HTML) having embedded scripting language code (e.g., JavaScript®) during a page load operation by a browser. A markup language parser parses markup language code until embedded scripting language code is encountered. The segment of embedded scripting language code is extracted for execution by a scripting language engine which proceeds concurrently with speculative parsing of the markup language code. Markup language code generated by execution of scripting language code is evaluated to determine if it is well formed, and a partial rollback of the markup language parse and re-parsing of portions of the markup language code is accomplished if not. Concurrent parsing of markup language code and execution of scripting language code, with partial roll back of the parsing process when necessary, continues until all markup language code has been parsed and all scripting language code has been executed. | 11-15-2012 |
20120317475 | Concurrent Parsing and Processing of Serial Languages - The aspects enable a processor to concurrently execute a first serial language code (e.g., HTML) embedding a second serial language code (e.g., JavaScript®) during a page load operation by a browser. A parser parses the first serial language code until a segment of the embedded second serial language code is encountered. The segment of embedded second serial language code is extracted for execution by an execution engine, which proceeds concurrently with speculative parsing of the first serial language code. Code generated by execution of second serial language code is evaluated to determine if it is well formed, and a partial rollback and re-parsing of the first serial language code is performed if the code is not well formed. | 12-13-2012 |
Patent application number | Description | Published |
20120304159 | HARDWARE SUPPORT FOR HASHTABLES IN DYNAMIC LANGUAGES - The aspects enable a computing device to execute traditionally software-based JavaScript® operations in hardware. Each JavaScript® object is hashed into a master hashtable that may be stored in the software. A portion of the software hashtable may be pushed to a hardware hashtable using special instruction set registers dedicated to hashtable processing. Each time a software process requests a hashtable operation (e.g., lookup) the hardware hashtable is checked to determine if the value exists in hardware. If the requested value is in the hardware hashtable, the requested value is accessed in a single operation step. If the requested value is not in the hardware hashtable, the requested value is extracted from the master hashtable in the software and a portion of the master hashtable containing the extracted value is pushed to the hardware using special instruction set registers. | 11-29-2012 |
20130031459 | WEB BROWSING ENHANCED BY CLOUD COMPUTING - Methods and devices include a server and at least two web browsers operable on at least two different computing devices. Each browser reports results of processing and rendering of webpages to the server. The server aggregates the data. The server generates metadata from the aggregated browsers. The server transmits the generated metadata to at least one computing device. The computing device renders a webpage using at least a portion of the provided metadata. The metadata may identify portions of JavaScript that can be processed in parallel. The metadata may identify a library portion that does not have to be loaded. The metadata may identify a portion of the webpage that may be rendered first before a second portion of the webpage. Returning metadata to the computing device can assist the computing device in parsing, analyzing or executing the request for the webpage. | 01-31-2013 |
20130117845 | ENCODING LABELS IN VALUES TO CAPTURE INFORMATION FLOWS - Methods, servers, and systems for encoding security labels in a dynamic language value to allow cross script communications within client application while limiting the types of information that is allowed to be communicated back to a host server. Static analysis is performed during compilation, and the results are used to generate and insert additional code that updates, modifies and propagates labels (e.g., JavaScript labels) attached to values (e.g., JavaScript values) during execution of a program. To support popular language features that allow for strong integration with other web-based systems, malicious code is allowed to perform operations locally (e.g., on the client), and a detection and prevention mechanism identifies and stops malicious code from sending requests or gathered information over the network, naturalizing attacks and improving the security of applications that embed dynamic language code. | 05-09-2013 |
Patent application number | Description | Published |
20130047077 | CONCURRENT PARSING AND PROCESSING OF SERIAL LANGUAGES - The aspects enable a processor to concurrently execute a first serial language code embedding a second serial language code during a page load by a browser. A parser parses the first serial language code until a segment of the embedded second serial language code is encountered. The segment of embedded second serial language code is extracted for execution by an execution engine, which proceeds concurrently with speculative parsing of the first serial language code. Code generated by execution of second serial language code is evaluated to determine if it is well-formed, and partial rollback and re-parsing of the first serial language code is performed if the code is not well-formed. Concurrent parsing of first serial language code and execution of second language code, with partial roll back and reparsing when necessary, continues until the first language code has been parsed and the second serial language code has been executed. | 02-21-2013 |
20130198612 | REDUCING WEB BROWSING OVERHEADS WITH EXTERNAL CODE CERTIFICATION - Methods, servers, and systems for using signatures/certifications embedded in pre-processed code to enable use or reuse of pre-processed code to obviate the need to perform some operations or execute some scripts within the web page content. One or more operations may be performed within an executable script in web page content and signing the result of the operation in a manner that can be used to verify that the corresponding operation may be skipped by a browser. A browser receiving signed pre-processed code may use a signature verification process to determine whether the browser can bypass executing corresponding scripts in the web page content or perform alternative operations. Operations may be pre-performed and the results signed by off-line tools and included in the web page content. Results of operations may be stored in memory along with a signature so the results of the operation can be reused in the future. | 08-01-2013 |
20130262978 | HTML5 I-FRAME EXTENSION - The various aspects provide methods, servers, and systems for identifying independent portions of an HTML document so that the identified portions may be processed in parallel. The independent portions may be associated with an iframe tag having both the seamless and sandbox attributes. At runtime, a browser may detect the presence of both attributes, and process the contents of the iframe in parallel. | 10-03-2013 |
20140053056 | PRE-PROCESSING OF SCRIPTS IN WEB BROWSERS - The aspects include browser systems and methods of loading/rendering a webpage by processing the web document (HTML page) in parallel. A scanner process scans the web document, identifies scripts, and initiates the downloading of the scripts. As the scripts are downloaded, an HTML parser generates an identifier for each script and the sends the scripts and associated identifiers to a script engine. The script engine parses, analyzes, compiles, and otherwise prepares the scripts for execution in an order that may be different than the execution order of the scripts. | 02-20-2014 |
20140053057 | SPECULATIVE RESOURCE PREFETCHING VIA SANDBOXED EXECUTION - The aspects include browser systems and methods of loading/rendering a webpage by preprocessing scripts within the web document (HTML page) in a sandboxed script engine to discover resources not explicitly requested in the web document so such resources can be pre-fetched and downloaded speculatively. The sandboxed execution of scripts and downloading of discovered resources may proceed in parallel with the performance of other browser operations (e.g., HTML parsing) and other resource requests. The sandboxed script engine may be isolated or separated from the other browser components. The sandboxed script engine may operate to speedup the process of identifying resources inconsistent with standard script execution processes. | 02-20-2014 |
20140053059 | PRE-PROCESSING OF SCRIPTS IN WEB BROWSERS - The aspects include browser systems and methods of loading/rendering a webpage by processing the web document (HTML page) in parallel. A scanner process scans the web document, identifies scripts, and initiates the downloading of the scripts. As the scripts are downloaded, an HTML parser generates an identifier for each script and the sends the scripts and associated identifiers to a script engine. The script engine parses, analyzes, compiles, and otherwise prepares the scripts for execution in an order that may be different than the execution order of the scripts. | 02-20-2014 |
20140053261 | On-Line Behavioral Analysis Engine in Mobile Device with Multiple Analyzer Model Providers - Methods, systems and devices for generating data models in a client-cloud communication system may include applying machine learning techniques to generate a first family of classifier models that describe a cloud corpus of behavior vectors. Such vectors may be analyzed to identify factors in the first family of classifier models that have the highest probability of enabling a mobile device to better determine whether a mobile device behavior is malicious or benign. Based on this analysis, a second family of classifier models may be generated that identify significantly fewer factors and data points as being relevant for enabling the mobile device to better determine whether the mobile device behavior is malicious or benign based on the determined factors. A mobile device classifier module based on the second family of classifier models may be generated and made available for download by mobile devices, including devices contributing behavior vectors. | 02-20-2014 |
20140143647 | METHOD FOR IMPROVING BROWSER CACHE BY REDUCING DUPLICATE STORED CONTENT - Methods, systems and devices for utilizing signatures to avoid storing redundant webpage resources within a browser cache. In an aspect, a mobile device may receive a resource when generating a webpage hosted by a web server. The mobile device may generate a signature that represents the content of the resource. The mobile device may also compare the generated signature to a list of other signatures related to resources currently stored within the browser cache. When the generated signature does not match one of the other signatures, the mobile device may add the signature to the list and store the resource within the browser cache. In an aspect, the signature may be obtained from the web server or another computing device, and when the obtained signature is not within the list of other signatures, the mobile device may download the resource for storage in the browser cache. | 05-22-2014 |
20140149850 | Web Browsing Enhanced by Cloud Computing - Methods and devices include a server and at least two web browsers operable on at least two different computing devices. A server processes requested code to return binary code as metadata to assist a computing device render a webpage. The server transmits the generated metadata to at least one computing device. The computing device renders a webpage using at least a portion of the provided metadata. The metadata may identify portions of JavaScript that can be processed in parallel. The metadata may identify a library portion that does not have to be loaded. The metadata may identify a portion of the webpage that may be rendered first before a second portion of the webpage. Returning metadata to the computing device can assist the computing device in parsing, analyzing or executing the request for the webpage. | 05-29-2014 |