Active drive API

US11119797B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11119797-B2
Application numberUS-201816129520-A
CountryUS
Kind codeB2
Filing dateSep 12, 2018
Priority dateOct 14, 2016
Publication dateSep 14, 2021
Grant dateSep 14, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An application programming interface (API) that enables installation of an application as one or more key-value objects on a data storage drive such as a hard disk drive, a solid state drive or a hybrid drive. The API also enables execution of the application within a controlled environment of the data storage drive.

First claim

Opening claim text (preview).

What is claimed is: 1. A storage device including: nonvolatile media; volatile memory; and an active drive application programming interface (API) stored in one or both of the media and the memory and executable to: receive from a host application running within a host environment on a host device a put applet command including an applet object, wherein the applet object includes a set of key-value objects organized as a key and value structure to identify each of the key-value objects; install the applet object in one or both of the media and the memory of the storage device accessible by the active drive API to enable execution of the applet object within a controlled environment of the storage device; send to the host application a message acknowledging completion of the put applet command; receive from the host application a watch applet command including identification of the installed applet object, a watch scope within a predetermined range of keys, at least one trigger event to initiate execution of the applet object, and at least one action to be taken responsive to the at least one trigger event; register the installed applet object as a watcher applet to execute responsive to detection of the at least one trigger event within the watch scope; detect the at least one trigger event occurring within the watch scope; initiate execution of the watcher applet within the controlled environment of the storage device responsive to detection of the at least one trigger event; undertake the at least one action responsive to detection of the at least one trigger event; and send to the host application a message acknowledging completion of the watch applet command. 2. The storage device of claim 1 , wherein the applet object is a user-programmed applet. 3. The storage device of claim 1 , wherein the trigger event includes detection of a drive temperature in excess of a threshold. 4. The storage device of claim 1 , wherein the trigger event includes receipt of a notification from a drive monitoring program. 5. The storage device of claim 1 , wherein the trigger event includes a change in available storage capacity that satisfies a threshold. 6. The storage device of claim 1 , wherein the at least one action is a corrective action. 7. The storage device of claim 1 , wherein the at least one action includes sending a notification to a host device responsive to detection of the at least one trigger event. 8. The storage device of claim 1 , wherein the trigger event is a “GET” operation against any key within the predetermined range of keys. 9. A method comprising: receiving from a host application running within a host environment on a host device a put applet command including an applet object, wherein the applet object includes a set of key-value objects organized as a key and value structure to identify each of the key-value objects; installing the applet object in one or both of a media and a memory of a storage device accessible by an active drive application programming interface (API) to enable execution of the applet object within a controlled environment of the storage device, the active drive API also stored in one or both of the media and the memory of the storage device; sending to the host application a message acknowledging completion of the put applet command; receiving from the host application a watch applet command including identification of the installed applet object, a watch scope within a predetermined range of keys, at least one trigger event to initiate execution of the applet object, and at least one action to be taken responsive to the at least one trigger event; registering the installed applet object as a watcher applet to execute responsive to detection of the at least one trigger event within the watch scope; detecting the at least one trigger event occurring within the watch scope; initiating execution of the watcher applet within the controlled environment of the storage device responsive to detection of the at least one trigger event; undertaking the at least one action responsive to detection of the at least one trigger event; and sending to the host application a message acknowledging completion of the watch applet command. 10. The method of claim 9 , wherein the applet object is a user-programmed applet. 11. The method of claim 9 , wherein the trigger event includes detection of a drive temperature in excess of a threshold. 12. The method of claim 9 , wherein the trigger event includes receipt of a notification from a drive monitoring program. 13. The method of claim 9 , wherein the trigger event includes a change in available storage capacity that satisfies a threshold. 14. The method of claim 9 , wherein the at least one action is a corrective action. 15. The method of claim 9 , wherein the trigger event is a “GET” operation against any key within the predetermined range of keys. 16. One or more memory devices encoding computer-executable instructions for executing a computer process using an active drive application programming interface (API) comprising: receiving from a host application running within a host environment on a host device a put applet command including an applet object, wherein the applet object includes a set of key-value objects organized as a key and value structure to identify each of the key-value objects; installing the applet object in one or both of a media and a memory of a storage device accessible by the active drive API to enable execution of the applet object within a controlled environment of the storage device, the active drive API also stored in one or both of the media and the memory of the storage device; sending to the host application a message acknowledging completion of the put applet command; receiving from the host application a watch applet command including identification of the installed applet object, a watch scope within a predetermined range of keys, at least one trigger event to initiate execution of the applet object, and at least one action to be taken responsive to the at least one trigger event; registering the installed applet object as a watcher applet to execute responsive to detection of the at least one trigger event within the watch scope; detecting the at least one trigger event occurring within the watch scope; initiating execution of the watcher applet within the controlled environment of the storage device responsive to detection of the at least one trigger event; undertaking the at least one action responsive to detection of the at least one trigger event; and sending to the host application a message acknowledging completion of the watch applet command. 17. The one or more memory devices of claim 16 , wherein the applet object is a user-programmed applet. 18. The one or more memory devices of claim 16 , wherein the trigger event includes detection of a drive temperature in excess of a threshold. 19. The one or more memory devices of claim 16 , wherein the trigger event includes receipt of a notification from a drive monitoring program. 20. The one or more memory devices of claim 16 , wherein the trigger event is a “GET” operation against any key within the predetermined range of keys.

Assignees

Inventors

Classifications

  • Transformation of program code · CPC title

  • Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation · CPC title

  • Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57) · CPC title

  • G06F8/61Primary

    Installation · CPC title

  • Hybrid storage device · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11119797B2 cover?
An application programming interface (API) that enables installation of an application as one or more key-value objects on a data storage drive such as a hard disk drive, a solid state drive or a hybrid drive. The API also enables execution of the application within a controlled environment of the data storage drive.
Who is the assignee on this patent?
Seagate Technology Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/45508. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 14 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).