WO2016000147A1 - Procédé d'accès à un dispositif de stockage, et hôte - Google Patents
Procédé d'accès à un dispositif de stockage, et hôte Download PDFInfo
- Publication number
- WO2016000147A1 WO2016000147A1 PCT/CN2014/081214 CN2014081214W WO2016000147A1 WO 2016000147 A1 WO2016000147 A1 WO 2016000147A1 CN 2014081214 W CN2014081214 W CN 2014081214W WO 2016000147 A1 WO2016000147 A1 WO 2016000147A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- operation instruction
- definition module
- software definition
- access
- operating system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
Definitions
- the embodiments of the present invention relate to computer technologies, and in particular, to a method and a host for accessing a storage device. Background technique
- SDS Software-defined storage
- OS operating system
- hypervisor ie Hypervisor
- users do not have to purchase storage controller hardware such as hard drives, flash memory, etc. from specific vendors.
- SDS-based storage system storage virtualization is usually implemented through a software-defined layer (that is, software that performs all storage-related control operations), and a virtual resource pool is provided for upper-layer applications, so that applications can be conveniently and efficiently accessed. Storage device.
- SDS-based storage systems provide block/file drivers in the operating system for compatibility with existing applications.
- the application will issue an input/output (also called I/O, or 10) operation instruction to the operating system, and the I/O operation instruction is converted by the operating system block/file driver. Sended to the software definition layer, the software definition layer accesses the storage device, and returns the access result to the application to complete the access to the storage device.
- I/O input/output
- the software definition layer accesses the storage device, and returns the access result to the application to complete the access to the storage device.
- kernel trapping and kernel trapping not only reduces I/O access speed, affects access efficiency, but also reduces system reliability. Summary of the invention
- the embodiments of the present invention provide a method and a host for accessing a storage device, which can reduce the kernel trapping and kernel trapping times of the system when the application accesses the storage device.
- an embodiment of the present invention provides a method for accessing a storage device, where the SDS-based storage system includes a host and the storage. Equipment, the method includes:
- a software definition module running in the user space of the host intercepts an input/output I/O operation instruction sent by an application of the host, where the I/O operation instruction carries an access address;
- the software definition module instructs the operating system kernel of the host to access the storage device according to the access address according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction; the software definition module Receiving an access result returned by the operating system kernel;
- the software definition module sends the access result to the application.
- the outputting the I/O operation instruction includes: when the application links the operating system by using a dynamic link library, the software definition module intercepts the I/O operation sent by the application by using a dynamic link library preloading manner instruction.
- the outputting the I/O operation instruction includes: when the application links the operating system by using a static link library, the software definition module intercepts the I/O operation sent by the application by means of an application link process control instruction.
- the storage device includes a cache device and a storage device; And indicating, according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction, the definition module, according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction, indicating the location
- the operating system kernel of the host accesses the cache device according to the access address to access the storage device through the cache device.
- the software definition module is configured according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction Accessing the cache device by the operating system kernel of the host according to the access address to access the storage device by using the cache device includes:
- the software definition module instructs the operating system kernel to follow the access address according to the Reading the read access data in the cache device; the software definition module receives the access result returned by the operating system kernel; and the software definition module sending the access result to the application program includes: the software definition module Receiving the read access data returned by the operating system kernel; the software definition module performing an advanced function operation on the read access data according to an advanced function service included in the storage service corresponding to the I/O operation instruction; The software definition module sends the read access data after performing the advanced function operation to the application.
- the software definition module is configured according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction Accessing the cache device by the operating system kernel of the host according to the access address to access the storage device by using the cache device includes:
- the I/O operation instruction corresponding to the I/O operation instruction includes an advanced function service, and the I/O operation instruction is a write operation instruction
- the I/O operation instruction further carries write data
- the software definition module is configured according to The advanced function service included in the storage service corresponding to the I/O operation instruction performs an advanced function operation on the write data
- the software definition module instructs the operating system kernel to operate the access address and the execution advanced function
- the subsequent write data is written into the cache device, So that the cache device writes the write data after performing the advanced function operation to the storage device according to the access address; then the software definition module receives an access result returned by the operating system kernel
- the software definition module sending the access result to the application program includes: the software definition module receiving a write data result returned by the operating system kernel; the software definition module transmitting the write data result to the application.
- the software definition module is configured according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction Accessing the cache device by the operating system kernel of the host according to the access address to access the storage device by using the cache device includes:
- the software definition module instructs the host operating system kernel to perform the access according to the The address reads the read access data from the cache device; the software definition module receives the access result returned by the operating system kernel; and the software definition module sends the access result to the application program: The software definition module receives the read access data returned by the operating system kernel; the software definition module sends the read access data to the application.
- the software definition module is configured according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction Accessing the cache device by the operating system kernel of the host according to the access address to access the storage device by using the cache device includes:
- the I/O operation instruction corresponding to the I/O operation instruction does not include the advanced function service, and the I/O operation instruction is a write operation instruction
- the I/O operation instruction further carries write data
- the software definition module Instructing the operating system kernel to write the access address and the write data into the cache device, such that the cache device writes the write data into the storage device according to the access address;
- the software definition module receives the access result returned by the operating system kernel;
- the software definition module sends the access result to the application program: the software definition module receives the write data returned by the operating system kernel Resulting; the software definition module will write the number The result is sent to the application.
- a host for accessing a storage device configured to store a storage system based on a software definition
- the host includes an application, an operating system kernel, and a software definition module; wherein the software definition module runs on the host User space;
- the software definition module is configured to intercept an input/output I/O operation instruction sent by the application, where the I/O operation instruction carries an access address, and according to the access address, determines an I/O operation instruction corresponding to the The storage service, according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction, instructing the operating system kernel to access the storage device in the SDS-based storage system according to the access address;
- the operating system kernel is configured to access the storage device according to the indication of the software definition module and the access address, and return an access result to the software definition module;
- the software definition module is configured to receive the access result returned by the operating system kernel, and send the access result to the application.
- the software definition module is specifically configured to query, according to the access address, a pre-configured address service mapping table to determine a storage corresponding to the I/O operation instruction.
- the address service mapping table is used to record the correspondence between the address of the storage device and the storage service.
- the software definition module is specifically used when the application links the operating system by using a dynamic link library.
- the method of preloading the dynamic link library is used to intercept the I/O operation instruction sent by the application.
- the software definition module is specifically used when the application links the operating system by using a static link library.
- the I/O operation instruction sent by the application is intercepted by means of an application linking process control.
- the storage device includes a cache device and a storage device.
- the software definition module is specifically configured to: according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction, Instructing the operating system kernel of the host to access the cache device according to the access address; the operating system kernel is specifically configured to access the cache device according to the indication of the software definition module and the access address, to pass the The cache device accesses the storage device.
- the software definition module is specifically configured to include an advanced function service in a storage service corresponding to the I/O operation instruction, and
- the I/O operation instruction is a read operation instruction, instructing the operating system kernel to read read access data from the cache device according to the access address
- the operating system kernel is specifically configured to define a module according to the software And the access address, the read access data is read from the cache device, and the read access data is returned to the software definition module
- the software definition module is specifically configured to receive the operating system kernel return The read access data, performing an advanced function operation on the read access data according to the advanced function service included in the storage service corresponding to the I/O operation instruction, and performing the read access after performing the advanced function operation Data is sent to the application.
- the software definition module is specifically configured to include an advanced function service in a storage service corresponding to the I/O operation instruction, and
- the I/O operation instruction is a write operation instruction, perform an advanced function operation on the write data carried by the I/O operation instruction according to an advanced function service included in the storage service corresponding to the I/O operation instruction, and indicate Writing, by the operating system kernel, the access address and the write data after performing the advanced function operation to the cache device;
- the operating system kernel is specifically configured to: according to an instruction of the software definition module, The access address and the write data after performing the advanced function operation are written into the cache device, such that the cache device performs the write data after performing the advanced function operation according to the access address.
- the software definition module is specifically configured to receive the number of writes returned by the operating system kernel According to the result, the write data result is sent to the application.
- the software definition module is specifically configured to: when the storage service corresponding to the I/O operation instruction does not include an advanced function service, When the I/O operation instruction is a read operation instruction, the operating system kernel of the host is instructed to read read access data from the cache device according to the access address; the operating system kernel is specifically configured to be used according to the An instruction of the software definition module and the access address, reading read access data from the cache device, and returning the read access data to the software definition module; the software definition module is specifically configured to receive the operation The read access data returned by the system kernel, and the read access data is sent to the application.
- the software definition module is specifically configured to not include an advanced function service in a storage service corresponding to the I/O operation instruction, And when the I/O operation instruction is a write operation instruction, instructing the operating system kernel to write the access address and the write data carried by the I/O operation instruction into the cache device;
- the kernel is specifically configured to write the access address and the write data into the cache device according to an indication of the software definition module, so that the cache device writes the write data according to the access address
- the software definition module is specifically configured to receive a write returned by the operating system kernel The result of the data is sent to the application.
- an embodiment of the present invention provides a host that accesses a storage device, where the host includes a processor, a memory, a bus, and a communication interface;
- the memory is configured to store a computer execution instruction
- the processor is connected to the memory through the bus, and when the host is running, the processor executes the computer execution instruction stored in the memory, so that The method for accessing a storage device according to the first aspect, or the method for accessing a storage device according to any of the possible implementations of the first aspect.
- an embodiment of the present invention provides a computer readable medium, characterized in that: The method of accessing a storage device of the first aspect or the access storage device of any of the possible implementations of the first aspect, when the computer executes the instructions for execution by the processor of the computer. Methods.
- the software definition module running in the user space of the host can intercept an I/O operation instruction sent by the application of the host, and the I/O operation instruction carries an access address, which avoids the The I/O operation instruction is trapped in a kernel state, so that the software definition module can determine, according to the access address, a storage service corresponding to the I/O operation instruction, according to the storage service and the corresponding operation instruction of the I/O operation instruction.
- An I/O operation instruction instructing an operating system kernel of the host to access the storage device according to the access address, receiving an access result returned by the operating system kernel, and transmitting the access result to the application, to implement The application's access to the storage device.
- the software definition module runs in the user space, in the above process, only when the software definition module instructs the operating system kernel of the host to access the storage device, there is a kernel trap, and the software definition module receives the access result returned by the operating system kernel.
- There is a kernel trap that reduces the number of kernel traps and kernel traps when the application accesses the storage device, which improves access speed and improves system reliability.
- FIG. 1 is a schematic diagram of an SDS-based storage system
- FIG. 2 is a schematic diagram of an application accessing a storage device in the prior art
- FIG. 3 is a schematic diagram of a method for accessing a storage device according to an embodiment of the present invention
- FIG. 4 is a schematic diagram of an SDS-based storage system according to an embodiment of the present invention
- FIG. 6 is a flowchart of still another method for accessing a storage device according to an embodiment of the present invention
- FIG. 7 is a flowchart of a method for accessing a storage device according to an embodiment of the present invention
- FIG. 8 is a flowchart of another method for accessing a storage device according to an embodiment of the present invention
- FIG. 9 is a flowchart of an embodiment of the present invention.
- FIG. 10 is a schematic structural diagram of another host accessing a storage device according to an embodiment of the present invention. detailed description
- the embodiment of the invention provides a method for accessing a storage device, which can reduce the kernel trapping and kernel trapping times of the system when the application accesses the storage device, thereby improving the access speed and improving the system reliability.
- an SDS-based storage system may generally include a host and a storage device, and a software definition module (ie, a software definition layer) is configured in the host, and a typical storage controller in the storage hardware is integrated in the software definition module.
- the function can provide storage management such as volume management, and can cooperate with the storage device to provide storage services for upper-layer applications.
- the storage services provided by the software definition module and the storage device generally include not only data read/write services but also advanced function services (the advanced function services refer to functional services other than data read/write services). , such as data snapshots, intelligent tiering, deduplication or data compression.
- the storage device may be located at a remote end of the host, or may be set locally on the host, where the storage device may be a storage area network (SAN) or a network attached storage (NAS).
- SAN storage area network
- NAS network attached storage
- the workflow is generally as follows: 1) The application sends an input/output (also referred to as I/O, or 10) operation instruction to the operating system kernel; 2) the operating system The kernel provides the I/O operation instruction to the block/file driver of the operating system, and the block/file driver of the operating system converts the I/O operation instruction to the software definition module; 3) the software definition module is converted according to the The I/O operation instruction performs corresponding read/write access to the storage device; 4) the software definition module receives the access result returned by the storage device, and sends the result to the application to complete the access to the storage device.
- I/O input/output
- the software definition module receives the access result returned by the storage device, and sends the result to the application to complete the access to the storage device.
- both the application and the software-defined modules are implemented in user mode, that is, running in user space
- the block/file drivers of the operating system kernel and operating system are implemented in kernel mode, that is, running in kernel space
- step 1 In the case of switching from user mode to kernel mode, there is a kernel trap; in step 2), it needs to switch from kernel mode to user mode, there is a kernel trap; and when accessing the storage device in step 3), it needs to switch from user mode.
- the kernel state there is a kernel trap; in step 4), when receiving the access result, the kernel state needs to be switched to the user state, and there is a kernel trap, as shown in Figure 2.
- the kernel is trapped and the kernel is trapped, the longer the I/O path is. Therefore, multiple core traps and kernel traps will not only reduce I/O access speed, but also affect access efficiency and system reliability. .
- the embodiment of the invention provides a method for accessing a storage device, which can enhance the function of the application module, so as to avoid unnecessary kernel trapping and kernel trapping when the application accesses the storage device, that is, the prior art step 1) And 2) kernel traps and kernel traps, only retaining the necessary kernel traps and kernel traps, that is, kernel traps and kernel traps when accessing storage devices, thereby improving access speed and improving system reliability.
- the embodiment of the present invention provides a method for accessing a storage device, which is used in an SDS-based storage system, where the SDS-based storage system includes a host and the storage device. As shown in FIG. 3, the method includes:
- S301 The software definition module running in the user space in the host intercepts an input/output I/O operation instruction sent by an application of the host, where the I/O operation instruction carries an access address.
- the application running in the user space when accessing the storage device, will send an I/O operation instruction to the operating system in the host.
- the software definition module may intercept the I/O operation instruction before the I/O operation instruction reaches the operating system kernel, and avoid the I/O operation instruction because the software definition module runs in a user space. Fall into the kernel state.
- the software definition module determines, according to the access address, the pair of I/O operation instructions.
- the storage service should be.
- the software definition module needs to determine a storage service corresponding to the I/O operation instruction, so as to subsequently provide a storage service corresponding to the I/O operation instruction, and implement access of the application to the storage device.
- the storage service includes not only data read/write services, but also advanced function services (services other than data read/write services), such as data snapshots, intelligent layering, deduplication, or data. Compression and so on.
- the software definition module can determine the storage service corresponding to the I/O operation instruction according to the access address. Since the software definition module runs in the user space, the process of determining the storage service corresponding to the I/O operation instruction is implemented in the user space, thereby avoiding the sinking/trapping of the kernel.
- the software definition module may query a pre-configured address service mapping table according to the access address to determine a storage service corresponding to the I/O operation instruction; and the address service mapping table is used to record the storage.
- the address service mapping table may be configured in the software definition module by the operation and maintenance system, so that the software definition module may be configured according to the
- the access address is used to query a pre-configured address service mapping table to determine a storage service corresponding to the I/O operation instruction.
- the address of the element may also be the address of a part of the storage unit in the storage device.
- the address of the storage device may be in the form of a logical address or may be presented in other forms, which is not limited herein.
- the software definition module is configured according to the storage service corresponding to the I/O operation instruction and the An I/O operation instruction instructing an operating system kernel of the host to access the storage device according to the access address.
- the kernel of the operating system When accessing the storage device, the kernel of the operating system may be utilized, and the software definition module may indicate the host according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction.
- the operating system kernel accesses the storage device based on the access address. Since the operating system kernel runs in kernel space and needs to be in kernel space when accessing the storage device, the storage system will switch from user mode to kernel state, and a kernel trap will occur.
- the I/O operation instruction may be a read operation instruction, and may also be a write operation instruction. If the storage service corresponding to the I/O operation instruction does not include an advanced function service, the software definition module only needs to be based on The I/O operation instruction, indicating that the operating system kernel of the host performs read/write access to the storage device according to the access address; if the storage service corresponding to the I/O operation instruction includes an advanced function service, The software definition module may perform, according to the storage service corresponding to the I/O operation instruction, perform a corresponding advanced function operation on data that needs to be written into the storage device, and then instruct the operating system kernel to perform the The processed data is written to the storage device, or the software definition module may instruct the operating system kernel to read data from the storage device according to the access address, and then read from the storage device The retrieved data performs the corresponding advanced function operations.
- the software definition module may perform a data compression operation on data that needs to be written to the storage device, and then compress the data. The subsequent data is written to the storage device.
- S304 The software definition module receives an access result returned by the operating system kernel.
- the software definition module may receive an access result returned by the operating system kernel. Because the software definition module runs in a user space, the operating system kernel runs in a kernel space, and the storage system switches from a kernel state to a user state. , a kernel trap occurs.
- S305 The software definition module sends the access result to the application.
- the software definition module When the storage service corresponding to the I/O operation instruction does not include the advanced function operation, the software definition module is straight And sending the access result returned by the operating system kernel to the application to complete access to the storage device; if the storage service corresponding to the I/O operation instruction includes an advanced function service, The software definition module may need to perform corresponding advanced function operations on the access result (eg, data read from the storage device) before sending the application to the application to complete access to the storage device. For example, if the advanced function service included in the storage service corresponding to the I/O operation instruction is data compression, the software definition module may perform a data compression operation on the data read from the storage device, and then send Give the application.
- the access result eg, data read from the storage device
- Both the software definition module and the application run in the user space, avoiding kernel trapping/sinking.
- the software definition module running in the user space of the host can intercept an I/O operation instruction sent by the application of the host, and the I/O operation instruction carries an access address, which avoids the The I/O operation instruction is trapped in a kernel state, so that the software definition module can determine, according to the access address, a storage service corresponding to the I/O operation instruction, according to the storage service and the corresponding operation instruction of the I/O operation instruction.
- An I/O operation instruction instructing an operating system kernel of the host to access the storage device according to the access address, receiving an access result returned by the operating system kernel, and transmitting the access result to the application, to implement The application's access to the storage device.
- the software definition module runs in the user space, in the above process, only when the software definition module instructs the operating system kernel of the host to access the storage device, there is a kernel trap, and the software definition module receives the access result returned by the operating system kernel.
- There is a kernel trap that reduces the number of kernel traps and kernel traps when the application accesses the storage device, which improves access speed and improves system reliability.
- the host and storage device described in the first embodiment may be 11 and 12 in the SDS-based storage system shown in Fig. 1, respectively.
- the cache device 411 can also be added to the storage device 12 shown in FIG. 1, thereby obtaining the storage device 40.
- the storage device 40 includes the cache device 411 and the storage device 12 (ie, the storage device 12 in FIG. 1). ).
- the cache device may be disposed locally on the host, and the cache device may be a cache device (eg, a non-volatile memory chip NVDIMM, a non-volatile random access memory NVRAM), or a disk device or the like; when the storage device is set locally on the host, the cache device may be set locally on the host, and the cache device may be a cache device.
- the software definition module can instruct the operating system kernel to access the cache device to access the storage device through the cache device, thereby increasing access speed. For example, if it is necessary to write data to the storage device, the software definition module may instruct the operating system kernel to write write data to the cache device, and subsequently write the write data to the storage device by the cache device, Access speed; if it is required to read data from the storage device, the software definition module may instruct the operating system kernel to read data from the cache device, if the cache device has saved data that needs to be read, The cache device may directly provide the data to be read, and improve the access speed. If the cache device does not store the data to be read, the cache device may obtain the data from the storage device. The data that needs to be read is given to the operating system kernel. Therefore, step S303 of the first embodiment can be replaced by:
- S303' the software definition module instructs the operating system kernel of the host to access the cache device according to the access address according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction, to The storage device is accessed by the cache device.
- Embodiment 2 the software definition module instructs the operating system kernel of the host to access the cache device according to the access address according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction, to The storage device is accessed by the cache device.
- the embodiment of the present invention provides a method for accessing a storage device, which is used for an SDS-based storage system, where the SDS-based storage system includes a host and a storage device, and an I/O operation delivered by an application in the host
- the software definition module may access the storage device by using the method described in the embodiment of the present invention, as shown in FIG. 5. As shown, the method includes:
- S501 The software definition module running in the user space in the host intercepts the application of the host An I/O operation instruction sent by the program, the I/O operation instruction carrying an access address.
- the software definition module may intercept the I/O operation instruction before the I/O operation instruction reaches the operating system kernel, and the I/O operation is avoided because the software definition module runs in a user space. The instruction falls into the kernel state.
- the manner in which the software definition module intercepts the I/O operation instruction may be various, and specifically, the following manner may be employed.
- Method 1 When the application uses the dynamic link library to link the operating system library of the operating system, the dynamic link library preloading method can be used to intercept the I/O operation instructions of the application.
- the principle is as follows: General application In the runtime environment, interfaces are provided to specify the dynamic link library that is loaded first when the program is running. By default, the application's I/O operations preferentially load the operating system's dynamic link library. Therefore, the dynamic link library issued by the software definition module can be set to be preferentially loaded by using the provided interface, so that when the application performs the I/O operation, the interface provided by the software definition module is loaded, thereby realizing the application sending. 10 interception of operation instructions.
- the dynamic link library that is preferentially loaded by the program runtime can be specified by the environment variable LD_PreLOAD, so that the load order of the dynamic link library released by the software definition module can be higher than that of the operating system by using LD-PRELOAD.
- Dynamic link library in a Linux system, the dynamic link library that is preferentially loaded by the program runtime can be specified by the environment variable LD_PreLOAD, so that the load order of the dynamic link library released by the software definition module can be higher than that of the operating system by using LD-PRELOAD.
- Method 2 When the application uses the static link library to link the operating system library of the operating system, you can use the application link process control method, set the priority resolution symbol, and intercept the I/O operation instruction of the application.
- the application performs I/O operations, the operating system's symbol ( symbol ) is prioritized. Since the regular compiler provides symbol-first parsing control parameters during application compilation and linking, the symbol-first parsing control parameters can be set so that when the application's I/O operations need to find a symbol, it will take precedence.
- the symbol of the software-defined module is parsed first, instead of prioritizing the symbol of the operating system, and the interception of the I/O operation instruction of the application is realized.
- the operating system's standard library is called.
- Can The standard library of the operating system is replaced with a private standard library published by the software definition module, which is binary level (ABI) compatible with the standard library of the operating system.
- ABSI binary level
- I/O operation instruction may be intercepted by the software definition module in other manners, and the embodiment of the present invention is not limited herein.
- the software definition module determines, according to the access address, a storage service corresponding to the I/O operation instruction.
- the software definition module queries a pre-configured address service mapping table according to the access address to determine a storage service corresponding to the I/O operation instruction, where the address service mapping table is used to record the storage device.
- the address service mapping table may be configured in the software definition module by using the operation and maintenance system, so that the software definition module may query the pre-configured address service mapping table according to the access address. Determining a storage service corresponding to the I/O operation instruction.
- the address of the element may also be the address of a part of the storage unit in the storage device.
- the address of the storage device may be in the form of a logical address or may be presented in other forms, which is not limited herein.
- S503 When the storage service corresponding to the I/O operation instruction includes an advanced function service, and the I/O operation instruction is a read operation instruction, the software definition module instructs the operating system kernel to optionally
- the storage device includes a cache device and a storage device, and S503 may be further replaced with S503': the software definition module instructs the operating system kernel to read read access data from the cache device according to the access address.
- the cache device If the read access data is saved in the cache device, the cache device returns its own cached read access data to the operating system kernel, which improves the access speed; If the read access data corresponding to the access address is not stored in the device, the cache device reads the read access data from the storage device according to the access address, and returns the read access data to the operating system kernel.
- S504 The software definition module receives the read access data returned by the operating system kernel.
- S505 The software definition module performs an advanced function operation on the read access data according to an advanced function service included in the storage service corresponding to the I/O operation instruction.
- S506 The software definition module sends the read access data after performing the advanced function operation to the application.
- the software definition module in the host can include an advanced function service in the storage service corresponding to the I/O operation instruction delivered by the application in the host, and the I/O operation instruction is read.
- the application accesses the storage device when the instruction is manipulated.
- the software definition module instructs the operating system kernel of the host to read the access data from the storage device according to the access address, there is a kernel trap, and the software definition module receives the read returned by the operating system kernel.
- there is a kernel trap that reduces the number of kernel traps and kernel traps when the application accesses the storage device, thereby increasing access speed and improving system reliability.
- the storage device may further include a cache device and a storage device, so that the software definition module may instruct the operating system kernel of the host to read read access data from the cache device according to the access address, further improve The speed of access.
- the embodiment of the present invention provides a method for accessing a storage device, which is used for an SDS-based storage system, where the SDS-based storage system includes a host and a storage device, and an I/O operation delivered by an application in the host
- the software definition module may access the storage device by using the method described in the embodiment of the present invention.
- S601 The software definition module running in the user space in the host intercepts the application of the host An I/O operation instruction sent by the program, the I/O operation instruction carrying an access address.
- the software definition module determines, according to the access address, a storage service corresponding to the I/O operation instruction.
- the software definition module encrypts data according to an advanced function service included in the storage service corresponding to the I/O operation instruction, the software definition module performs a data encryption operation on the write data.
- S604 The software definition module instructs the operating system kernel to write the write data after performing the advanced function operation to the storage device according to the access address.
- S604 may also be replaced with S604': the software definition module instructs the operating system kernel to operate the access address and the performing advanced function The write data is written into the cache device such that the cache device writes the write data after performing the advanced function operation to the storage device according to the access address.
- the software definition module instructs the operating system kernel to write the write data after performing the advanced function operation to the cache device, which improves the access speed.
- S605 The software definition module receives a write data result returned by the operating system kernel.
- S606 The software definition module sends the write data result to the application.
- the software definition module in the host can include an advanced function service in the storage service corresponding to the I/O operation instruction delivered by the application in the host, and the I/O operation instruction is write The application accesses the storage device when the instruction is manipulated. And only in the When the software definition module instructs the operating system kernel of the host to write the write data after performing the advanced function operation to the storage device, there is a kernel trap, and the software definition module receives the write data returned by the operating system kernel. As a result, there is a kernel trap that reduces the number of kernel traps and kernel traps when the application accesses the storage device, thereby increasing access speed and improving system reliability.
- the storage device may further include a cache device and a storage device, so that the software definition module may instruct the operating system kernel to write the write data after performing the advanced function operation into the cache device, so that The cache device writes the write data after performing the advanced function operation to the storage device, further improving the access speed.
- the software definition module may instruct the operating system kernel to write the write data after performing the advanced function operation into the cache device, so that The cache device writes the write data after performing the advanced function operation to the storage device, further improving the access speed.
- the embodiment of the present invention provides a method for accessing a storage device, which is used for an SDS-based storage system, where the SDS-based storage system includes a host and a storage device, and an I/O operation delivered by an application in the host
- the software definition module may access the storage device by using the method described in the embodiment of the present invention.
- S701 The software definition module running in the user space in the host intercepts an I/O operation instruction sent by an application of the host, where the I/O operation instruction carries an access address.
- the software definition module determines, according to the access address, a storage service corresponding to the I/O operation instruction.
- the software definition module indicates the operation of the host if the storage
- the device includes a cache device and a storage device, and the S703 can also be replaced with
- S703' the software definition module instructs the operating system kernel to follow the access address The read access data is read in the cache device.
- the cache device If the read access data is saved in the cache device, the cache device returns its cached read access data to the operating system kernel, which improves the access speed; if the cache device does not save the access The read access data corresponding to the address, the cache device reads the read access data from the storage device according to the access address, and returns the read access data to the operating system kernel.
- S704 The software definition module receives the read access data returned by the operating system kernel.
- S705 The software definition module sends the read access data to the application.
- the software definition module in the host is capable of not including the advanced function service in the storage service corresponding to the I/O operation instruction delivered by the application in the host, and the I/O operation instruction is When the operation instruction is read, the application accesses the storage device. And only when the software definition module instructs the operating system kernel of the host to read the read access data from the storage device according to the access address, there is a kernel trapping, and the software definition module receives the return from the operating system kernel. When reading access data, there is a kernel trap that reduces the number of kernel traps and kernel traps when the application accesses the storage device, thereby improving access speed and improving system reliability.
- the storage device may further include a cache device and a storage device, so that the software definition module may instruct the operating system kernel of the host to read the read access data from the cache device according to the access address, and further Increased access speed.
- the embodiment of the present invention provides a method for accessing a storage device, which is used for an SDS-based storage system, where the SDS-based storage system includes a host and a storage device, and an I/O operation delivered by an application in the host
- the software definition module may access the storage device by using the method described in the embodiment of the present invention.
- S801 The software definition module running in the user space in the host intercepts the application of the host An I/O operation instruction sent by the program, the I/O operation instruction carrying an access address.
- the software definition module determines, according to the access address, a storage service corresponding to the I/O operation instruction.
- S804 may also be replaced with S804': the software definition module instructs the operating system kernel to write the access address and the write data to The cache device, wherein the cache device writes the write data into the storage device according to the access address.
- the software definition module instructs the operating system kernel to write the write data into the cache device to increase access speed.
- the software definition module receives a write data result returned by the operating system kernel.
- S805 The software definition module sends the write data result to the application.
- the software definition module in the host is capable of not including the advanced function service in the storage service corresponding to the I/O operation instruction delivered by the application in the host, and the I/O operation instruction is When the operation instruction is read, access by the application to the storage device is implemented. And only if the software definition module instructs the operating system kernel of the host to write the write data to the storage device according to the access address, there is a kernel trapping, and the software definition module receives the operating system kernel to return When writing data results, there is a kernel trap that reduces the number of kernel traps and kernel traps when the application accesses the storage device, thereby improving access speed and improving system reliability.
- the storage device may further include a cache device and a storage device, so that the software definition module may instruct the operating system kernel of the host to write the access address and the write data to the cache device, so that The cache device will be based on the access address The write data is written to the storage device, which further improves the access speed.
- the software definition module may instruct the operating system kernel of the host to write the access address and the write data to the cache device, so that The cache device will be based on the access address The write data is written to the storage device, which further improves the access speed.
- An embodiment of the present invention provides a host for accessing a storage device, and is configured to store a storage system based on a software definition.
- the host 90 includes a software definition module 901, an application program 902, and an operating system kernel 903.
- the software definition module 901 runs in a user space of the host 90;
- the software definition module 901 is configured to intercept an input/output I/O operation instruction sent by the application 902, where the I/O operation instruction carries an access address, and the I/O operation instruction is determined according to the access address.
- Corresponding storage service instructing the operating system kernel 903 to access the storage device in the SDS-based storage system according to the access address according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction .
- the storage service corresponding to the I/O operation instruction may include a data read/write service, and may also include an advanced function service (the advanced function service refers to a service other than a data read/write service), such as a data snapshot, an intelligent Layering, deduplication or data compression.
- the software definition module 901 may intercept the I/O operation instruction before the I/O operation instruction reaches the operating system kernel 903, and the I/O operation instruction is avoided because the software definition module 901 operates in a user space.
- the O operation instruction falls into the kernel state.
- the operating system kernel 903 is configured to access the storage device according to the indication of the software definition module 901 and the access address, and return an access result to the software definition module 901; the software definition module 901 is configured to receive The access result returned by the operating system kernel 903 sends the access result to the application 902.
- the above application 902 accesses the storage device only once for kernel trapping and one kernel trapping, which reduces the kernel trapping and kernel trapping time when the application 902 accesses the storage device, thereby improving access speed and improving system reliability.
- the manner in which the software definition module 901 intercepts the I/O operation instruction may be multiple; for example, the software definition module 901 may use the static link library when the application 902 uses the party.
- the application 902 links the process control to intercept the I/O operation instruction sent by the application 902; the principle is as follows: In the general application 902 operating environment, the interface is provided. A dynamic link library that is loaded first when the specified program runs. By default, the application 902's I/O operations preferentially load the operating system's dynamic link library.
- the dynamic link library issued by the software definition module 901 can be set to be preferentially loaded by using the provided interface, so that when the application 902 performs an I/O operation, the dynamic link provided by the software definition module 901 is loaded.
- the library thereby implementing the interception of the 10 operation instructions sent by the application 902; for example, the software definition module 901 can use the dynamic link library to preload when the application 902 links the operating system by using a dynamic link library.
- the I/O operation instruction sent by the application 902 is intercepted; the principle is as follows: By default, when the application 902 performs an I/O operation, the operating system symbol (symbol) is preferentially parsed.
- the symbol-first parsing control parameters can be set so that when the I/O operation of the application 902 needs to find a symbol,
- the symbol of the software definition module 901 will be parsed first, instead of preferentially parsing the symbol of the operating system, and the interception of the I/O operation instruction of the application 902 is realized; for example, by default, the application 902 performs I/O operations.
- the standard library of the operating system is called.
- the standard library of the operating system can be replaced with a private standard library issued by the software definition module 901, which is binary level (ABI) compatible with the standard library of the operating system.
- ABSI binary level
- the software definition module 901 may specifically query the pre-configured address service mapping table according to the access address to determine a storage service corresponding to the I/O operation instruction, where the address service mapping table is used to record the storage device.
- the correspondence between the address and the storage service may be in the form of a logical address, or may be presented in other forms, which is not limited herein.
- the software definition module 901 may include, when the storage service corresponding to the I/O operation instruction includes an advanced function service, and the I/O operation instruction is a read operation instruction, indicating that the operating system kernel 903 can be Reading the read access data from the storage device according to the indication of the software definition module 901 and the access address, and returning the read access data to the software definition module 901; the software definition module 901 may Receiving the read access data returned by the operating system kernel 903, performing an advanced function operation on the read access data according to an advanced function service included in the storage service corresponding to the I/O operation instruction, and performing the advanced function The read access data after the function operation is sent to the application 902;
- the software definition module 901 may include an advanced function service in a storage service corresponding to the I/O operation instruction, and when the I/O operation instruction is a write operation instruction, according to the storage corresponding to the I/O operation instruction An advanced function service included in the service, performing an advanced function operation on the write data carried by the I/O operation instruction, instructing the operating system kernel 903 to perform the write data after the performing the advanced function operation according to the access address Writing to the storage device; the operating system kernel 903 can write the write data to the storage device according to the indication of the software definition module 901 and the access address, and receive the storage device Returning the write data result, returning the write data result to the software definition module 901; the software definition module 901 may receive the write data result returned by the operating system kernel 903, and send the write data result to the Application 902;
- the software definition module 901 may indicate the operating system kernel of the host when the storage service corresponding to the I/O operation instruction does not include the advanced function service, and the I/O operation instruction is a read operation instruction.
- the reading access data is read from the storage device according to the indication of the software definition module 901 and the access address, and the read access data is returned to the software definition module 901; the software definition module The 901 may receive the read access data returned by the operating system kernel 903, and send the read access data to the application 902;
- the software definition module 901 may indicate that the operating system kernel 903 is in accordance with the operation function when the storage service corresponding to the I/O operation instruction does not include the advanced function service, and the I/O operation instruction is a write operation instruction.
- the access address writes the write data to the storage device; then the operating system kernel 903 can write the write data to the storage device according to the indication of the software definition module 901 and the access address Receiving the result of the write data returned by the storage device, and returning the result of the write data to the software definition module 901; the software definition module 901 may receive the result of the write data returned by the operating system kernel 903, The result of the write data is sent to the application 902 to complete the access to the storage device.
- the storage device may include a cache device and a storage device; then the software definition module 901 may be configured to use a corresponding storage service and the I/O according to the I/O operation instruction.
- An operation instruction indicating that the operating system kernel 903 of the host accesses the cache device according to the access address; the operating system kernel 903 may be configured to access the according to the indication of the software definition module 901 and the access address.
- a cache device to access the storage device through the cache device.
- the software definition module 901 may indicate that the operating system kernel 903 is in accordance with the high-performance function service when the I/O operation instruction corresponding to the I/O operation instruction is a read operation instruction. Reading the access data from the cache device; the operating system kernel 903 can read the read access data from the cache device according to the indication of the software definition module 901 and the access address, And returning the read access data to the software definition module 901; the software definition module 901 may receive the read access data returned by the operating system kernel 903, and according to the storage service corresponding to the I/O operation instruction The advanced function service included in the module performs an advanced function operation on the read access data, and sends the read access data after the performing the advanced function operation to the application 902.
- the software definition module 901 may include an advanced function service in a storage service corresponding to the I/O operation instruction, and when the I/O operation instruction is a write operation instruction, corresponding to the I/O operation instruction.
- Advanced function services included in the storage service carrying the I/O operation instructions
- Writing data performs an advanced function operation, instructing the operating system kernel 903 to write the access address and the write data after performing the advanced function operation into the cache device;
- the operating system kernel 903 can Writing the access address and the write data after performing the advanced function operation to the cache device according to an instruction of the software definition module 901, so that the cache device according to the access address Writing the write data after performing the advanced function operation to the storage device, receiving the write data result returned by the cache device, and returning the write data result to the software definition module 901;
- the software definition The module 901 can receive the write data result returned by the operating system kernel 903, and send the write data result to the application 902.
- the software definition module 901 may indicate an operating system kernel of the host when the storage service corresponding to the I/O operation instruction does not include an advanced function service, and the I/O operation instruction is a read operation instruction.
- the read access data is read from the cache device according to the access address; then the operating system kernel 903 can read and read from the cache device according to the indication of the software definition module 901 and the access address. Accessing the data, and returning the read access data to the software definition module 901; the software definition module 901 can receive the read access data returned by the operating system kernel 903, and send the read access data to the The application 902 is described.
- the software definition module 901 may indicate that the operating system kernel 903 will be used when the storage service corresponding to the I/O operation instruction does not include the advanced function service, and the I/O operation instruction is a write operation instruction.
- the access address and the write data carried by the I/O operation instruction are written into the cache device; then the operating system kernel 903 may, according to the instruction of the software definition module 901, the access address and the location Writing data to the cache device, so that the cache device writes the write data to the storage device according to the access address, and receives a write data result returned by the cache device,
- the result of the data is returned to the software definition module 901; the software definition module 901 can receive the result of the write data returned by the operating system kernel 903, and send the result of the write data to the application 902.
- the software definition module 901 running in the user space in the host can An I/O operation instruction sent by the application 902 of the host is intercepted, and the I/O operation instruction carries an access address, so that the I/O operation instruction is prevented from falling into a kernel state, so that the software definition module 901 can Determining, according to the access address, a storage service corresponding to the I/O operation instruction, instructing the operating system kernel 903 of the host according to the storage service corresponding to the I/O operation instruction and the I/O operation instruction
- the access address accesses the storage device, receives an access result returned by the operating system kernel 903, and sends the access result to the application 902, thereby implementing access of the application 902 to the storage device.
- the software definition module 901 runs in the user space, in the above process, only when the software definition module 901 indicates that the operating system kernel 903 of the host accesses the storage device, there is a kernel trap, and the software definition module 901 receives the operating system kernel 903. There is a kernel trap in the returned access result, which reduces the kernel trap and kernel trap times of the application 902 when accessing the storage device, thereby improving access speed and improving system reliability.
- the storage device may further include a cache device and a storage device, so that the software definition module 901 may indicate the access address of the operating system kernel 903 of the host according to the storage service corresponding to the I/O operation instruction. Accessing the cache device to access the storage device through the cache device further improves access speed.
- FIG. 10 is a host for accessing a storage device according to an embodiment of the present invention. The host may include:
- a processor 1001 a memory 1002, a system bus 1004, and a communication interface 1005.
- the memory 1002 and the communication interface 1005 are connected through the system bus 1004 and complete communication with each other.
- Processor 1001 may be a single core or multi-core central processing unit, or a particular integrated circuit, or one or more integrated circuits configured to implement embodiments of the present invention.
- the memory 1002 can be a high speed RAM memory or a nonvolatile memory.
- non-volatile memory at least one disk storage device.
- the memory 1002 is used by the computer to execute the instructions 1003.
- the program code may be included in the computer execution instruction 1003.
- the processor 1001 runs the computer execution instruction 1003, and may execute the method flow of the method for accessing the storage device according to any one of Embodiments 1 to 5.
- the embodiment of the present invention further provides a computer readable medium, comprising: computer execution instructions, when the processor of the computer executes the computer execution instruction, the computer performs the access storage according to any one of Embodiments 1 to 5. Method flow of the method of the device.
- aspects of the invention, or possible implementations of various aspects may be in the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, etc.), or a combination of software and hardware aspects, They are collectively referred to herein as "circuits," “modules,” or “systems.”
- aspects of the invention, or possible implementations of various aspects may take the form of a computer program product, which is a computer readable program code stored on a computer readable medium.
- the computer readable medium can be a computer readable signal medium or a computer readable storage medium.
- the computer readable storage medium includes, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any suitable combination of the foregoing, such as random access memory (RAM), read only memory (ROM), Erase programmable read-only memory (EPROM or flash memory), optical fiber, portable read-only memory (CD-ROM:).
- the processor in the computer reads the computer readable program code stored in the computer readable medium, such that the processor can perform the functional actions specified in each step or combination of steps in the flowchart; A device that functions as specified in each block, or combination of blocks.
- the computer readable program code can execute entirely on the user's computer, partly on the user's computer, as a separate software package, partly on the user's computer and partly on the remote computer, or entirely on the remote computer or computer. . It should also be noted that in some In the implementations, the functions noted in the various steps of the flowchart or in the blocks of the block diagrams may not occur in the order noted in the drawings. For example, two steps, or two blocks shown in succession may be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
L'invention concerne un procédé d'accès à un dispositif de stockage, et un hôte. Un module défini par logiciel fonctionnant dans un espace utilisateur dans un hôte peut intercepter une instruction d'opération I/O envoyée par un programme d'application de l'hôte, l'instruction d'opération I/O transportant une adresse d'accès (S301), cela empêchant l'instruction d'opération I/O de piéger un état du noyau, de sorte que le module défini par logiciel peut déterminer un service de stockage correspondant à l'instruction d'opération I/O conformément à l'adresse d'accès (S302), ordonner à un noyau d'un système d'exploitation de l'hôte d'accéder au dispositif de stockage selon le service de stockage correspondant à l'instruction d'opération I/O, l'instruction d'opération I/O et l'adresse d'accès (S303) ; recevoir un résultat d'accès renvoyé par le noyau du système d'exploitation (S304), et envoyer le résultat d'accès au programme d'application (S305) et par conséquent, faire en sorte que le programme d'application accède au dispositif de stockage. Lors de ce processus, il ne se produit qu'un seul piégeage en entrée du noyau et qu'un seul piégeage en sortie du noyau, cela réduisant le nombre de fois où un piégeage en entrée et un piégeage en sortie du noyau du système sont effectués lorsque le programme d'application accède au dispositif de stockage, et améliore la vitesse d'accès.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2014/081214 WO2016000147A1 (fr) | 2014-06-30 | 2014-06-30 | Procédé d'accès à un dispositif de stockage, et hôte |
| CN201480002085.5A CN105830038B (zh) | 2014-06-30 | 2014-06-30 | 一种访问存储设备的方法和主机 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2014/081214 WO2016000147A1 (fr) | 2014-06-30 | 2014-06-30 | Procédé d'accès à un dispositif de stockage, et hôte |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2016000147A1 true WO2016000147A1 (fr) | 2016-01-07 |
Family
ID=55018241
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2014/081214 Ceased WO2016000147A1 (fr) | 2014-06-30 | 2014-06-30 | Procédé d'accès à un dispositif de stockage, et hôte |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN105830038B (fr) |
| WO (1) | WO2016000147A1 (fr) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116107764A (zh) * | 2023-04-03 | 2023-05-12 | 阿里云计算有限公司 | 数据处理方法及系统 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050091476A1 (en) * | 1999-07-01 | 2005-04-28 | International Business Machines Corporation | Apparatus for supporting a logically partitioned computer system |
| CN1655129A (zh) * | 2005-02-25 | 2005-08-17 | 清华大学 | Windows平台下动态管理存储资源的通用方法 |
| CN102696020A (zh) * | 2009-11-16 | 2012-09-26 | 赛门铁克公司 | 基于可配置缓存映射的选择性文件系统缓存 |
| CN103246542A (zh) * | 2012-02-01 | 2013-08-14 | 中兴通讯股份有限公司 | 智能缓存及智能终端 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9069553B2 (en) * | 2011-09-06 | 2015-06-30 | Marvell World Trade Ltd. | Switching tasks between heterogeneous cores |
| CN103391256B (zh) * | 2013-07-25 | 2016-01-13 | 武汉邮电科学研究院 | 一种基于Linux系统的基站用户面数据处理优化方法 |
| CN103647658B (zh) * | 2013-11-27 | 2016-12-07 | 华为技术有限公司 | 一种软件定义网络系统中网络设备的管理方法和控制器 |
-
2014
- 2014-06-30 WO PCT/CN2014/081214 patent/WO2016000147A1/fr not_active Ceased
- 2014-06-30 CN CN201480002085.5A patent/CN105830038B/zh active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050091476A1 (en) * | 1999-07-01 | 2005-04-28 | International Business Machines Corporation | Apparatus for supporting a logically partitioned computer system |
| CN1655129A (zh) * | 2005-02-25 | 2005-08-17 | 清华大学 | Windows平台下动态管理存储资源的通用方法 |
| CN102696020A (zh) * | 2009-11-16 | 2012-09-26 | 赛门铁克公司 | 基于可配置缓存映射的选择性文件系统缓存 |
| CN103246542A (zh) * | 2012-02-01 | 2013-08-14 | 中兴通讯股份有限公司 | 智能缓存及智能终端 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116107764A (zh) * | 2023-04-03 | 2023-05-12 | 阿里云计算有限公司 | 数据处理方法及系统 |
| CN116107764B (zh) * | 2023-04-03 | 2023-09-26 | 阿里云计算有限公司 | 数据处理方法及系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN105830038A (zh) | 2016-08-03 |
| CN105830038B (zh) | 2019-03-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10877940B2 (en) | Data storage with a distributed virtual array | |
| CN109791471B (zh) | 虚拟化外围装置处的非易失性存储装置 | |
| US9740439B2 (en) | Solid-state storage management | |
| TWI621023B (zh) | 用於支持對經由nvme控制器、通過網路存取的遠端存儲設備的熱插拔的系統和方法 | |
| JP5658197B2 (ja) | 計算機システム、仮想化機構、及び計算機システムの制御方法 | |
| EP3660686B1 (fr) | Procédé et dispositif de transmission d'une demande de traitement de données | |
| US9298375B2 (en) | Method and apparatus for returning reads in the presence of partial data unavailability | |
| US10275175B2 (en) | System and method to provide file system functionality over a PCIe interface | |
| CN105739930A (zh) | 一种存储架构及其初始化方法和数据存储方法及管理装置 | |
| KR20080031150A (ko) | 로컬 버스 트래픽이 감소된 디스크 드라이브 동작들을 위한지능형 스토리지 엔진 | |
| US9424205B2 (en) | System and method for SATA virtualization and domain protection | |
| EP4148572B1 (fr) | Dispositif de stockage informatique et système de stockage comprenant le dispositif de stockage informatique | |
| KR20210043001A (ko) | 하이브리드 메모리 시스템 인터페이스 | |
| US9959050B2 (en) | In-memory data storage with transparent compression | |
| WO2017157145A1 (fr) | Procédé et dispositif de pré-extraction de données | |
| KR20220077208A (ko) | 데이터 중복 제거 기능을 갖는 스토리지 장치, 스토리지 장치의 동작 방법, 및 스토리지 서버의 동작 방법 | |
| US8489686B2 (en) | Method and apparatus allowing scan of data storage device from remote server | |
| US9940155B1 (en) | Protocol endpoint object duality | |
| KR20210054732A (ko) | 객체 스토리지 장치 및 이를 이용한 데이터 저장방법 | |
| US20250085999A1 (en) | Inter-core communication method and apparatus, computer equipment and computer-readable storage medium | |
| US20220121359A1 (en) | System and method to utilize a composite block of data during compression of data blocks of fixed size | |
| WO2016000147A1 (fr) | Procédé d'accès à un dispositif de stockage, et hôte | |
| US20200151118A1 (en) | Method and apparatus for offloading file i/o based on remote direct memory access using unikernel | |
| WO2021052230A1 (fr) | Système de stockage, nœud de stockage et procédé de stockage de données | |
| US10530870B2 (en) | Direct volume migration in a storage area network |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14896664 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 14896664 Country of ref document: EP Kind code of ref document: A1 |