CN117389470A - NVME solid state disk simulation method - Google Patents
NVME solid state disk simulation method Download PDFInfo
- Publication number
- CN117389470A CN117389470A CN202311298259.4A CN202311298259A CN117389470A CN 117389470 A CN117389470 A CN 117389470A CN 202311298259 A CN202311298259 A CN 202311298259A CN 117389470 A CN117389470 A CN 117389470A
- Authority
- CN
- China
- Prior art keywords
- nvme
- virtual
- command
- kernel module
- pcie
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000004088 simulation Methods 0.000 title claims abstract description 24
- 239000007787 solid Substances 0.000 title claims description 19
- 238000012545 processing Methods 0.000 claims description 28
- 230000009471 action Effects 0.000 claims description 15
- 230000008859 change Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 9
- 238000004422 calculation algorithm Methods 0.000 claims description 4
- 238000012360 testing method Methods 0.000 abstract description 11
- 238000011161 development Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0664—Virtualisation aspects at device level, e.g. emulation of a storage device or system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
Abstract
The invention relates to the field of hard disk testing, in particular to an NVME testing method. The method comprises the steps of writing a virtual NVME kernel module, simulating and realizing a virtual PCIE bus and a virtual PCIE device by the virtual NVME kernel module, simulating and realizing a PCIE device configuration space, wherein the virtual PCIE device is identified as the NVME device. And then calling a system interface, adding a virtual PCIE bus and PCIE equipment into a PCIE bus tree of the system, and when the PCIE subsystem executes bus scanning operation, calling a driver of the NVME to initialize the virtual PCIE equipment when detecting that the equipment type in the virtual equipment configuration space is NVME. The invention is more similar to the simulation environment of the real physical equipment, the FIO tool of the system is directly used for driving, the time for writing the software simulation case by the user is reduced, and the invention can directly share a set of test cases with the real physical environment.
Description
Technical Field
The invention relates to the field of hard disk testing, in particular to an NVME solid state disk simulation method.
Background
With the increasing demand for high performance, high efficiency storage devices, NVME interfaces are becoming more and more widely used due to their flexibility and scalability. In the development process of the NVME solid state disk, the FTL (Flash Translation Layer) software algorithm of the solid state disk is high in complexity and long in development period. The traditional simulation platform can only simulate test excitation through software and can not be in butt joint with NVME (network video frequency memory) drive of a system, and simulated test cases can only be simulated and written through software, so that the problems of low coverage, low development efficiency and large difference of actual application scenes exist.
In order to accelerate the development of solid state disk production, a simulation platform independent of hardware resources is urgently needed, and the simulation platform is required to be closer to a real application scene, and can be driven by directly using a FIO tool of a system. The invention realizes a simulation platform which is seen from the user's perspective and is the same as the real physical equipment.
Disclosure of Invention
Aiming at the defects of the prior art, the invention provides the NVME solid state disk simulation method which is closer to the simulation environment of the real physical equipment, is driven by directly using the FIO tool of the system, reduces the time for writing the software simulation case by oneself, and can directly share a set of test cases with the real physical environment.
In order to solve the technical problems, the invention adopts the following technical scheme: a simulation method of NVME solid state disk comprises the following steps:
1. writing a virtual NVME kernel module, wherein the virtual NVME kernel module simulates and realizes a virtual PCIE bus and a virtual PCIE device, simulates and realizes a PCIE device configuration space, and the virtual PCIE device is identified as NVME device;
2. and calling a system interface, adding a virtual PCIE bus and PCIE equipment into a PCIE bus tree of the system, and when the PCIE subsystem executes bus scanning operation, and detecting that the equipment type in the virtual equipment configuration space is NVME, calling a driver of the NVME to initialize the virtual PCIE equipment.
Further, the step of simulating and implementing the virtual PCIE device by the virtual NVME kernel module is:
s01), loading a kernel command, and loading a written virtual NVME kernel module, wherein the virtual NVME kernel module waits for a user-state simulation program to send a start creation message;
s02), running a simulation program of a user mode, and sending a start creation message;
s03), the virtual NVME kernel module executes and creates relevant codes of virtual PCIE equipment when receiving a start creation message sent by the user mode simulation program, virtualizes one PCIE equipment and adds the virtualized PCIE equipment into a PCIE bus tree;
s04), if the system identifies a virtual NVME device, executing the NVME driver loading flow;
s05), the virtual NVME kernel module creates a kernel process, continuously polls the change condition of each NVME register, and when the change of the NVME register is detected, executes corresponding processing actions to interact with the NVME driving module;
s06), when the NVME driver puts a command into a corresponding queue and operates a doorbell register of the queue, the virtual device detects the change of the doorbell register of the queue, so that the command of the corresponding NVME is read from the queue;
s07), after the virtual NVME kernel module acquires the NVME command, sending a command message to a user-state simulation program through a SOCKET component, after the simulation program receives the command, analyzing the corresponding NVME command, executing the corresponding command processing action, and after the execution is completed, sending a completion message to the virtual NVME kernel module through the SOCKET component;
s08), after receiving the completion message sent by the user mode simulation program, the virtual NVME kernel module writes the completion message into a corresponding completion queue and sends a virtual interrupt to the NVME driver;
s09), after the NVME driver finishes reading the corresponding completion message, updating the corresponding completion doorbell register;
s10), the virtual NVME kernel module detects the change of the completion doorbell register, and indicates that command processing is completed.
Further, the command processing action in step S07) includes NVME management command processing, and the processing flow is: if the virtual NVME kernel module receives the management command sent by the NVME driver, the virtual NVME kernel module sends the 64-byte NVME management command to a user-state simulation program through the SOCKET component, after the simulation program receives the management command, the management command is analyzed, a completion message is packaged, the completion message is sent to the virtual NVME kernel module through the SOCKET, after the virtual NVME kernel module receives the SOCKET message, whether the corresponding data is copied to the address required by the corresponding NVME driver is determined according to the condition of the command completion state, and the completion message is written into a completion queue according to the content of the completion message.
Further, the command processing action in step S07) includes write command processing, and the processing flow is: if the virtual NVME kernel module receives a write command sent by the NVME driver, the write command and the write data are packaged and then sent to a simulation program in a user state through a SOCKET component, the simulation program receives the write command, receives the write data with the specified size, writes the write data into a memory of the simulation program, sends a corresponding completion message to the virtual NVME kernel module, and writes the completion message into a completion queue after the virtual NVME kernel module receives the completion message.
Further, the command processing action in step S07) includes a read command process, and the process flow is: if the virtual NVME kernel module receives the read command sent by the NVME driver, the read command is sent to a user-state simulation program through the SOCKET component, after the simulation program receives the read command, the simulation program reads the data of the corresponding logical address to the self memory through FTL algorithm management, packages the completion message and sends the corresponding completion message to the virtual NVME kernel module, and after the virtual NVME kernel module receives the completion message, the virtual NVME kernel module decides whether to copy the corresponding data to the read address required by the NVME driver according to the condition of the command completion state, and writes the completion message into a completion queue according to the content of the completion message.
In the first step, the virtual NVME kernel module is written through the Linux system, namely the method uses the Linux system for simulation, but is not limited to the operating system.
In the first step, a read-write operation interface of the virtual PCIE device is created, and in the second step, the created virtual PCIE bus and virtual PCIE device are added into a PCIE bus tree of the system through the read-write operation interface of the virtual PCIE device.
In the first step, an MSI interrupt sent by the PCIE device is simulated by adopting a software interrupt mode.
Further, virtual PCIE buses are created using bus IDs that do not exist in the system.
The invention has the beneficial effects that:
1. by performing virtual equipment on the PCIE layer, a simulation environment which is closer to that of real physical equipment can be realized, and a simulation program can be tested directly through a written test script and through a FIO (test tool under a Linux platform). The time for writing the software simulation case by oneself is reduced, and a set of test case can be directly shared with the real physical environment.
2. Through the message interaction of the SOCKET component, the simulation program is operated in a user mode, so that the problem of kernel collapse caused by the FTL software code BUG can be avoided, and the code can be debugged by directly using a GDB debugging tool.
3. Each time a user-mode simulation program is run, a creation message is sent to the virtual NVME kernel module, and the functions of multiple NVME devices can be realized in a system at the same time. Therefore, simulation programs of different FTL algorithm codes can be run simultaneously, and simulation efficiency is greatly improved.
Drawings
FIG. 1 is a block diagram of an architecture of the present invention;
FIG. 2 is a flow chart of the operation of the virtual NVME kernel module;
FIG. 3 is a flow chart of a user mode simulation process.
Detailed Description
The invention will be further described with reference to the accompanying drawings and specific examples.
Example 1
The embodiment discloses a simulation method of an NVME solid state disk, which is characterized in that a virtual NVME kernel module is written based on a Linux system, the virtual NVME kernel module instantiates a virtual PCIE bus and PCIE equipment in a software mode, a PCIE equipment configuration space is simulated to be realized, the identifier of the virtual PCIE equipment is NVME equipment, a read-write operation interface of the virtual PCIE equipment is created, and MSI interrupt sent by the PCIE equipment is simulated in a software interrupt mode. As shown in fig. 1, the virtual NVME kernel module operates in a kernel mode and includes a virtual interrupt, a virtual PCIE and a virtual NVME, where the virtual interrupt is communicatively connected to the kernel interrupt module, the virtual PCIE is communicatively connected to the kernel PCIE, and the virtual NVME is communicatively connected to the kernel NVME. The virtual NVME kernel module is in communication connection with the simulation program running in the user mode through SOCKET, and the kernel NVME driver is in communication connection with the FIO test tool in the user mode through the BLOCK layer driver.
Thus, from the perspective of the entire host, the PCIE level virtualizing device operates more like a real physical device. In order to avoid the FTL (Flash Translation Layer) software algorithm of the solid state disk from running in the kernel mode, the SOCKET is adopted for carrying out message interaction between the kernel mode and the user mode. The FTL software algorithm is operated in a user mode, so that the problem of kernel breakdown caused by the FTL software code BUG can be avoided, and code debugging is facilitated.
The method comprises the steps that a virtual PCIE device is created, a virtual PCIE bus is created by using a bus ID which does not exist in a system, a system interface is called, a newly created PCIE bus and device are added into a PCIE bus tree of the system through a read-write operation interface of the virtual PCIE device, when the PCIE subsystem executes bus scanning operation, the device type in a virtual configuration space is detected to be NVME, and a driver of the NVME is called to initialize the virtual device.
In this embodiment, the steps of creating the virtual NVME device are as follows:
s01), loading a kernel command through Linux, and loading a kernel module of the written virtual NVME, wherein the kernel module waits for a user-state simulation program to send a start creation message.
S02), running a simulation program of a user mode, and sending a start creation message.
S03), the virtual kernel module receives a start creation message sent by the user mode simulation program, executes a related code for creating virtual PCIE equipment, virtualizes one PCIE equipment and adds the virtualized PCIE equipment into a PCIE bus tree.
S04), when the Linux system identifies a virtual NVME device, the NVME driver loading flow is executed.
S05), the virtual kernel module creates a kernel process at the moment, continuously polls the change condition of each NVME register, and executes corresponding processing actions when the change of the NVME register is detected, and the interaction is completed with the NVME driving module.
S06), when the NVME driver puts a command into a corresponding queue and operates the doorbell register of the queue, the virtual device detects the change of the doorbell register of the queue, and accordingly the command of the corresponding NVME is read from the queue.
S07), after the virtual kernel module acquires the NVME command, the virtual kernel module sends a command message to a user-state simulation program through the SOCKET component, after the simulation program receives the command message, the simulation program analyzes the corresponding NVME command, executes the corresponding command processing action, and after the execution is completed, sends a completion message to the virtual kernel module through the SOCKET component.
S08), after receiving the completion message sent by the user mode simulation program, the virtual kernel module writes the completion message into a corresponding completion queue and sends a virtual interrupt to the NVME driver.
S09), after the NVME driver finishes reading the corresponding completion message, the corresponding completion doorbell register is updated.
S10), the virtual kernel module detects the change of the completion doorbell register, and indicates that command processing is completed.
The specific command actions mentioned in step S07) are as follows:
NVME management command processing flow:
if the virtual kernel module receives the management command sent by the NVME driver, the virtual kernel module sends the 64-byte NVME management command to a user-state simulation program through the SOCKET component, after the simulation program receives the management command, the simulation program analyzes the management command, packages a completion message (comprising data required by the command and a command completion state), sends the completion message to the virtual kernel module through the SOCKET, and after the virtual kernel module receives the SOCKET message, the virtual kernel module decides whether to copy the corresponding data to the address required by the corresponding NVME driver according to the condition of the command completion state, and writes the completion message into a completion queue according to the content of the completion message.
Write command processing flow:
if the virtual kernel module receives the write command sent by the NVME driver, the write command and the write data are packaged and then sent to a simulation program in a user state through the SOCKET component, the simulation program receives the write command, receives the write data with the specified size, writes the write data into a memory of the virtual kernel module, and sends a corresponding completion message to the virtual kernel module. After receiving the completion message, the virtual kernel module writes the completion message into a completion queue.
Read command processing flow:
if the virtual kernel module receives the read command sent by the NVME driver, the read command is sent to a user-state simulation program through the SOCKET component, after the simulation program receives the read command, the simulation program reads the data of the corresponding logical address into the own memory through the FTL algorithm management, encapsulates the completion message (comprising the memory address where the command data is located and the command completion state), and sends the corresponding completion message to the virtual kernel module. After receiving the completion message, the virtual kernel module decides whether to copy the corresponding data to the read address required by the NVME driver according to the condition of the command completion state, and writes the completion message into the completion queue according to the content of the completion message.
The virtual NVME kernel module operates in a kernel mode, as shown in fig. 2, an operation flow of the virtual kernel module is as follows:
1. loading a virtual kernel module after starting;
2. waiting for creation start information;
3. after receiving the creation start information, creating a virtual PCIE bus and virtual PCIE equipment;
4. adding a virtual PCIE bus and virtual PCIE equipment to a PCIE bus of a system;
5. the change in NVME register is polled and when a change is detected, a corresponding processing action is performed.
The simulation program operates in a user mode, and performs information interaction with the virtual NVME kernel module through the socket component, as shown in FIG. 3, the operation flow of the simulation program is as follows:
1. after starting, sending a message for creating the virtual equipment to a virtual kernel module in a kernel mode;
2. waiting for receiving command information, and analyzing the command after receiving the command information;
3. executing command processing actions;
4. and sending a completion message to the virtual kernel module.
The invention realizes a simulation platform which is seen from the user and is the same as the real physical equipment, does not depend on hardware resources, and can be driven by directly using the FIO tool of the system.
The foregoing description is only of the basic principles and preferred embodiments of the present invention, and modifications and alternatives thereto will occur to those skilled in the art to which the present invention pertains, as defined by the appended claims.
Claims (9)
1. A NVME solid state disk simulation method is characterized in that: the method comprises the following steps:
1. writing a virtual NVME kernel module, wherein the virtual NVME kernel module simulates and realizes a virtual PCIE bus and a virtual PCIE device, simulates and realizes a PCIE device configuration space, and the virtual PCIE device is identified as NVME device;
2. and calling a system interface, adding a virtual PCIE bus and PCIE equipment into a PCIE bus tree of the system, and when the PCIE subsystem executes bus scanning operation, and detecting that the equipment type in the virtual equipment configuration space is NVME, calling a driver of the NVME to initialize the virtual PCIE equipment.
2. The NVME solid state disk simulation method of claim 1, characterized by comprising the steps of: the steps of the virtual PCIE kernel module for realizing the virtual PCIE device are as follows:
s01), loading a kernel command, and loading a written virtual NVME kernel module, wherein the virtual NVME kernel module waits for a user-state simulation program to send a start creation message;
s02), running a simulation program of a user mode, and sending a start creation message;
s03), the virtual NVME kernel module executes and creates relevant codes of virtual PCIE equipment when receiving a start creation message sent by the user mode simulation program, virtualizes one PCIE equipment and adds the virtualized PCIE equipment into a PCIE bus tree;
s04), if the system identifies a virtual NVME device, executing the NVME driver loading flow;
s05), the virtual NVME kernel module creates a kernel process, continuously polls the change condition of each NVME register, and when the change of the NVME register is detected, executes corresponding processing actions to interact with the NVME driving module;
s06), when the NVME driver puts a command into a corresponding queue and operates a doorbell register of the queue, the virtual device detects the change of the doorbell register of the queue, so that the command of the corresponding NVME is read from the queue;
s07), after the virtual NVME kernel module acquires the NVME command, sending a command message to a user-state simulation program through a SOCKET component, after the simulation program receives the command, analyzing the corresponding NVME command, executing the corresponding command processing action, and after the execution is completed, sending a completion message to the virtual NVME kernel module through the SOCKET component;
s08), after receiving the completion message sent by the user mode simulation program, the virtual NVME kernel module writes the completion message into a corresponding completion queue and sends a virtual interrupt to the NVME driver;
s09), after the NVME driver finishes reading the corresponding completion message, updating the corresponding completion doorbell register;
s10), the virtual NVME kernel module detects the change of the completion doorbell register, and indicates that command processing is completed.
3. The NVME solid state disk emulation method of claim 2, wherein the method comprises the steps of: the command processing actions in step S07) include NVME management command processing, and the processing flow is: if the virtual NVME kernel module receives the management command sent by the NVME driver, the virtual NVME kernel module sends the 64-byte NVME management command to a user-state simulation program through the SOCKET component, after the simulation program receives the management command, the management command is analyzed, a completion message is packaged, the completion message is sent to the virtual NVME kernel module through the SOCKET, after the virtual NVME kernel module receives the SOCKET message, whether the corresponding data is copied to the address required by the corresponding NVME driver is determined according to the condition of the command completion state, and the completion message is written into a completion queue according to the content of the completion message.
4. The NVME solid state disk emulation method of claim 2, wherein the method comprises the steps of: the command processing action in step S07) includes write command processing, and the processing flow is: if the virtual NVME kernel module receives a write command sent by the NVME driver, the write command and the write data are packaged and then sent to a simulation program in a user state through a SOCKET component, the simulation program receives the write command, receives the write data with the specified size, writes the write data into a memory of the simulation program, sends a corresponding completion message to the virtual NVME kernel module, and writes the completion message into a completion queue after the virtual NVME kernel module receives the completion message.
5. The NVME solid state disk emulation method of claim 2, wherein the method comprises the steps of: the command processing action in step S07) includes a read command process, and the process flow is: if the virtual NVME kernel module receives the read command sent by the NVME driver, the read command is sent to a user-state simulation program through the SOCKET component, after the simulation program receives the read command, the simulation program reads the data of the corresponding logical address to the self memory through FTL algorithm management, packages the completion message and sends the corresponding completion message to the virtual NVME kernel module, and after the virtual NVME kernel module receives the completion message, the virtual NVME kernel module decides whether to copy the corresponding data to the read address required by the NVME driver according to the condition of the command completion state, and writes the completion message into a completion queue according to the content of the completion message.
6. The NVME solid state disk simulation method of claim 1, characterized by comprising the steps of: in the first step, a virtual NVME kernel module is written through a Linux system.
7. The NVME solid state disk simulation method of claim 1, characterized by comprising the steps of: in the first step, a read-write operation interface of the virtual PCIE device is created, and in the second step, the created virtual PCIE bus and virtual PCIE device are added into a PCIE bus tree of the system through the read-write operation interface of the virtual PCIE device.
8. The NVME solid state disk simulation method of claim 1, characterized by comprising the steps of: in the first step, an MSI interrupt sent by the PCIE device is simulated by adopting a software interrupt mode.
9. The NVME solid state disk simulation method of claim 1, characterized by comprising the steps of: virtual PCIE buses are created using bus IDs that are not present in the system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311298259.4A CN117389470A (en) | 2023-10-09 | 2023-10-09 | NVME solid state disk simulation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311298259.4A CN117389470A (en) | 2023-10-09 | 2023-10-09 | NVME solid state disk simulation method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117389470A true CN117389470A (en) | 2024-01-12 |
Family
ID=89440182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311298259.4A Pending CN117389470A (en) | 2023-10-09 | 2023-10-09 | NVME solid state disk simulation method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117389470A (en) |
-
2023
- 2023-10-09 CN CN202311298259.4A patent/CN117389470A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8181176B2 (en) | Uniform storage device access using partial virtual machine executing within a secure enclave session | |
US20080021693A1 (en) | Storage Device Simulator | |
CN101739289B (en) | Method and device for setting display mode in Linux virtual machine | |
US11302412B2 (en) | Systems and methods for simulated device testing using a memory-based communication protocol | |
CN113326105B (en) | Hardware equipment configuration method, device and equipment based on host migration | |
CN111796912A (en) | Virtualization performance optimization method and system for storage input/output device of Shenwei platform | |
US10467078B2 (en) | Crash dump extraction of guest failure | |
CN113868174B (en) | Verification platform building method and device and storage medium | |
CN115203054A (en) | Virtual chip test system | |
CN117389694B (en) | Virtual storage IO performance improving method based on virtio-blk technology | |
CN112764981B (en) | Cooperative testing system and method | |
CN110597597A (en) | Method, system, device and storage medium for virtualization of hardware | |
CN113032246A (en) | SSD (solid State disk) firmware operation method and device, readable storage medium and electronic equipment | |
CN116401900B (en) | Method and device for communication among multiple systems of software simulation | |
CN111708704B (en) | Cloud real machine testing method, device, terminal and storage medium | |
CN116501666B (en) | Implementation method of PCIe Switch simulator | |
CN116611375A (en) | Software and hardware collaborative simulation platform and software and hardware testing method | |
JP2007058813A (en) | Verification device and verification method | |
CN116540929A (en) | Virtualized reading method and device of disk array, electronic equipment and storage medium | |
CN114446381B (en) | eMMC fault analysis method, device, readable storage medium and electronic equipment | |
CN117389470A (en) | NVME solid state disk simulation method | |
US10445218B2 (en) | Execution of graphic workloads on a simulated hardware environment | |
CN113821393B (en) | NVMe solid state disk testing module and testing method | |
CN115269326A (en) | Task processing method, device, medium and equipment based on chip monitoring system | |
CN114265786A (en) | Automatic testing method and device, computer equipment and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |