×

Method and apparatus for provisioning software

  • US 7,610,631 B2
  • Filed: 11/15/2004
  • Issued: 10/27/2009
  • Est. Priority Date: 11/15/2004
  • Status: Expired due to Fees
First Claim
Patent Images

1. A dynamic software provisioning system for provisioning software on a computing device that is communicatively coupled to a communications network, the dynamic software provisioning system comprising:

  • a computing device that is communicatively coupled to first and second computers by means of a communications network, the computing device containing software stored in memory;

    a billing system implemented on the first computer, the first computer having a first computer-readable storage medium with first computer-executable instructions that, when executed, sell an amount of usage of the software stored in memory on the computing device;

    a provisioning system implemented on the second computer, the second computer having a second computer-readable storage medium with second computer-executable instructions that, when executed, dynamically provision increments of usage of the software on the computing device, the provisioning system including;

    a registration module that, when a registration request is received from the billing system, registers the computing device, the registration request including a hardware identification that contains information specific to components of the computing device,a certificate module that, when executed, generates a provisioned device certificate,a distribution and packet generation module that, when a packet generation request is received, generates a provisioning packet, the packet generation request including a provisioned device initialization key, andthe distribution module, when executed, also transmitting the provisioning packet to the computing device over the communications network; and

    wherein the computing device includes;

    a packet request module that, when executed, sends the packet generation request to the provisioning system and downloads the provisioning packet,a storage module that, when executed, stores the provisioning packet,a reliable clock manager that, when executed, generates time tick events corresponding to use of the software on the computing device,login logic that, when executed, (i) qualifies login credentials to allow a user to operate the computing device, (ii) receives the time tick event, and (iii) forwards the time tick for processing;

    a balance module that receives the time tick event from the login logic and updates an available balance corresponding to available use of the software on the computing device; and

    an enforcement module that;

    (1) activates the software on the computing device if the balance value is above a threshold; and

    (2) de-activates the software on the computing device and de-activates the computing device for all purposes other than obtaining additional provisioning packets if the available balance is lowered below the threshold by the time tick event or if there is no available balance at login of the computing device.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×