[ { "title": "Vertex array access bounds checking", "publication_date": "2010/22/12", "number": "08516578", "url": "/2010/12/22/vertex-array-access-bounds-checking/", "abstract": "Aspects of the invention relate generally to validating array bounds in an API emulator. More specifically, an OpenGL (or OpenGL ES) emulator may examine each array accessed by a 3D graphic program. If the program requests information outside of an array, the emulator may return an error when the graphic is drawn. However, when the user (here, a programmer) queries the value of the array, the correct value (or the value provided by the programmer) may be returned. In another example, the emulator may examine index buffers which contain the indices of the elements on the other arrays to access. If the program requests a value which is not within the range, the emulator may return an error when the graphic is drawn. Again, when the programmer queries the value of the array, the correct value (or the value provided by the programmer) may be returned.", "owner": "Google Inc.", "owner_city": "Mountain View", "owner_country": "US" }, { "title": "Providing services from a remote computer system to a user station over a communications network", "publication_date": "2010/29/09", "number": "09484078", "url": "/2010/09/29/providing-services-from-a-remote-computer-system-to-a-user-station-over-a-communications-network/", "abstract": "A method includes receiving the second information at the remote computer system during a second user initiated communication session from the user station automatically, wherein the user station triggers automatically sending the second information to the remote computer system, retrieving the previously stored third information at the remote computer system and matching at least a portion of the received second information with the stored third information.", "owner": "Intellectual Ventures I LLC", "owner_city": "Wilmington", "owner_country": "US" }, { "title": "Detection of vulnerabilities in computer systems", "publication_date": "2010/27/08", "number": "08458798", "url": "/2010/08/27/detection-of-vulnerabilities-in-computer-systems/", "abstract": "Systems, methods, and apparatus, including computer program products, for detecting a presence of at least one vulnerability in an application. The method is provided that includes modifying instructions of the application to include at least one sensor that is configurable to generate an event indicator, wherein the event indicator includes at least some data associated with the event; storing the event indicator with other stored event indicators generated by the at least one sensor during the execution of the application; analyzing the stored event indicators; detecting a presence of at least one vulnerability in the application based on the analysis of the stored event indicators; and reporting the presence of at least one vulnerability.", "owner": "Aspect Security Inc.", "owner_city": "Columbia", "owner_country": "US" }, { "title": "Framework for executing multiple threads and sharing resources in a multithreaded computer programming environment", "publication_date": "2010/25/08", "number": "08327374", "url": "/2010/08/25/framework-for-executing-multiple-threads-and-sharing-resources-in-a-multithreaded-computer-programming-environment/", "abstract": "Techniques for execution of multiple threads in a multithreaded computing programming environment are disclosed. The techniques are especially well suited for environments that use multilayered programming architecture where a higher layer can build on the functions provided by a lower layer where the delay time is an important consideration. In one aspect, the conceptual notion of a “Worker” effectively serves to represent the thread-specific execution context for a thread of execution (“thread”) in a multithreaded computing environment. Another aspect, provides the notion of an Exclusion Area (EA) as logical lock that serves to protect shared resources in a multithreaded environment. The combination of the worker and EA are used to provide a powerful framework that, among other things, allows minimizing of the delay time.", "owner": "Real-Time Innovations, Inc.", "owner_city": "Santa Clara", "owner_country": "US" }, { "title": "Method and system for managing delayed user authentication", "publication_date": "2010/27/07", "number": "08250371", "url": "/2010/07/27/method-and-system-for-managing-delayed-user-authentication/", "abstract": "A system and methods for coordinating the operation of a client security module and a host security module on a mobile electronic device. The modules communicate with each other through a platform abstraction layer using application programming interfaces to coordinate their activities. In particular, on start-up of the device, the host security module obtains user authorization input from a user and passes the input to a client operating system for validation. Once validated, the host security module unlocks the host-side of the device. At the same time, the client operating system sends a notice or request to the client-side virtual machine requesting that the client-side be unlocked. Once the virtual machine is initialized and available it launches the client security module and unlocks the client-side. During the delay while the virtual machine loads, the user is given access only to the host applications.", "owner": "Research In Motion Limited", "owner_city": "Waterloo", "owner_country": "CA" }, { "title": "Software and method that enables selection of one of a plurality of online service providers", "publication_date": "2010/21/07", "number": "08719339", "url": "/2010/07/21/software-and-method-that-enables-selection-of-one-of-a-plurality-of-online-service-providers/", "abstract": "A novel electronic information transport component can be incorporated in a wide range of electronic information products, for example magazine collections, to automate the mass distribution of updates, such as current issues, from a remote server to a wide user base having a diversity of computer stations. Advantages of economy, immediacy and ease of use are provided. Extensions of the invention permit automated electronic catalog shopping with order placement and, optionally, order confirmation. A server-based update distribution service is also provided. In addition, an offline web browser system, with hyperlink redirection capabilities, a novel recorded music product with automated update capabilities and an Internet charging mechanism are provided.", "owner": "Intellectual Ventures I LLC", "owner_city": "Wilmington", "owner_country": "US" }, { "title": "Method and apparatus for rendering a computer-generated image", "publication_date": "2010/17/05", "number": "08654146", "url": "/2010/05/17/method-and-apparatus-for-rendering-a-computergenerated-image/", "abstract": "A method and apparatus for rendering a computer generated image using a stencil buffer is described. The method divides an arbitrary closed polygonal contour into first and higher level primitives, where first level primitives correspond to contiguous vertices in the arbitrary closed polygonal contour and higher level primitives correspond to the end vertices of consecutive primitives of the immediately preceding primitive level. The method reduces the level of overdraw when rendering the arbitrary polygonal contour using a stencil buffer compared to other image space methods. A method of producing the primitives in an interleaved order, with second and higher level primitives being produced before the final first level primitives of the contour, is described which improves cache hit rate by reusing more vertices between primitives as they are produced.", "owner": "Imagination Technologies, Ltd.", "owner_city": "Kings Langley, Hertfordshire", "owner_country": "GB" }, { "title": "Using a DSL for calling APIS to test software", "publication_date": "2010/19/04", "number": "08707263", "url": "/2010/04/19/using-a-dsl-for-calling-apis-to-test-software/", "abstract": "A test case is abstracted into a re-useable script or other declarative form that expresses the intent of a task rather that defining how the test will be performed. Tools translate the declarative test into a series of steps corresponding to code that implements the action indicated in the declarative test. The schema for the tests can be dynamic. New forms of test cases can take advantage of new actions so that the library of actions can be extended. Libraries are interchangeable. Test cases can be generated using a state machine. New test cases can be composed dynamically using a state machine to create new test cases.", "owner": "Microsoft Corporation", "owner_city": "Redmond", "owner_country": "US" }, { "title": "Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume", "publication_date": "2010/23/02", "number": "08935302", "url": "/2010/02/23/apparatus-system-and-method-for-data-block-usage-information-synchronization-for-a-nonvolatile-storage-volume/", "abstract": "An apparatus, system, and method are disclosed for data block usage information synchronization for a non-volatile storage volume. The method includes referencing first data block usage information for data blocks of a non-volatile storage volume managed by a storage manager. The first data block usage information is maintained by the storage manager. The method also includes synchronizing second data block usage information managed by a storage controller with the first data block usage information maintained by the storage manager. The storage manager maintains the first data block usage information separate from second data block usage information managed by the storage controller.", "owner": "Intelligent Intellectual Property Holdings 2 LLC", "owner_city": "Wilmington", "owner_country": "US" }, { "title": "Web services access to content items stored by collaboration systems", "publication_date": "2010/15/01", "number": "08701127", "url": "/2010/01/15/web-services-access-to-content-items-stored-by-collaboration-systems/", "abstract": "A computing system receives a web services request to invoke a method of web Application Programming Interface (API). In response to receiving the web services request, the computing system invokes a method of a language-dependent API of a client component in a collaboration system. The client component communicates with a collaboration server component in the collaboration system using a proprietary communications protocol. The method of the language-dependent API is a method to obtain data from the collaboration server component. After invoking the method, the computing system sends a web services response whose contents depend on the data obtained from the collaboration server component.", "owner": "Microsoft Corporation", "owner_city": "Redmond", "owner_country": "US" } ]