技术领域Technical Field
本发明涉及计算机技术领域,尤其涉及设备模拟器的访问方法、系统、设备和存储介质。The present invention relates to the field of computer technology, and in particular to an access method, system, device and storage medium of a device simulator.
背景技术Background Art
QEMU提供了一种PCI((Peripheral Component Interconnect,外围组件互连)设备模拟器接入客户端操作系统的机制。将PCI设备模拟器虚拟化成客户端操作系统中的一个虚拟化PCI设备。在客户端操作系统中,程序通过访问该虚拟化PCI设备可以访问到该PCI设备模拟器。这样就实现了将PCI设备模拟器接入到客户端操作系统。QEMU provides a mechanism for connecting a PCI (Peripheral Component Interconnect) device emulator to a client operating system. The PCI device emulator is virtualized into a virtualized PCI device in the client operating system. In the client operating system, a program can access the PCI device emulator by accessing the virtualized PCI device. This allows the PCI device emulator to be connected to the client operating system.
PCI设备模拟器接入到客户端操作系统,只能在客户端操作系统对PCI设备模拟器进行访问,这导致了以下问题:The PCI device simulator is connected to the client operating system. The PCI device simulator can only be accessed on the client operating system, which leads to the following problems:
1、客户端操作系统中CPU(Central Processing Unit,中央处理器)行为和PCI总线行为与主机端操作系统的CPU、PCI总线行为存在差异。从PCI设备的功能验证角度来说,使用PCI设备模拟器验证不到在主机端操作系统访问PCI设备的场景。1. The CPU (Central Processing Unit) and PCI bus behaviors in the client operating system are different from those in the host operating system. From the perspective of PCI device function verification, the PCI device simulator cannot verify the scenario of accessing PCI devices in the host operating system.
2、在客户端操作系统验证PCI设备的SRIOV(Single Root I/O Virtualization,单根I/O虚拟化)功能比较困难。需要在客户端操作系统嵌套启动一个新的客户端操作系统来访问PCI设备VF(Virtual Function,虚拟功能)。这样造成极大的资源浪费和使用不便。2. It is difficult to verify the SRIOV (Single Root I/O Virtualization) function of the PCI device in the client operating system. A new client operating system needs to be nested and started in the client operating system to access the PCI device VF (Virtual Function). This causes great waste of resources and inconvenience in use.
发明内容Summary of the invention
本发明提供设备模拟器的访问方法、系统、设备和存储介质,用以解决现有技术中设备模拟器的访问需要借助虚拟端的客户端操作系统,导致资源浪费且部分功能验证困难的问题。The present invention provides a method, system, device and storage medium for accessing a device simulator, so as to solve the problem in the prior art that accessing the device simulator requires the help of a client operating system of a virtual end, resulting in waste of resources and difficulty in verifying some functions.
本发明提供一种设备模拟器的访问方法,应用于PCI代理设备,PCI代理设备包括物理PCI接口,PCI代理设备通过物理PCI接口接入主机端操作系统,设备模拟器的访问方法包括:获取主机端操作系统发送的TLP数据;其中TLP数据是响应于PCI设备访问程序生成的;;对TLP数据进行解析,获得BAR访问请求;将BAR访问请求转发至主机端操作系统,以使主机端操作系统调用设备模拟器的接口函数以执行BAR访问请求。The present invention provides an access method of a device simulator, which is applied to a PCI proxy device. The PCI proxy device comprises a physical PCI interface. The PCI proxy device is connected to a host-side operating system through the physical PCI interface. The access method of the device simulator comprises: obtaining TLP data sent by the host-side operating system; wherein the TLP data is generated in response to a PCI device access program; parsing the TLP data to obtain a BAR access request; and forwarding the BAR access request to the host-side operating system so that the host-side operating system calls an interface function of the device simulator to execute the BAR access request.
根据本发明提供的一种设备模拟器的访问方法,PCI代理设备还包括第一PCI功能单元和第二PCI功能单元;第一PCI功能单元用于实现PCI设备访问程序发起的访问,并按照设备模拟器模拟的真实设备进行配置;第二PCI功能单元用于与主机操作系统进行通信。According to a device simulator access method provided by the present invention, the PCI proxy device also includes a first PCI functional unit and a second PCI functional unit; the first PCI functional unit is used to implement the access initiated by the PCI device access program and is configured according to the real device simulated by the device simulator; the second PCI functional unit is used to communicate with the host operating system.
根据本发明提供的一种设备模拟器的访问方法,将BAR访问请求转发至主机端操作系统,包括:PCI代理设备将BAR访问请求存储在通信缓存中;PCI代理设备在通信缓存中存在待处理的BAR访问请求时,通过第二PCI功能单元发送提醒消息至主机端操作系统,以使主机端操作系统被动获得BAR访问请求;或者,主机端操作系统定期检测通信缓存中的待处理的BAR访问请求,以主动获得BAR访问请求。According to a device simulator access method provided by the present invention, a BAR access request is forwarded to a host-side operating system, including: a PCI proxy device stores the BAR access request in a communication cache; when there is a pending BAR access request in the communication cache, the PCI proxy device sends a reminder message to the host-side operating system through a second PCI functional unit, so that the host-side operating system passively obtains the BAR access request; or, the host-side operating system periodically detects the pending BAR access request in the communication cache to actively obtain the BAR access request.
根据本发明提供的一种设备模拟器的访问方法,还包括:通信缓存设置在主机端或PCI代理设备;当通信缓存设置在主机端时,第二PCI功能单元提供寄存器BAR用于记录主机端的通信缓存的地址;当通信缓存设置在PCI代理设备时,第二PCI功能单元提供存储BAR作为通信缓存。According to a device simulator access method provided by the present invention, it also includes: a communication cache is set on the host side or the PCI proxy device; when the communication cache is set on the host side, the second PCI functional unit provides a register BAR for recording the address of the communication cache on the host side; when the communication cache is set on the PCI proxy device, the second PCI functional unit provides a storage BAR as a communication cache.
根据本发明提供的一种设备模拟器的访问方法,将BAR访问请求转发至主机端操作系统,以使主机端操作系统调用设备模拟器的接口函数以执行BAR访问请求之后,还包括:检测到通信缓存中有响应数据时,将响应数据发送至PCI设备访问程序;其中响应数据是设备模拟器的接口函数执行完BAR访问请求后得到的数据。According to a device simulator access method provided by the present invention, after forwarding a BAR access request to a host-side operating system so that the host-side operating system calls an interface function of the device simulator to execute the BAR access request, the method also includes: when it is detected that there is response data in the communication cache, the response data is sent to the PCI device access program; wherein the response data is the data obtained after the interface function of the device simulator executes the BAR access request.
本发明还提供一种设备模拟器的访问方法,应用于主机端操作系统,PCI代理设备通过自身的物理PCI接口接入主机端操作系统,设备模拟器的访问方法包括:运行PCI设备访问程序和BAR访问请求服务程序;向PCI代理设备发送TLP数据;其中TLP数据是响应于PCI设备访问程序生成的;BAR访问请求服务程序从通信缓存中获取BAR访问请求;其中BAR访问请求是PCI代理设备对TLP数据进行解析后得到的;BAR访问请求服务程序调用设备模拟器的接口函数执行BAR访问请求,得到响应数据。The present invention also provides an access method for a device simulator, which is applied to a host-side operating system. A PCI proxy device is connected to the host-side operating system through its own physical PCI interface. The access method for the device simulator includes: running a PCI device access program and a BAR access request service program; sending TLP data to the PCI proxy device; wherein the TLP data is generated in response to the PCI device access program; the BAR access request service program obtains a BAR access request from a communication cache; wherein the BAR access request is obtained after the PCI proxy device parses the TLP data; the BAR access request service program calls an interface function of the device simulator to execute the BAR access request and obtain response data.
根据本发明提供的一种设备模拟器的访问方法,还包括:响应于PCI代理设备的第一PCI功能单元,运行PCI设备驱动程序;PCI设备访问程序通过PCI设备驱动程序向PCI代理设备的第一PCI功能单元发起访问;BAR访问请求服务程序包括通信模块和设备模拟器,BAR访问请求服务程序从PCI代理设备中获取BAR访问请求,包括:响应于PCI代理设备的第二PCI功能单元,运行通信驱动程序;BAR访问请求服务程序的通信模块通过通信驱动程序从PCI代理设备中的第二PCI功能单元获取BAR访问请求。According to a device simulator access method provided by the present invention, it also includes: in response to the first PCI functional unit of the PCI proxy device, running the PCI device driver; the PCI device access program initiates access to the first PCI functional unit of the PCI proxy device through the PCI device driver; the BAR access request service program includes a communication module and a device simulator, and the BAR access request service program obtains a BAR access request from the PCI proxy device, including: in response to the second PCI functional unit of the PCI proxy device, running the communication driver; the communication module of the BAR access request service program obtains the BAR access request from the second PCI functional unit in the PCI proxy device through the communication driver.
根据本发明提供的一种设备模拟器的访问方法,BAR访问请求服务程序调用设备模拟器的接口函数执行BAR访问请求,得到响应数据之后,还包括:将响应数据通过通信模块和通信驱动程序发送至通信缓存;通信缓存设置在主机端或PCI代理设备;PCI设备访问程序通过第一PCI功能单元和PCI设备驱动程序获得响应数据。According to a device simulator access method provided by the present invention, a BAR access request service program calls an interface function of a device simulator to execute a BAR access request, and after obtaining response data, it also includes: sending the response data to a communication cache through a communication module and a communication driver; the communication cache is set on a host side or a PCI proxy device; and a PCI device access program obtains response data through a first PCI functional unit and a PCI device driver.
根据本发明提供的一种设备模拟器的访问方法,BAR访问请求服务程序从通信缓存中获取BAR访问请求,包括:BAR访问请求服务程序定期检测通信缓存中的待处理的BAR访问请求,以主动获得BAR访问请求;或者,BAR访问请求服务程序接收到PCI代理设备发送的提醒消息后被动获得BAR访问请求;其中提醒消息是PCI代理设备检测到通信缓存中存在待处理的BAR访问请求时生成的。According to a device simulator access method provided by the present invention, a BAR access request service program obtains a BAR access request from a communication cache, including: the BAR access request service program periodically detects pending BAR access requests in the communication cache to actively obtain the BAR access request; or, the BAR access request service program passively obtains the BAR access request after receiving a reminder message sent by a PCI proxy device; wherein the reminder message is generated when the PCI proxy device detects that there are pending BAR access requests in the communication cache.
本发明还提供一种设备模拟器的访问系统,包括PCI代理设备和主机端操作系统;PCI代理设备包括物理PCI接口,PCI代理设备通过物理PCI接口接入主机端操作系统;主机端操作系统向PCI代理设备发送TLP数据;其中TLP数据是响应于PCI设备访问程序生成的;PCI代理设备对TLP数据进行解析得到BAR访问请求,并将BAR访问请求存储至通信缓存;主机端操作系统上的BAR访问请求服务程序从通信缓存中获取BAR访问请求;BAR访问请求服务程序调用设备模拟器的接口函数执行BAR访问请求,得到响应数据。The present invention also provides an access system for a device simulator, comprising a PCI proxy device and a host-side operating system; the PCI proxy device comprises a physical PCI interface, and the PCI proxy device is connected to the host-side operating system through the physical PCI interface; the host-side operating system sends TLP data to the PCI proxy device; wherein the TLP data is generated in response to a PCI device access program; the PCI proxy device parses the TLP data to obtain a BAR access request, and stores the BAR access request in a communication cache; a BAR access request service program on the host-side operating system obtains the BAR access request from the communication cache; the BAR access request service program calls an interface function of the device simulator to execute the BAR access request and obtain response data.
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如上述任一种设备模拟器的访问方法。The present invention also provides an electronic device, comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, an access method of any of the above-mentioned device simulators is implemented.
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种设备模拟器的访问方法。The present invention also provides a non-transitory computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the access method of any of the above-mentioned device simulators is implemented.
本发明提供的设备模拟器的访问方法、系统、设备和存储介质,PCI代理设备包括物理PCI接口,PCI代理设备通过物理PCI接口接入主机端操作系统,应用于PCI代理设备的设备模拟器的访问方法包括:获取主机端操作系统发送的TLP数据;其中TLP数据是响应于PCI设备访问程序生成的;对TLP数据进行解析,获得BAR访问请求;将BAR访问请求转发至主机端操作系统,以使主机端操作系统调用设备模拟器的接口函数以执行BAR访问请求。通过PCI代理设备,本发明不需要借助虚拟机,在主机操作系统可以直接访问设备模拟器,节省了主机的资源开销,提高了便利性;并且由于使用了物理的PCI接口,设备模拟器可以接收到真实的BAR空间读写请求,本发明中设备模拟器的使用场景更接近使用真实设备的使用场景,更有利于产品的功能验证;进一步地,PCI代理设备还可以通过配置PCI接口可适配不同的PCI设备模拟器,节约成本。The present invention provides a device simulator access method, system, device and storage medium, wherein a PCI proxy device includes a physical PCI interface, and the PCI proxy device accesses a host-side operating system through the physical PCI interface. The device simulator access method applied to the PCI proxy device includes: obtaining TLP data sent by the host-side operating system; wherein the TLP data is generated in response to a PCI device access program; parsing the TLP data to obtain a BAR access request; forwarding the BAR access request to the host-side operating system, so that the host-side operating system calls an interface function of the device simulator to execute the BAR access request. Through the PCI proxy device, the present invention does not need to rely on a virtual machine, and the host operating system can directly access the device simulator, saving the resource overhead of the host and improving convenience; and because a physical PCI interface is used, the device simulator can receive a real BAR space read and write request, and the use scenario of the device simulator in the present invention is closer to the use scenario of using a real device, which is more conducive to the functional verification of the product; further, the PCI proxy device can also be adapted to different PCI device simulators by configuring the PCI interface, saving costs.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
图1是相关技术中设备模拟器的访问方法的流程示意图。FIG. 1 is a flow chart of a method for accessing a device simulator in the related art.
图2是本发明实施例提供的设备模拟器的访问方法的流程示意图之一。FIG. 2 is a flowchart of a method for accessing a device simulator according to an embodiment of the present invention.
图3是本发明实施例提供的设备模拟器的访问系统的交互示意图之一。FIG. 3 is one of the interaction schematic diagrams of the access system of the device simulator provided in the embodiment of the present invention.
图4是本发明实施例提供的设备模拟器的访问方法的流程示意图之二。FIG. 4 is a second flow chart of the method for accessing the device simulator provided in the embodiment of the present invention.
图5是本发明实施例提供的设备模拟器的访问系统的交互示意图之二。FIG. 5 is a second interactive schematic diagram of the access system of the device simulator provided in an embodiment of the present invention.
图6是本发明实施例提供的电子设备的结构示意图。FIG. 6 is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention.
具体实施方式DETAILED DESCRIPTION
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the embodiments of the present application. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, without contradiction.
请参阅图1,图1是相关技术中设备模拟器的访问方法的流程示意图。主机端操作系统中运行有QEMU进程,QEMU是一个快速的开源模拟器和虚拟机管理器。QEMU进程上运行有客户端操作系统和设备模拟器。在客户端操作系统上运行有客户端程序和客户端虚拟设备,当客户端程序访问客户端虚拟设备时,客户端虚拟设备通过访问设备模拟器的方式进行响应,从而实现将设备模拟器接入到客户端操作系统。Please refer to Figure 1, which is a flow chart of a method for accessing a device simulator in the related art. A QEMU process runs in the host operating system. QEMU is a fast open source simulator and virtual machine manager. A client operating system and a device simulator run on the QEMU process. A client program and a client virtual device run on the client operating system. When the client program accesses the client virtual device, the client virtual device responds by accessing the device simulator, thereby realizing the connection of the device simulator to the client operating system.
然而相关技术中设备模拟器的访问方法需要依赖客户端操作系统,造成极大的资源浪费和使用不便。However, the access method of the device simulator in the related art needs to rely on the client operating system, resulting in great waste of resources and inconvenience in use.
基于此,本发明提供一种设备模拟器的访问方法,不需要借助虚拟机,在主机操作系统可以直接访问设备模拟器,节省了主机的资源开销,提高了便利性。Based on this, the present invention provides a method for accessing a device simulator, which does not require the aid of a virtual machine and can directly access the device simulator in a host operating system, thereby saving the resource overhead of the host and improving convenience.
请参阅图2-图3,图2是本发明实施例提供的设备模拟器的访问方法的流程示意图之一,图3是本发明实施例提供的设备模拟器的访问系统的交互示意图之一。Please refer to Figures 2-3, Figure 2 is one of the flow diagrams of the access method of the device simulator provided in an embodiment of the present invention, and Figure 3 is one of the interaction diagrams of the access system of the device simulator provided in an embodiment of the present invention.
在实施例中,设备模拟器的访问方法应用于PCI代理设备,设备模拟器的访问方法包括可以包括步骤S210至S230,各步骤具体如下:In an embodiment, the access method of the device simulator is applied to a PCI proxy device, and the access method of the device simulator may include steps S210 to S230, each of which is specifically as follows:
S210:获取主机端操作系统发送的TLP数据;其中TLP数据是响应于PCI设备访问程序生成的。S210: Acquire TLP data sent by the host-side operating system; wherein the TLP data is generated in response to a PCI device access program.
S220:对TLP数据进行解析,获得BAR访问请求。S220: Parse the TLP data to obtain a BAR access request.
S230:将BAR访问请求转发至主机端操作系统,以使主机端操作系统调用设备模拟器的接口函数以执行BAR访问请求。S230: Forward the BAR access request to the host-side operating system, so that the host-side operating system calls the interface function of the device simulator to execute the BAR access request.
在本实施例中,提供了一个物理的PCI代理设备,PCI代理设备具有物理PCI接口,PCI代理设备可以通过物理PCI接口接入主机端操作系统。In this embodiment, a physical PCI proxy device is provided. The PCI proxy device has a physical PCI interface. The PCI proxy device can be connected to the host-side operating system through the physical PCI interface.
在主机端程序对PCI代理设备进行读写访问时,主机端的PCI总线上有TLP数据发送到PCI代理设备的物理PCI接口。当PCI代理设备收到PCI接口传来的TLP(TransactionLayers Package,事务包)数据之后,可以截获PCI协议中处理层事务的事务包中的BAR(Base Address Register,基址寄存器)空间访问的请求(简称BAR访问请求),并将BAR访问请求转发到主机端操作系统,主机端操作系统收到该请求后,再转发给PCI设备模拟器,由PCI设备模拟器实际执行该请求。通过上述方式,在主机端操作系统的程序访问PCI代理设备,即可访问到对应设备模拟器。When the host-side program performs read and write access to the PCI proxy device, TLP data is sent from the PCI bus on the host side to the physical PCI interface of the PCI proxy device. After the PCI proxy device receives the TLP (Transaction Layers Package) data from the PCI interface, it can intercept the BAR (Base Address Register) space access request (referred to as BAR access request) in the transaction package of the processing layer transaction in the PCI protocol, and forward the BAR access request to the host-side operating system. After receiving the request, the host-side operating system forwards it to the PCI device simulator, and the PCI device simulator actually executes the request. In the above manner, when the program of the host-side operating system accesses the PCI proxy device, the corresponding device simulator can be accessed.
其中,设备模拟器是指在操作系统中运行的对设备功能进行模拟的程序,设备模拟器可以对外提供接口函数。The device simulator refers to a program running in the operating system to simulate the device functions. The device simulator can provide interface functions to the outside.
因此,本实施例不需要借助虚拟机,在主机操作系统可以直接访问设备模拟器,节省了主机的资源开销,提高了便利性;并且由于使用了物理的PCI接口,设备模拟器可以接收到真实的BAR空间读写请求,本实施例中设备模拟器的使用场景更接近使用真实设备的使用场景,更有利于产品的功能验证;进一步地,PCI代理设备还可以通过配置PCI接口可适配不同的PCI设备模拟器,节约成本。Therefore, this embodiment does not require the use of a virtual machine, and the host operating system can directly access the device simulator, saving the host's resource overhead and improving convenience; and because a physical PCI interface is used, the device simulator can receive real BAR space read and write requests. The usage scenario of the device simulator in this embodiment is closer to the usage scenario of a real device, which is more conducive to product function verification; further, the PCI proxy device can also adapt to different PCI device simulators by configuring the PCI interface, saving costs.
在一些实施例中,PCI代理设备还包括第一PCI功能单元和第二PCI功能单元;第一PCI功能单元用于实现所述PCI设备访问程序发起的访问,并按照设备模拟器模拟的真实设备进行配置;第二PCI功能单元用于与主机操作系统进行通信。In some embodiments, the PCI proxy device also includes a first PCI functional unit and a second PCI functional unit; the first PCI functional unit is used to implement the access initiated by the PCI device access program and is configured according to the real device simulated by the device simulator; the second PCI functional unit is used to communicate with the host operating system.
为了提高PCI代理设备的功能独立性,在本实施例中设置了第一PCI功能单元和第二PCI功能单元分别负责不同的功能,功能单元采用模块化的设计,相互独立,可以减少彼此之间的依赖关系。这样一来,修改一个功能单元不会对其他功能单元造成影响,提高了系统的稳定性和灵活性。In order to improve the functional independence of the PCI proxy device, in this embodiment, a first PCI functional unit and a second PCI functional unit are provided to be responsible for different functions respectively, and the functional units adopt a modular design and are independent of each other, which can reduce the dependency between each other. In this way, modifying one functional unit will not affect other functional units, thereby improving the stability and flexibility of the system.
需要说明的是,PCI代理设备还可以包括其他的PCI功能单元,以执行更多元化的功能。It should be noted that the PCI proxy device may also include other PCI functional units to perform more diversified functions.
示例性地,每个PCI代理设备最多可支持8个PCI功能单元,每个PCI功能单元都包含自己的配置空间,允许软件以一种标准化的方式控制器其地址和资源。Exemplarily, each PCI proxy device can support up to 8 PCI functional units, and each PCI functional unit includes its own configuration space, allowing software to control its address and resources in a standardized manner.
在一些实施例中,将BAR访问请求转发至主机端操作系统的步骤,具体可以包括:PCI代理设备将BAR访问请求存储在通信缓存中;PCI代理设备在通信缓存中存在待处理的BAR访问请求时,通过第二PCI功能单元发送提醒消息至主机端操作系统,以使主机端操作系统被动获得BAR访问请求;或者,主机端操作系统定期检测通信缓存中的待处理的BAR访问请求,以主动获得BAR访问请求。In some embodiments, the step of forwarding the BAR access request to the host-side operating system may specifically include: the PCI proxy device stores the BAR access request in the communication cache; when there is a pending BAR access request in the communication cache, the PCI proxy device sends a reminder message to the host-side operating system through the second PCI functional unit, so that the host-side operating system passively obtains the BAR access request; or, the host-side operating system periodically detects the pending BAR access request in the communication cache to actively obtain the BAR access request.
在本实施例中,BAR访问请求可以存储在通信缓存中,主机端可以主动从通信缓冲中获取BAR访问请求。或者,主机端也可以被动从通信缓冲中获取BAR访问请求。In this embodiment, the BAR access request may be stored in the communication buffer, and the host end may actively obtain the BAR access request from the communication buffer. Alternatively, the host end may also passively obtain the BAR access request from the communication buffer.
示例性地,在主动获取的方案中,主机端定期检测通信缓存中的待处理的BAR访问请求。Exemplarily, in the active acquisition scheme, the host periodically detects pending BAR access requests in the communication cache.
示例性地,在被动获取的方案中,第二PCI功能单元发现通信缓存中存在待处理的BAR访问请求时,发送提醒消息至主机端,主机端监听第二PCI功能单元发送的提醒信息。Exemplarily, in a passive acquisition solution, when the second PCI functional unit finds that there is a pending BAR access request in the communication cache, it sends a reminder message to the host side, and the host side monitors the reminder information sent by the second PCI functional unit.
在一些实施例中,设备模拟器的访问方法还包括:通信缓存设置在主机端或PCI代理设备;当通信缓存设置在主机端时,第二PCI功能单元提供寄存器BAR用于记录主机端的通信缓存的地址;当通信缓存设置在PCI代理设备时,第二PCI功能单元提供存储BAR作为通信缓存。In some embodiments, the access method of the device simulator also includes: the communication cache is set on the host side or the PCI proxy device; when the communication cache is set on the host side, the second PCI functional unit provides a register BAR for recording the address of the communication cache on the host side; when the communication cache is set on the PCI proxy device, the second PCI functional unit provides a storage BAR as a communication cache.
需要说明的是,通信缓存具体在主机端还是PCI代理设备端,可根据具体实现进行选择。It should be noted that whether the communication cache is located at the host end or the PCI proxy device end can be selected according to the specific implementation.
在本实施例中,PCI功能单元可以有多个BAR空间,具体可以包括寄存器BAR和存储BAR。In this embodiment, the PCI functional unit may have multiple BAR spaces, which may specifically include a register BAR and a storage BAR.
其中,寄存器BAR空间中存放的是寄存器,硬件对每个寄存器都有定义其功能和含义。硬件内部可以有很多寄存器,每个寄存器都有特定的作用,这些寄存器通过寄存器BAR空间暴露给CPU。The register BAR space stores registers, and the hardware defines the function and meaning of each register. There can be many registers inside the hardware, each register has a specific function, and these registers are exposed to the CPU through the register BAR space.
存储BAR空间中存放的是数据。存储BAR的空间可以存储任意类型的数据,硬件内部的存储空间可以通过存储BAR空间暴露给CPU。在一些实施例中,将BAR访问请求转发至主机端操作系统,以使主机端操作系统调用设备模拟器的接口函数以执行BAR访问请求之后的步骤,还可以包括:The storage BAR space stores data. The storage BAR space can store any type of data, and the storage space inside the hardware can be exposed to the CPU through the storage BAR space. In some embodiments, the steps after forwarding the BAR access request to the host operating system so that the host operating system calls the interface function of the device simulator to execute the BAR access request may also include:
检测到通信缓存中有响应数据时,将响应数据发送至PCI设备访问程序;其中响应数据是设备模拟器的接口函数执行完BAR访问请求后得到的数据。When it is detected that there is response data in the communication buffer, the response data is sent to the PCI device access program; wherein the response data is the data obtained after the interface function of the device simulator executes the BAR access request.
在本实施例中,主机端操作系统不仅可以读取通信缓存中的将BAR访问请求,还可以在执行完BAR访问请求后,将相应的响应数据写入通信缓存,再由PCI代理设备端将响应信息反馈至PCI设备访问程序。In this embodiment, the host-side operating system can not only read the BAR access request in the communication cache, but also write the corresponding response data into the communication cache after executing the BAR access request, and then the PCI proxy device side feeds back the response information to the PCI device access program.
可选地,由PCI代理设备中的第一PCI功能单元读取通信缓存中的响应数据后,再转发至PCI设备访问程序。Optionally, the first PCI functional unit in the PCI proxy device reads the response data in the communication buffer and then forwards it to the PCI device access program.
本发明还提供一种设备模拟器的访问方法,应用于主机端操作系统,PCI代理设备通过自身的物理PCI接口接入主机端操作系统。The present invention also provides a method for accessing a device simulator, which is applied to a host-side operating system, and a PCI proxy device is connected to the host-side operating system through its own physical PCI interface.
请参阅图3-图4,图4是本发明实施例提供的设备模拟器的访问方法的流程示意图之二。在本实施例中,应用于主机端操作系统的设备模拟器的访问方法包括步骤S410至S440,各步骤具体如下:Please refer to Figures 3-4, Figure 4 is a second flow chart of the method for accessing the device simulator provided by an embodiment of the present invention. In this embodiment, the method for accessing the device simulator applied to the host operating system includes steps S410 to S440, each of which is as follows:
S410:运行PCI设备访问程序和BAR访问请求服务程序。S410: Run the PCI device access program and the BAR access request service program.
S420:向PCI代理设备发送TLP数据;其中TLP数据是响应于PCI设备访问程序生成的。S420: Send TLP data to the PCI proxy device; wherein the TLP data is generated in response to the PCI device access program.
S430:BAR访问请求服务程序从通信缓存中获取BAR访问请求;其中BAR访问请求是PCI代理设备对TLP数据进行解析后得到的。S430: The BAR access request service program obtains a BAR access request from the communication buffer; wherein the BAR access request is obtained after the PCI proxy device parses the TLP data.
S440:BAR访问请求服务程序调用设备模拟器的接口函数执行BAR访问请求,得到响应数据。S440: The BAR access request service program calls the interface function of the device simulator to execute the BAR access request and obtain response data.
在本实施例中,主机端操作系统运行有PCI设备访问程序和BAR访问请求服务程序。In this embodiment, the host-side operating system runs a PCI device access program and a BAR access request service program.
需要说明的是,和相关技术不同的是,由于BAR访问请求被PCI代理设备截获并存储在通信缓冲中,因此为了获取BAR访问请求,本实施例的主机端操作系统中还需要额外运行有BAR访问请求服务程序。通过BAR访问请求服务程序和PCI接口,主机端操作系统可以从通信缓存中读取BAR访问请求,并且还可以在通信缓存中写入相应请求的数据(即响应数据)。It should be noted that, unlike the related art, since the BAR access request is intercepted by the PCI proxy device and stored in the communication buffer, in order to obtain the BAR access request, the host-side operating system of this embodiment needs to additionally run a BAR access request service program. Through the BAR access request service program and the PCI interface, the host-side operating system can read the BAR access request from the communication buffer and can also write the corresponding request data (i.e., response data) in the communication buffer.
具体地,BAR访问请求服务程序上运行有通信模块和设备模拟器。通信模块用于通过PCI接口与PCI代理设备进行通信,以调用设备模拟器的接口函数。Specifically, a communication module and a device simulator are run on the BAR access request service program. The communication module is used to communicate with the PCI proxy device through the PCI interface to call the interface function of the device simulator.
在一些实施例中,设备模拟器的访问方法还可以包括:响应于PCI代理设备的第一PCI功能单元,运行PCI设备驱动程序;PCI设备访问程序通过PCI设备驱动程序向PCI代理设备的第一PCI功能单元发起访问。In some embodiments, the access method of the device simulator may further include: in response to the first PCI functional unit of the PCI proxy device, running a PCI device driver; and a PCI device access program initiating access to the first PCI functional unit of the PCI proxy device through the PCI device driver.
BAR访问请求服务程序包括通信模块和设备模拟器,BAR访问请求服务程序从PCI代理设备中获取BAR访问请求的步骤,具体可以包括:The BAR access request service program includes a communication module and a device simulator. The steps of the BAR access request service program obtaining a BAR access request from a PCI proxy device may specifically include:
响应于PCI代理设备的第二PCI功能单元,运行通信驱动程序;BAR访问请求服务程序的通信模块通过通信驱动程序从PCI代理设备中的第二PCI功能单元获取BAR访问请求。In response to the second PCI function unit of the PCI proxy device, a communication driver is run; and a communication module of the BAR access request service program obtains a BAR access request from the second PCI function unit in the PCI proxy device through the communication driver.
在本实施例中,为了适配PCI代理设备的第一PCI功能单元和第二PCI功能单元,主机端操作系统中也增加了PCI设备驱动和通信驱动,以满足PCI功能单元的通信需求。In this embodiment, in order to adapt the first PCI functional unit and the second PCI functional unit of the PCI proxy device, a PCI device driver and a communication driver are also added to the host-side operating system to meet the communication requirements of the PCI functional units.
在一些实施例中,BAR访问请求服务程序调用设备模拟器的接口函数执行BAR访问请求,得到响应数据之后的步骤,具体还包括:In some embodiments, the BAR access request service program calls the interface function of the device simulator to execute the BAR access request, and the steps after obtaining the response data specifically include:
将响应数据通过通信模块和通信驱动程序发送至通信缓存;通信缓存设置在主机端或PCI代理设备;PCI设备访问程序通过第一PCI功能单元和PCI设备驱动程序获得响应数据。The response data is sent to the communication buffer through the communication module and the communication driver; the communication buffer is set at the host end or the PCI proxy device; the PCI device access program obtains the response data through the first PCI functional unit and the PCI device driver.
在一些实施例中,BAR访问请求服务程序从通信缓存中获取BAR访问请求的步骤,具体可以包括:In some embodiments, the step of the BAR access request service program obtaining the BAR access request from the communication buffer may specifically include:
BAR访问请求服务程序定期检测通信缓存中的待处理的BAR访问请求,以主动获得BAR访问请求;或者,BAR访问请求服务程序接收到PCI代理设备发送的提醒消息后被动获得BAR访问请求;其中提醒消息是PCI代理设备检测到通信缓存中存在待处理的BAR访问请求时生成的。The BAR access request service program periodically detects pending BAR access requests in the communication cache to actively obtain BAR access requests; or, the BAR access request service program passively obtains BAR access requests after receiving a reminder message sent by a PCI proxy device; wherein the reminder message is generated when the PCI proxy device detects that there are pending BAR access requests in the communication cache.
本发明还提供一种设备模拟器的访问系统,设备模拟器的访问系统包括PCI代理设备和主机端操作系统。PCI代理设备包括物理PCI接口,PCI代理设备通过物理PCI接口接入主机端操作系统。The present invention also provides an access system of a device simulator, the access system of the device simulator comprises a PCI proxy device and a host-side operating system. The PCI proxy device comprises a physical PCI interface, and the PCI proxy device accesses the host-side operating system through the physical PCI interface.
主机端操作系统向PCI代理设备发送TLP数据;其中TLP数据是响应于PCI设备访问程序生成的;PCI代理设备对TLP数据进行解析得到BAR访问请求,并将BAR访问请求存储至通信缓存;主机端操作系统上的BAR访问请求服务程序从通信缓存中获取BAR访问请求;BAR访问请求服务程序调用设备模拟器的接口函数执行BAR访问请求,得到响应数据。The host-side operating system sends TLP data to the PCI proxy device; wherein the TLP data is generated in response to the PCI device access program; the PCI proxy device parses the TLP data to obtain a BAR access request, and stores the BAR access request in a communication cache; the BAR access request service program on the host-side operating system obtains the BAR access request from the communication cache; the BAR access request service program calls the interface function of the device simulator to execute the BAR access request and obtain response data.
在一些实施例中,设备模拟器的访问系统中的PCI代理设备和主机端操作系统可以执行上述实施例中相同或相似的步骤,在此不多赘述。In some embodiments, the PCI proxy device in the access system of the device simulator and the host-side operating system can perform the same or similar steps as in the above embodiments, which will not be described in detail here.
请参阅图5,图5是本发明实施例提供的设备模拟器的访问系统的交互示意图之二。Please refer to FIG. 5 , which is a second interactive schematic diagram of the access system of the device simulator provided in the embodiment of the present invention.
具体地,该PCI代理设备中至少包含2个PCI Function,一个用于为PCI设备模拟器提供物理PCI接口(以下称Function 1,即上述的第一PCI功能单元),该PCI Function按PCI设备模拟器想要模拟的真实设备进行配置。另一个用于主机操作系统与该PCI代理设备进行通信(以下称Function 2,即上述的第二PCI功能单元)。Specifically, the PCI proxy device includes at least two PCI Functions, one for providing a physical PCI interface for the PCI device simulator (hereinafter referred to as Function 1, i.e., the first PCI functional unit mentioned above), and the PCI Function is configured according to the real device that the PCI device simulator wants to simulate. The other is used for the host operating system to communicate with the PCI proxy device (hereinafter referred to as Function 2, i.e., the second PCI functional unit mentioned above).
Function 1的主机端驱动程序(即上述的PCI设备驱动)与PCI设备模拟器想要模拟的真实设备的驱动程序无异。The host-side driver of Function 1 (ie, the PCI device driver described above) is no different from the driver of the real device that the PCI device simulator wants to simulate.
Function 2的主机端驱动程序(即上述的通信驱动)申请一个存储空间用于缓存主机操作系统与该PCI代理设备进行通信的信息(以下称通信缓存)。The host-side driver of Function 2 (ie, the above-mentioned communication driver) applies for a storage space for caching information (hereinafter referred to as communication cache) for communication between the host operating system and the PCI proxy device.
通信缓存设置在主机端还是PCI代理设备端,可根据具体实现进行选择。若放在主机端,Function 2提供寄存器BAR上的某个寄存器用于记录该主机端通信缓存的地址。若放在PCI代理设备端,Function 2提供一个存储BAR用于通信缓存。The communication cache is set on the host side or the PCI proxy device side, which can be selected according to the specific implementation. If it is placed on the host side, Function 2 provides a register on the register BAR to record the address of the host-side communication cache. If it is placed on the PCI proxy device side, Function 2 provides a storage BAR for communication cache.
该PCI代理设备将Function 1接受到的TLP数据进行解析后,可获取其中包含的BAR空间读写请求,将该类请求保存到通信缓存中。主机端接收该请求,有2种方式可选:After parsing the TLP data received by Function 1, the PCI proxy device can obtain the BAR space read and write requests contained therein and save such requests to the communication cache. The host side receives the request in two optional ways:
1)主机端BAR访问请求服务程序监听Function 2发出的中断,有请求时,PCI代理设备通过Function 2发送中断到主机端操作系统,主动提醒主机端操作系统有请求产生。1) The host-side BAR access request service program monitors the interruption issued by Function 2. When there is a request, the PCI proxy device sends an interruption to the host-side operating system through Function 2, actively reminding the host-side operating system that a request has been generated.
2)主机端BAR访问请求服务程序主动定期检测通信缓存中是否有请求产生。2) The host-side BAR access request service program actively and regularly checks whether there is any request generated in the communication cache.
主机端BAR访问请求服务程序收到请求后,调用设备模拟器的接口函数执行该请求。After receiving the request, the host-side BAR access request service program calls the interface function of the device simulator to execute the request.
对于读请求,在设备模拟器的接口函数执行完该请求后,主机端BAR访问请求服务程序将读到的数据写入通信缓存。PCI代理设备端检测到通信缓存中有响应数据时,将该响应数据通过Function1发送到主机。For a read request, after the interface function of the device simulator completes the execution of the request, the host-side BAR access request service program writes the read data into the communication buffer. When the PCI proxy device detects that there is response data in the communication buffer, it sends the response data to the host through Function1.
综上,本实施例提供一种设备模拟器的访问系统,不需要借助虚拟机,在主机操作系统可以直接访问PCI设备模拟器,节省了主机的资源开销,提高了便利性。由于使用了物理的PCI接口,PCI设备模拟器可以接收到真实的BAR空间读写请求,本实施例中设备模拟器的使用场景更接近使用真实设备的使用场景,更有利于产品的功能验证;进一步地,PCI代理设备通过配置PCI接口可适配不同的PCI设备模拟器,节约成本。In summary, this embodiment provides a device simulator access system that does not require the use of a virtual machine. The host operating system can directly access the PCI device simulator, saving the host's resource overhead and improving convenience. Since a physical PCI interface is used, the PCI device simulator can receive real BAR space read and write requests. The use scenario of the device simulator in this embodiment is closer to the use scenario of a real device, which is more conducive to product function verification; further, the PCI proxy device can adapt to different PCI device simulators by configuring the PCI interface, saving costs.
本发明还提供一种电子设备,请参阅图6,图6是本发明实施例提供的电子设备的结构示意图。在本实施例中,电子设备可以包括存储器(memory)620、处理器(processor)610及存储在存储器620上并可在处理器610上运行的计算机程序。处理器610执行程序时实现上述各方法所提供的设备模拟器的访问方法。The present invention further provides an electronic device, please refer to FIG6, which is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. In this embodiment, the electronic device may include a memory 620, a processor 610, and a computer program stored in the memory 620 and executable on the processor 610. When the processor 610 executes the program, the access method of the device simulator provided by the above methods is implemented.
可选地,电子设备还可以包括通信总线630和通信接口(CommunicationsInterface)640,其中,处理器610,通信接口640,存储器620通过通信总线630完成相互间的通信。处理器610可以调用存储器620中的计算机程序,以执行设备模拟器的访问方法,该方法包括:获取主机端操作系统发送的TLP数据;其中TLP数据是响应于PCI设备访问程序生成的;对TLP数据进行解析,获得BAR访问请求;将BAR访问请求转发至主机端操作系统,以使主机端操作系统调用设备模拟器的接口函数以执行BAR访问请求;Optionally, the electronic device may further include a communication bus 630 and a communication interface (CommunicationsInterface) 640, wherein the processor 610, the communication interface 640, and the memory 620 communicate with each other through the communication bus 630. The processor 610 may call a computer program in the memory 620 to execute an access method of the device simulator, the method comprising: obtaining TLP data sent by a host-side operating system; wherein the TLP data is generated in response to a PCI device access program; parsing the TLP data to obtain a BAR access request; forwarding the BAR access request to the host-side operating system, so that the host-side operating system calls an interface function of the device simulator to execute the BAR access request;
或者,运行PCI设备访问程序和BAR访问请求服务程序;向PCI代理设备发送TLP数据;其中TLP数据是响应于PCI设备访问程序生成的;BAR访问请求服务程序从通信缓存中获取BAR访问请求;其中BAR访问请求是PCI代理设备对TLP数据进行解析后得到的;BAR访问请求服务程序调用设备模拟器的接口函数执行BAR访问请求,得到响应数据。Alternatively, run the PCI device access program and the BAR access request service program; send TLP data to the PCI proxy device; wherein the TLP data is generated in response to the PCI device access program; the BAR access request service program obtains the BAR access request from the communication cache; wherein the BAR access request is obtained after the PCI proxy device parses the TLP data; the BAR access request service program calls the interface function of the device simulator to execute the BAR access request and obtain response data.
此外,上述的存储器620中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。In addition, the logic instructions in the above-mentioned memory 620 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program codes.
另一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的设备模拟器的访问方法,其步骤和原理在上述方法已详细介绍,在此不再赘述。On the other hand, the present invention also provides a non-transitory computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, it is implemented to execute the access method of the device simulator provided by the above methods. Its steps and principles have been introduced in detail in the above methods and will not be repeated here.
非暂态计算机可读存储介质可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。Non-transitory computer-readable storage media can be any available media or data storage devices that can be accessed by the processor, including but not limited to magnetic storage (such as floppy disks, hard disks, magnetic tapes, magneto-optical disks (MO), etc.), optical storage (such as CD, DVD, BD, HVD, etc.), and semiconductor storage (such as ROM, EPROM, EEPROM, non-volatile memory (NANDFLASH), solid-state drive (SSD)), etc.
又一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的设备模拟器的访问方法,其步骤和原理在上述方法已详细介绍,在此不再赘述。On the other hand, the present invention also provides a computer program product, which includes a computer program. The computer program can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the access method of the device simulator provided by the above methods. The steps and principles have been introduced in detail in the above methods and will not be repeated here.
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Those of ordinary skill in the art may understand and implement it without creative work.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM/RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410720186.1ACN118519942A (en) | 2024-06-04 | 2024-06-04 | Access method, system, device and storage medium of device simulator |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410720186.1ACN118519942A (en) | 2024-06-04 | 2024-06-04 | Access method, system, device and storage medium of device simulator |
| Publication Number | Publication Date |
|---|---|
| CN118519942Atrue CN118519942A (en) | 2024-08-20 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202410720186.1APendingCN118519942A (en) | 2024-06-04 | 2024-06-04 | Access method, system, device and storage medium of device simulator |
| Country | Link |
|---|---|
| CN (1) | CN118519942A (en) |
| Publication | Publication Date | Title |
|---|---|---|
| US10282192B1 (en) | Updating device code through a bus | |
| CN102193824B (en) | Virtual machine homogenizes to realize the migration across heterogeneous computers | |
| CN114580344B (en) | Test excitation generation method, verification system and related equipment | |
| US8099274B2 (en) | Facilitating input/output processing of one or more guest processing systems | |
| CN108874506A (en) | Virtual machine leads directly to the thermomigration process and device of equipment | |
| JP2019091494A (en) | Emulated endpoint configuration | |
| WO2017114283A1 (en) | Method and apparatus for processing read/write request in physical host | |
| CN102147763B (en) | Method, system and computer for recording weblog | |
| CN102207896A (en) | Virtual machine crash file generation techniques | |
| CN101876954B (en) | Virtual machine control system and working method thereof | |
| CN112015352B (en) | Storage block device identification device, system and storage block device reading and writing method | |
| CN118377741B (en) | Atomic operation execution system, method and device | |
| CN112732501B (en) | A test method and multiprocessor SOC chip | |
| CN119690683B (en) | Online management method, device, product and medium for virtual input/output equipment queue | |
| CN115481052A (en) | Data exchange method and device | |
| CN116881072A (en) | Network card monitoring method, device, system and equipment of baseboard management controller | |
| TW434491B (en) | Increasing I/O performance through storage of packetized operational information in local memory | |
| CN118409712A (en) | A RAID card management system, method, device, product and medium | |
| CN118606075A (en) | Data access method and device between multiple operating systems | |
| US20070300051A1 (en) | Out of band asset management | |
| CN118519942A (en) | Access method, system, device and storage medium of device simulator | |
| US8745364B2 (en) | Method and apparatus for enabling non-volatile content filtering | |
| CN116107774A (en) | IO request processing method and device, electronic equipment and storage medium | |
| WO2024016595A1 (en) | Rbd-nbd mapping method and apparatus | |
| CN112947926A (en) | Page development method, display method, device, electronic equipment and medium |
| 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 |