Single lock command for an I/O storage system that performs both locking and I/O data operation
First Claim
1. A method of handling I/O operations between a data storage system and a processor that is external to the data storage system, wherein said data storage system includes at least one external connection for connecting external devices thereto, wherein said processor is connected to the data storage system via said external connection, wherein the data storage system includes a lock manager and wherein communications over the at least one connection are in accordance with an I/O interface protocol which permits only a single command entity to be sent during each complete transfer over the at least one connection, said method comprising:
- generating a combined lock-I/O command within said external processor, wherein said combined lock-I/O command is supported by said interface protocol and represents a request to the data storage system to perform at least two operations including a locking operation and an I/O operation that is to be performed by the data storage system on data stored therein;
transferring said combined lock-I/O command to the data storage system over the connection for said external processor;
in response to receiving said combined lock-I/O command at the data storage system, causing the lock manager within the data storage system to perform the locking operation on data stored therein; and
also in response to receiving said combined lock-I/O command at the data storage system, causing the data storage system to perform an I/O operation corresponding to said combined lock-I/O command.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of handling I/O operations in a multiprocessor system which includes a plurality of host processors that are connected to a data storage system through corresponding connections, wherein the data storage system includes a lock manager and wherein the plurality of host processors communicate over the connections with the data storage system by using an interface protocol which permits only a single command to be sent during each complete transfer over the connection. The method includes the steps of generating a combined lock-I/O command within one of the host processors, wherein the combined lock-I/O command represents a request to the data storage system to perform at least two operations including a locking operation and an I/O operation that is to be performed by the data storage system on data stored therein; transferring said combined lock-I/O command to the data storage system over the connection for one of the host processors; in response to receiving the combined lock-I/O command at the data storage system, causing the lock manager within the data storage system to perform the locking operation on data stored therein; and also in response to receiving the combined lock-I/O command at the data storage system, causing the data storage system to perform an I/O operation corresponding to the combined lock-I/O command.
-
Citations
10 Claims
-
1. A method of handling I/O operations between a data storage system and a processor that is external to the data storage system, wherein said data storage system includes at least one external connection for connecting external devices thereto, wherein said processor is connected to the data storage system via said external connection, wherein the data storage system includes a lock manager and wherein communications over the at least one connection are in accordance with an I/O interface protocol which permits only a single command entity to be sent during each complete transfer over the at least one connection, said method comprising:
-
generating a combined lock-I/O command within said external processor, wherein said combined lock-I/O command is supported by said interface protocol and represents a request to the data storage system to perform at least two operations including a locking operation and an I/O operation that is to be performed by the data storage system on data stored therein; transferring said combined lock-I/O command to the data storage system over the connection for said external processor; in response to receiving said combined lock-I/O command at the data storage system, causing the lock manager within the data storage system to perform the locking operation on data stored therein; and also in response to receiving said combined lock-I/O command at the data storage system, causing the data storage system to perform an I/O operation corresponding to said combined lock-I/O command. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. In a processor that connects externally to a separate data storage system which includes a lock manager, an interface through which the external processor communicates with the data storage system, said interface comprising:
-
a lock manager interface which defines and supports a combined lock-I/O command that is available to be called by an application that is running on said external processor; and a driver which sends the combined lock-I/O command over the connection to the data storage system, wherein said driver implements an I/O interface protocol that supports the sending of only one command entity at a time to the data storage system and wherein said combined lock-I/O command is supported by said I/O interface protocol and represents a request to the data storage system to perform at least two operations including a locking operation and an I/O operation that is to be performed by the data storage system on data stored therein. - View Dependent Claims (9)
-
-
10. A data storage system which provides shared data storage for one or more processors that are external to the data storage system and which communicate with said data storage system through I/O services, said data storage system comprising:
-
a data storage device on which data is stored; a lock manager which controls accesses by said one or more external processors to the data stored within said data storage device; an I/O subsystem which processes I/O requests from said one or more external processors that are connected to the data storage system, said I/O subsystem implementing an I/O interface protocol that supports the sending of only one command entity at a time to the data storage system; and a controller which receives and responds to a combined lock-I/O command sent by one of said one or more external processors, wherein said combined lock-I/O command is supported by said I/O interface protocol and represents a request to the data storage system to perform at least two operations including a locking operation and an I/O service that is to be performed by the data storage system on data stored therein and wherein said controller responds to receiving said lock-I/O command by first obtaining a lock through said lock manager and then by obtaining through said I/O subsystem the requested I/O service.
-
Specification