×

Thread management in a storage system

  • US 10,083,067 B1
  • Filed: 06/29/2016
  • Issued: 09/25/2018
  • Est. Priority Date: 06/29/2016
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • generating one or more input/output (I/O) caller threads to operate a storage system;

    generating, for each of the one or more I/O caller threads, one or more background provider threads associated with a given one of the I/O caller threads; and

    synchronizing each of the one or more background provider threads with the associated I/O caller thread according to respective states of the I/O caller threads and the one or more background provider threads, the respective states indicated by at least one of associated context data and an associated synchronization object,wherein synchronizing the one or more background provider threads with the associated I/O caller thread comprises;

    checking, by each background provider thread, a state of the associated I/O caller thread, and based upon the state of the associated I/O caller thread, posting, by each background provider thread, a state indicator to a mailbox field in a context of the associated I/O caller thread; and

    checking, by each I/O caller thread, a state of the one or more associated background provider threads, and based upon the state of the one or more associated background provider threads, posting, by the associated I/O caller thread, a state indicator to a mailbox field in a context of the one or more background provider threads associated with the I/O caller thread, andwherein checking, by each background provider thread, a state of the associated I/O caller thread further comprises determining whether the associated I/O caller thread has exited and, if so, exiting the background provider thread without posting the state indicator to the mailbox field in the context of the associated I/O caller thread.

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