×

Active drive API

  • US 10,613,882 B2
  • Filed: 12/14/2016
  • Issued: 04/07/2020
  • Est. Priority Date: 10/14/2016
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • providing an application programming interface that is an application-level protocol that comprises;

    a plurality of different commands with each of the plurality of different commands having a pre-defined structure with bit patterns having defined logical meanings that specify a type of command and modifiers for the command, and each of the plurality of commands being communicable by a host simultaneously to a plurality of data storage drives without involvement of any intermediate hosts and servers; and

    a plurality of different functions capable of being executed in the plurality of data storage drives in response to receiving the plurality of different commands in the plurality of different data storage drives;

    storing, by one or more first commands of the plurality of different commands and one or more first functions of the plurality of different functions of the application programming interface, a user application as at least one object in a data storage drive, the at least one object including;

    a key to identify the at least one object; and

    a data field with a variable size to store the user application;

    receiving, in the data storage drive or in an application-execution component associated with the data storage drive that provides an application execution environment, one or more second commands of the application programming interface directly from the host, the one or more second commands being directed to the user application to perform an operation relating to data stored on the data storage drive;

    providing a controlled environment, in the data storage drive or in the application execution environment of the application-execution component associated with the data storage drive, for executing the one or more second commands without involvement of the host based on the bit patterns in the one or more second commands, the controlled environment being capable of limiting memory resources available to the user application when the user application is running in the data storage drive; and

    executing the one or more second commands of the application programming interface in the controlled environment based on the bit patterns in the one or more second commands.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×