IP Library Granted Patent US 7,913,237
Granted Patent B2
US 7,913,237 · App. 10/928,658 · Granted Mar 22, 2011

Compile-time code validation based on configurable virtual machine

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,913,237
App. No.
10/928,658
Granted
Mar 22, 2011
Kind
B2
Abstract

The current invention describes a virtual machine designed to run on a variety of platforms of varied capabilities, and in particular describes support in the coding and development environment for assessing and managing the variation in capability and performance among the platforms.

Claims (21)

1. A method for testing the operation in software, during a compile process, of a target platform having a set of known capabilities, comprising:

storing in a database a list of target platforms;

associating within the database a list of capabilities of each of the target platforms including a nominal performance criteria for each of a plurality of functions required by an interactive television application, said application characterized by executable code and data, wherein the capabilities of the platforms listed in the platform behavior database comprises features taken from the following list: absence of feature, limited valid range of values, limit valid set of values, limited capacity for support, and variant support for capability;

during the compile process, searching through the executable code and data of the interactive television application and determining whether the executable code and data are semantically and syntactically correct and satisfy the nominal performance criteria for execution on the platform;

further during the compile process, when the executable code and data are semantically and syntactically correct and satisfy the nominal performance criteria for execution on the platform, searching through the executable code and data of the interactive television application and determining whether the application uses a capability for which at least one of the target platforms to be emulated includes a performance criteria that does not meet a standard required by the interactive television application; and

warning a user during the compile process when the performance criteria for the at least one target platform does not meet the standard.

2. The method of claim 1 , wherein the nominal performance criteria is taken from a class of variations including absence of a feature, limited valid range of values, limited valid set of values, limited capacity for support, and variant support for capability.

3. The method of claim 1 , further including the step of identifying object classes which are not supported on the target platform and storing this information in the database in association with the target platform.

4. The method of claim 3 , wherein the object classes include organizational objects, graphical objects, and functional objects.

5. The method of claim 1 , further including the step of allowing the user to modify the application code or data, or accept the performance criteria, responsive to the warning.

6. The method of claim 1 , further including embodying the functions in objects and values.

7. The method of claim 1 , further including enabling a validator to allow a user to specify a desired target platform from the database, for each application intended for operation on the platform, and for determining whether the application utilizes a feature or function for which the platform exhibits variant behavior.

8. The method of claim 7 , further including providing a warning of each variant behavior, and allowing the user to modify the application code or data, or to accept the variant behavior.

9. The method of claim 7 , further including providing entries in the database specific to a particular software and hardware combination.

10. The method of claim 1 , wherein at least one of the functions is responsible for return-path interaction between the platform and a central server interacting with the platform.

11. The method of claim 1 , wherein the application is an interactive television application (ITV).

12. The method of claim 1 , wherein the target platform is a legacy set top box (STB).

13. The method of claim 6 , wherein the objects includes organizational objects, graphical objects, and functional objects.

14. The method of claim 13 , said organizational objects taken from the group consisting of Global, Screen, and Overlay.

15. The method of claim 13 , said graphical objects taken from the group consisting of Button, CheckBox, Image, Rectangle, TextBox, VideoStill, StandbyAnimation and StandbyScreen.

16. The method of claim 13 , said functional objects taken from the group consisting of IndexList, StateTable, Table, Timer, and Transaction.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Nov 5, 2018
From: MYRIAN CAPITAL FUND, LLC (SERIES C)
To: ENSEQUENCE, INC.
Reel/Frame 047415/0279 →
MERGER Recorded Sep 25, 2018
From: ENSEQUENCE, INC.
To: ESW HOLDINGS, INC.
Reel/Frame 046958/0460 →
ASSIGNMENT OF SECURITY INTEREST Recorded Jun 6, 2012
From: CYMI TECHNOLOGIES, LLC
To: MYRIAN CAPITAL FUND, LLC (SERIES C)
Reel/Frame 028332/0066 →
SECURITY AGREEMENT Recorded Oct 12, 2010
From: ENSEQUENCE, INC.
To: CYMI TECHNOLOGIES, LLC
Reel/Frame 025126/0178 →
ASSIGNMENT AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Oct 7, 2009
From: CYMI TECHNOLOGIES, LLC
To: ENSEQUENCE, INC.
Reel/Frame 023337/0001 →
SECURITY AGREEMENT Recorded Apr 15, 2009
From: ENSEQUENCE, INC.
To: CYMI TECHNOLOGIES, LLC
Reel/Frame 022542/0967 →
RELEASE OF SECURITY INTEREST Recorded May 14, 2007
From: FOX VENTURES 06 LLC
To: ENSEQUENCE, INC.
Reel/Frame 019474/0556 →
SECURITY AGREEMENT Recorded Jun 30, 2006
From: ENSEQUENCE, INC.
To: FOX VENTURES 06 LLC
Reel/Frame 017869/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 11, 2005
From: ACOTT, TROY STEVEN; MONDAY, STACY ANNE; WESTERMAN, LARRY A.
To: ENSEQUENCE, INC.
Reel/Frame 016214/0922 →